aboutsummaryrefslogtreecommitdiffstats
path: root/firmware/fx2/src/common/edit-gpif
diff options
context:
space:
mode:
authorJosh Blum <josh@joshknows.com>2010-11-05 13:53:39 -0700
committerJosh Blum <josh@joshknows.com>2010-11-05 13:53:39 -0700
commit3ac3457184bc3b251ce7398eee56c931983abe65 (patch)
tree7cfa1ba616788ad083236272a323c3a6e2964da3 /firmware/fx2/src/common/edit-gpif
parent144ebf29327981db8422049b451852744619678d (diff)
parentc473cc56fafcb47d6ba1f16e8c9fb89ff6c57bca (diff)
downloaduhd-3ac3457184bc3b251ce7398eee56c931983abe65.tar.gz
uhd-3ac3457184bc3b251ce7398eee56c931983abe65.tar.bz2
uhd-3ac3457184bc3b251ce7398eee56c931983abe65.zip
Merge branch 'good_stuff' into mb_eeprom
Conflicts: firmware/fx2/include
Diffstat (limited to 'firmware/fx2/src/common/edit-gpif')
-rwxr-xr-xfirmware/fx2/src/common/edit-gpif114
1 files changed, 0 insertions, 114 deletions
diff --git a/firmware/fx2/src/common/edit-gpif b/firmware/fx2/src/common/edit-gpif
deleted file mode 100755
index 5367b75a5..000000000
--- a/firmware/fx2/src/common/edit-gpif
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/usr/bin/env python
-# -*- Python -*-
-#
-# Copyright 2003 Free Software Foundation, Inc.
-#
-# This file is part of GNU Radio
-#
-# GNU Radio 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, or (at your option)
-# any later version.
-#
-# GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
-# the Free Software Foundation, Inc., 51 Franklin Street,
-# Boston, MA 02110-1301, USA.
-#
-
-
-# Edit the gpif.c file generated by the Cypress GPIF Designer Tool and
-# produce usrp_gpif.c, and usrp_gpif_inline.h, files suitable for our
-# uses.
-
-import re
-import string
-import sys
-
-def check_flow_state (line, flow_state_dict):
- mo = re.match (r'/\* Wave (\d) FlowStates \*/ (.*),', line)
- if mo:
- wave = int (mo.group (1))
- data = mo.group (2)
- split = data.split (',', 8)
- v = map (lambda x : int (x, 16), split)
- # print "%s, %s" % (wave, data)
- # print "split: ", split
- # print "v : ", v
- flow_state_dict[wave] = v
-
-
-def delta (xseq, yseq):
- # set subtraction
- z = []
- for x in xseq:
- if x not in yseq:
- z.append (x)
- return z
-
-
-def write_define (output, name, pairs):
- output.write ('#define %s()\t\\\n' % name)
- output.write ('do {\t\t\t\t\t\\\n')
- for reg, val in pairs:
- output.write ('%14s = 0x%02x;\t\t\t\\\n' % (reg, val))
- output.write ('} while (0)\n\n')
-
-def write_inlines (output, dict):
- regs = ['FLOWSTATE', 'FLOWLOGIC', 'FLOWEQ0CTL', 'FLOWEQ1CTL', 'FLOWHOLDOFF',
- 'FLOWSTB', 'FLOWSTBEDGE', 'FLOWSTBHPERIOD', 'GPIFHOLDAMOUNT']
-
- READ_FLOW_STATE = 2
- WRITE_FLOW_STATE = 3
-
- read_info = zip (regs, dict[READ_FLOW_STATE])
- write_info = zip (regs, dict[WRITE_FLOW_STATE])
-
- output.write ('''/*
- * Machine generated by "edit-gpif". Do not edit by hand.
- */
-
-''')
- write_define (output, 'setup_flowstate_common', read_info)
- write_define (output, 'setup_flowstate_read', delta (read_info, write_info))
- write_define (output, 'setup_flowstate_write', delta (write_info, read_info))
-
-
-def edit_gpif (input_name, output_name, inline_name):
- input = open (input_name, 'r')
- output = open (output_name, 'w')
- inline = open (inline_name, 'w')
- flow_state_dict = {}
-
- output.write ('''/*
- * Machine generated by "edit-gpif". Do not edit by hand.
- */
-
-''')
-
- while 1:
- line = input.readline ()
- line = string.replace (line, '\r','')
- line = re.sub (r' *$', r'', line)
-
- check_flow_state (line, flow_state_dict)
-
- line = re.sub (r'#include', r'// #include', line)
- line = re.sub (r'xdata ', r'', line)
- if re.search (r'GpifInit', line):
- break
-
- output.write (line)
-
- output.close ()
- write_inlines (inline, flow_state_dict)
- inline.close ()
-
-
-# gpif.c usrp_gpif.c usrp_gpif_inline.h
-edit_gpif (sys.argv[1], sys.argv[2], sys.argv[3])