aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/ic_reg_maps
diff options
context:
space:
mode:
authorNick Foster <nick@nerdnetworks.org>2010-09-21 10:41:05 -0700
committerNick Foster <nick@nerdnetworks.org>2010-09-21 10:41:05 -0700
commitba658f4d2cac9fb0f9d22060da989c9078cc4d1e (patch)
tree10bdc9d29f71c4def00208ce82fd289f228c51e5 /host/lib/ic_reg_maps
parent1b3b856f5a5d06628d4176071cad424a146433c9 (diff)
downloaduhd-ba658f4d2cac9fb0f9d22060da989c9078cc4d1e.tar.gz
uhd-ba658f4d2cac9fb0f9d22060da989c9078cc4d1e.tar.bz2
uhd-ba658f4d2cac9fb0f9d22060da989c9078cc4d1e.zip
added db_tvrx, regmap gen_dtt75403_regs.py
Diffstat (limited to 'host/lib/ic_reg_maps')
-rw-r--r--host/lib/ic_reg_maps/CMakeLists.txt5
-rwxr-xr-xhost/lib/ic_reg_maps/gen_dtt75403_regs.py85
-rwxr-xr-x[-rw-r--r--]host/lib/ic_reg_maps/gen_max2118_regs.py0
3 files changed, 90 insertions, 0 deletions
diff --git a/host/lib/ic_reg_maps/CMakeLists.txt b/host/lib/ic_reg_maps/CMakeLists.txt
index f8e15c13d..b396db4ca 100644
--- a/host/lib/ic_reg_maps/CMakeLists.txt
+++ b/host/lib/ic_reg_maps/CMakeLists.txt
@@ -68,3 +68,8 @@ LIBUHD_PYTHON_GEN_SOURCE(
${CMAKE_SOURCE_DIR}/lib/ic_reg_maps/gen_ad9522_regs.py
${CMAKE_BINARY_DIR}/lib/ic_reg_maps/ad9522_regs.hpp
)
+
+LIBUHD_PYTHON_GEN_SOURCE(
+ ${CMAKE_SOURCE_DIR}/lib/ic_reg_maps/gen_dtt75403_regs.py
+ ${CMAKE_BINARY_DIR}/lib/ic_reg_maps/dtt75403_regs.py
+)
diff --git a/host/lib/ic_reg_maps/gen_dtt75403_regs.py b/host/lib/ic_reg_maps/gen_dtt75403_regs.py
new file mode 100755
index 000000000..fe64bd92a
--- /dev/null
+++ b/host/lib/ic_reg_maps/gen_dtt75403_regs.py
@@ -0,0 +1,85 @@
+#!/usr/bin/env python
+#
+# Copyright 2010 Ettus Research LLC
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+########################################################################
+# Template for raw text data describing registers
+# name addr[bit range inclusive] default optional enums
+########################################################################
+REGS_TMPL="""\
+########################################################################
+## Note: offsets given from perspective of data bits (excludes address)
+########################################################################
+##
+########################################################################
+## Address byte
+########################################################################
+adb 0[1:2] 0
+########################################################################
+## Divider byte 1
+########################################################################
+db1 1[0:6] 0x00
+########################################################################
+## Divider byte 2
+########################################################################
+db2 2[0:7] 0x00
+########################################################################
+## Control byte 1
+########################################################################
+atp 3[3:5] 0 112, 109, 106, 103, 100, 94, 94, disable
+refdiv 3[0:2] 0 166.667khz, 142.857khz, 80khz, 62.5khz, 31.25khz, 50khz
+########################################################################
+## Band switch byte
+########################################################################
+cpsel 4[6:7] 0
+filterbw 4[4] 0 8mhz, 7mhz
+bandsel 4[0:3] 0
+########################################################################
+## Control byte 2
+########################################################################
+atc 5[5] 0 low, high
+stby 5[4] 0 standby, on
+xto 5[0] 0 disable, enable
+"""
+
+########################################################################
+# Template for methods in the body of the struct
+########################################################################
+BODY_TMPL="""\
+boost::uint8_t get_reg(boost::uint8_t addr){
+ boost::uint8_t reg = 0;
+ switch(addr){
+ #for $addr in sorted(set(map(lambda r: r.get_addr(), $regs)))
+ case $addr:
+ #for $reg in filter(lambda r: r.get_addr() == addr, $regs)
+ reg |= (boost::uint8_t($reg.get_name()) & $reg.get_mask()) << $reg.get_shift();
+ #end for
+ break;
+ #end for
+ }
+ return boost::uint8_t(reg);
+}
+
+"""
+
+if __name__ == '__main__':
+ import common; common.generate(
+ name='dtt75403_regs',
+ regs_tmpl=REGS_TMPL,
+ body_tmpl=BODY_TMPL,
+ file=__file__,
+ )
diff --git a/host/lib/ic_reg_maps/gen_max2118_regs.py b/host/lib/ic_reg_maps/gen_max2118_regs.py
index 506fbaec8..506fbaec8 100644..100755
--- a/host/lib/ic_reg_maps/gen_max2118_regs.py
+++ b/host/lib/ic_reg_maps/gen_max2118_regs.py