[PATCH 04/15] staging: comedi: ni_routing: add ni routing tables

Greg Kroah-Hartman gregkh at linuxfoundation.org
Thu Nov 10 17:54:11 UTC 2016


On Thu, Nov 10, 2016 at 05:17:22PM +0000, Ian Abbott wrote:
> On 12/10/16 12:05, Spencer E. Olson wrote:
> > Adds tables of all register values for routing various signals to various
> > terminals on National Instruments hardware.  This information is directly
> > compared to and taken from register-level programming documentation and/or
> > register-level programming examples as provided by National Instruments.
> > 
> > Furthermore, this information was mostly compared (favorably) to the
> > register values already used in the comedi drivers for NI hardware.
> > 
> > Adds tables of valid routes for many devices.  This information is not
> > consistent from device to device, nor entirely consistent within device
> > families.  One additional major challenge is that this information does not
> > seem to be obtainable in any programmatic fashion, neither through the
> > proprietary NIDAQmx(-base) c-libraries, nor with register level
> > programming, _nor_ through any documentation.  In fact, the only consistent
> > source of this information is through the proprietary NI-MAX software,
> > which currently only runs on Windows platforms.  A further challenge is
> > that this information cannot be exported from NI-MAX, except by screenshot.
> > 
> > As described in ni_routing/README and as provided by this commit, the
> > device route information is primarily stored in a spreadsheet so-as to
> > enhance the ability to compare to screenshots obtained of NI-MAX.  This
> > commit provides the ability to parse the spreadsheets and generate
> > code following kernel conventions.
> > 
> > Signed-off-by: Spencer E. Olson <olsonse at umich.edu>
> > 
> > *** PLEASE FIND ACTUAL PATCH AT:
> > http://www.umich.edu/~olsonse/patches/comedi-devglobal-v1/0004-staging-comedi-ni_routing-add-ni-routing-tables.patch
> > 
> > (This patch was over 500kB in size, too large for inline patch submission)
> > ---
> >  .../staging/comedi/drivers/ni_routing/.gitignore   |     3 +
> >  drivers/staging/comedi/drivers/ni_routing/Makefile |    40 +
> >  .../comedi/drivers/ni_routing/extract_tables.py    |   259 +
> >  .../comedi/drivers/ni_routing/ni_device_routes.c   | 20251 +++++++++++++++++++
> >  .../comedi/drivers/ni_routing/ni_route_values.c    |  2724 +++
> >  5 files changed, 23277 insertions(+)
> >  create mode 100644 drivers/staging/comedi/drivers/ni_routing/.gitignore
> >  create mode 100644 drivers/staging/comedi/drivers/ni_routing/Makefile
> >  create mode 100755 drivers/staging/comedi/drivers/ni_routing/extract_tables.py
> >  create mode 100644 drivers/staging/comedi/drivers/ni_routing/ni_device_routes.c
> >  create mode 100644 drivers/staging/comedi/drivers/ni_routing/ni_route_values.c
> > 
> > <... SNIP ...>
> > 
> 
> The file heading comments in ni_device_routes.c and ni_route_values.c have
> completely blank lines that need filling in.
> 
> I'm not sure if the fact that this patch cannot be emailed is a problem for
> it to be accepted.  Since the problem is the number of lines, perhaps it can
> be split?

Why not auto-generate the .c files from the csv files as part of the
kernel build process?  We do that today for other auto-generated files.

thanks,

greg k-h


More information about the devel mailing list