You can subscribe to this list here.
2002 |
Jan
(2) |
Feb
(2) |
Mar
(22) |
Apr
(24) |
May
(7) |
Jun
(44) |
Jul
(16) |
Aug
(2) |
Sep
(13) |
Oct
(11) |
Nov
(19) |
Dec
(25) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(16) |
Feb
(27) |
Mar
(5) |
Apr
(20) |
May
(17) |
Jun
(34) |
Jul
(29) |
Aug
(22) |
Sep
(25) |
Oct
(11) |
Nov
(13) |
Dec
(18) |
2004 |
Jan
(25) |
Feb
(22) |
Mar
(33) |
Apr
(15) |
May
(37) |
Jun
(15) |
Jul
(12) |
Aug
(22) |
Sep
(18) |
Oct
(45) |
Nov
(19) |
Dec
(30) |
2005 |
Jan
(31) |
Feb
(35) |
Mar
(27) |
Apr
(22) |
May
(9) |
Jun
(13) |
Jul
(13) |
Aug
(9) |
Sep
(25) |
Oct
(25) |
Nov
(12) |
Dec
(20) |
2006 |
Jan
(14) |
Feb
(16) |
Mar
(17) |
Apr
(8) |
May
(7) |
Jun
(20) |
Jul
(21) |
Aug
(12) |
Sep
(19) |
Oct
(6) |
Nov
(23) |
Dec
(15) |
2007 |
Jan
(13) |
Feb
(14) |
Mar
(24) |
Apr
(21) |
May
(9) |
Jun
(5) |
Jul
(7) |
Aug
(9) |
Sep
(21) |
Oct
(5) |
Nov
(30) |
Dec
(9) |
2008 |
Jan
(15) |
Feb
(18) |
Mar
(4) |
Apr
(11) |
May
(3) |
Jun
(14) |
Jul
(12) |
Aug
(1) |
Sep
(31) |
Oct
(10) |
Nov
(9) |
Dec
(2) |
2009 |
Jan
(9) |
Feb
(6) |
Mar
(9) |
Apr
(2) |
May
(7) |
Jun
(22) |
Jul
(5) |
Aug
(1) |
Sep
(26) |
Oct
(13) |
Nov
(2) |
Dec
(10) |
2010 |
Jan
(29) |
Feb
(2) |
Mar
(23) |
Apr
(9) |
May
(7) |
Jun
(8) |
Jul
(4) |
Aug
(4) |
Sep
(1) |
Oct
(3) |
Nov
(2) |
Dec
(9) |
2011 |
Jan
(1) |
Feb
|
Mar
|
Apr
(25) |
May
(2) |
Jun
(19) |
Jul
(6) |
Aug
(4) |
Sep
(9) |
Oct
(3) |
Nov
(8) |
Dec
(7) |
2012 |
Jan
(5) |
Feb
(10) |
Mar
(10) |
Apr
(1) |
May
(2) |
Jun
|
Jul
|
Aug
(4) |
Sep
(1) |
Oct
|
Nov
(18) |
Dec
(10) |
2013 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
(1) |
May
(4) |
Jun
|
Jul
(26) |
Aug
(13) |
Sep
(24) |
Oct
(2) |
Nov
(1) |
Dec
(4) |
2014 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(1) |
Aug
(2) |
Sep
(6) |
Oct
(1) |
Nov
|
Dec
(5) |
2015 |
Jan
(1) |
Feb
(8) |
Mar
(7) |
Apr
(30) |
May
(3) |
Jun
(4) |
Jul
|
Aug
(7) |
Sep
(6) |
Oct
(13) |
Nov
(9) |
Dec
(2) |
2016 |
Jan
|
Feb
(7) |
Mar
(11) |
Apr
(6) |
May
(2) |
Jun
(16) |
Jul
(2) |
Aug
(6) |
Sep
(2) |
Oct
(2) |
Nov
(2) |
Dec
(7) |
2017 |
Jan
(9) |
Feb
(25) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
(14) |
Sep
(23) |
Oct
(3) |
Nov
|
Dec
(4) |
2018 |
Jan
|
Feb
|
Mar
(6) |
Apr
(4) |
May
(11) |
Jun
(2) |
Jul
|
Aug
|
Sep
(2) |
Oct
(3) |
Nov
(20) |
Dec
(10) |
2019 |
Jan
(4) |
Feb
(2) |
Mar
(9) |
Apr
(7) |
May
(2) |
Jun
(14) |
Jul
(17) |
Aug
(8) |
Sep
(9) |
Oct
(2) |
Nov
(2) |
Dec
(5) |
2020 |
Jan
(5) |
Feb
(13) |
Mar
|
Apr
(6) |
May
|
Jun
(7) |
Jul
(1) |
Aug
(3) |
Sep
|
Oct
|
Nov
(11) |
Dec
(4) |
2021 |
Jan
|
Feb
(3) |
Mar
(2) |
Apr
(4) |
May
(7) |
Jun
|
Jul
|
Aug
(4) |
Sep
|
Oct
(8) |
Nov
|
Dec
(3) |
2022 |
Jan
(5) |
Feb
(13) |
Mar
|
Apr
(3) |
May
(4) |
Jun
(4) |
Jul
|
Aug
(10) |
Sep
|
Oct
(1) |
Nov
(4) |
Dec
(4) |
2023 |
Jan
(10) |
Feb
(5) |
Mar
|
Apr
|
May
(5) |
Jun
(4) |
Jul
(6) |
Aug
(4) |
Sep
(28) |
Oct
(8) |
Nov
(2) |
Dec
(1) |
2024 |
Jan
|
Feb
(1) |
Mar
(2) |
Apr
|
May
(3) |
Jun
(1) |
Jul
(10) |
Aug
(6) |
Sep
(3) |
Oct
|
Nov
(9) |
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(2) |
Aug
(28) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Frank M. H. <fm...@gm...> - 2018-11-16 20:22:39
|
It sounds like you compiled against a 4.9.130 kernel source instead of against the stock debian kernel you intended to. You can use the "--with-linux-srcdir" option of configure, although it should work by default with your running kernel as long as you have its linux headers package installed. On Thu, Nov 15, 2018 at 2:04 PM Bishop, Mark (STRT) via Linux-gpib-general < lin...@li...> wrote: > When executing ‘make install’ from linux-gpib-kernel, the script wants to > put the modules in /lib/modules/4.9.130 but that directory doesn’t exists > on my machine (Debian). > > > > I would like it to install in /lib/modules/4.9.0-8-amd64. I’ve been > trying to pass different directives to ‘configure’ but it isn’t working. > > > > Any thoughts? > > > > *Mark Bishop* > > *Sr. Firmware/Software Engineer – Microwave Subsystems* > > > > [image: cid:image001.png@01D281ED.A45F0A90] > > 4726 Eisenhower Blvd. > > Tampa, FL 33634 > > USA > > > > T +1 813 901 7293 > > *mb...@sm... <mb...@sm...>* > > *smithsinterconnect.com* <http://www.smithsinterconnect.com/> > > *TRAK MICROWAVE IS NOW SMITHS INTERCONNECT!* > > > > > > This e-mail contains proprietary information some or all of which may be > legally privileged. It is intended for the recipient only. If an addressing > or transmission error has misdirected this e-mail, please notify the > authority by replying to this e-mail. If you are not the intended recipient > you must not use, disclose, distribute, copy, print, or rely on this > e-mail. In addition, information contained in or attached to this e-mail > may be subject to either 22 C.F.R. Parts 120?130, or 15 C.F.R. Parts > 730-774. These regulations prohibit the release or disclosure of certain > information contained herein to anyone who is not a U.S. citizen or > permanent resident alien, without a license first having been issued. > Failure to observe such requirements is a violation of U.S. law that > carries serious penalties. > _______________________________________________ > Linux-gpib-general mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linux-gpib-general > -- Frank |
From: Bishop, M. (STRT) <MB...@sm...> - 2018-11-15 22:03:47
|
When executing 'make install' from linux-gpib-kernel, the script wants to put the modules in /lib/modules/4.9.130 but that directory doesn't exists on my machine (Debian). I would like it to install in /lib/modules/4.9.0-8-amd64. I've been trying to pass different directives to 'configure' but it isn't working. Any thoughts? Mark Bishop Sr. Firmware/Software Engineer - Microwave Subsystems [cid:image001.png@01D281ED.A45F0A90] 4726 Eisenhower Blvd. Tampa, FL 33634 USA T +1 813 901 7293 mb...@sm...<mailto:mb...@sm...> smithsinterconnect.com<http://www.smithsinterconnect.com/> TRAK MICROWAVE IS NOW SMITHS INTERCONNECT! |
From: Bishop, M. (STRT) <MB...@sm...> - 2018-11-15 17:11:03
|
When you removed Makefile.PL you broke the build scripts. Trunk doesn't work. Mark Bishop Sr. Firmware/Software Engineer - Microwave Subsystems [cid:image001.png@01D281ED.A45F0A90] 4726 Eisenhower Blvd. Tampa, FL 33634 USA T +1 813 901 7293 mb...@sm...<mailto:mb...@sm...> smithsinterconnect.com<http://www.smithsinterconnect.com/> TRAK MICROWAVE IS NOW SMITHS INTERCONNECT! |
From: Bishop, M. (STRT) <MB...@sm...> - 2018-11-15 17:01:03
|
This is not called from the Makefile: make perl/Makefile.PL I had to do this manually. Mark Bishop Sr. Firmware/Software Engineer - Microwave Subsystems [cid:image001.png@01D281ED.A45F0A90] 4726 Eisenhower Blvd. Tampa, FL 33634 USA T +1 813 901 7293 mb...@sm...<mailto:mb...@sm...> smithsinterconnect.com<http://www.smithsinterconnect.com/> TRAK MICROWAVE IS NOW SMITHS INTERCONNECT! |
From: Frank M. H. <fm...@gm...> - 2018-11-07 19:21:34
|
On Wed, Nov 7, 2018 at 11:11 AM dave penkler <dpe...@gm...> wrote: > 2: Set the environment variables for cross compilation > >> export CROSS_COMPILE=arm-linux-gnueabihf- >> export ARCH=arm >> export CC=arm-linux-gnueabihf-gcc > I intended to setup these environment variables based on the configure options like --host but never got around to it. Also, ignoring all the configure stuff and just doing a standard external module build almost works if your kernel doesn't need the gpib kernel version compatibility headers. I believe a timer compatibility macro needs to get pulled out of compat/include/linux. |
From: dave p. <dpe...@gm...> - 2018-11-07 16:08:54
|
Folks, Now that Frank has made the jump to separate the package into kernel and user parts - cross compilation has become a lot easier. Here is a procedure that I tested out recently. Prerequisites ------------- You have downloaded the raspbian tools and kernel and compiled the kernel sources as per the instructions in https://www.raspberrypi.org/documentation/linux/kernel/building.md In the following it is assumed that: 1. the linux-gpib-kernel sources are in ~/gpib/linux-gpib-kernel-4.2.0 2. the linux-gpib-user sources are in ~/gpib/linux-gpib-user-4.2.0 3. the raspbian toolchain is installed in ~/tools 4. the raspbian kernel source tree is in ~/raspbian-linux 5. the ext4 partition of the raspberry pi sd-card is mounted on /mnt/ext4 Modify the procedure below accordingly if your setup is different. Procedure --------- 1: Set your PATH for the Makfiles to find the build tools export > PATH=$PATH:~/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin 2: Set the environment variables for cross compilation export CROSS_COMPILE=arm-linux-gnueabihf- > export ARCH=arm > export CC=arm-linux-gnueabihf-gcc 3: Build and install the kernel modules cd ~/gpib/linux-gpib-kernel-4.2.0 > ./configure --prefix=/mnt/ext4 --with-linux-srcdir=$HOME/raspbian-linux/ > --host=arm > make > sudo -E make INSTALL_MOD_PATH=/mnt/ext4 install 4: Build and install the user space package cd ~/gpib/linux-gpib-user-4.2.0 > ./configure --prefix=/mnt/ext4/usr/local --sysconfdir=/etc --host=arm > make > sudo -E make install At this point you can unmount the sd-card partition(s), install the card in your pi system and test out the gpib installation. Notes ----- Cross compilation for the perl binding is broken as its Makefile is still not made with the standard autotools. If you are uncomfortable with the sudo -E option you can include the shell variable assignments in each of the sudo make commands instead: sudo make INSTALL_MOD_PATH=/mnt/ext4 install > CROSS_COMPILE=arm-linux-gnueabihf- ARCH=arm CC=arm-linux-gnueabihf-gcc cheers, -Dave |
From: Manuel M. <man...@de...> - 2018-10-25 09:06:51
|
Hey, we want to use multiple GPIB-adapter from NI on one host. But there is currently no way to fix the association between a GPIB-board and an NI-GPIB- adapter. With each reboot we get a random mapping. To fix this quick and dirty I prepared the attached patch against linux-gpib-modules-4.2.0-rc1. To fix it the right way, I think there should be another config entry, like 'usb_serial'. Would be nice if you can include support for this in future versions. Regards, Manuel |
From: Frank M. H. <fm...@gm...> - 2018-10-02 23:28:35
|
On Tue, Oct 2, 2018 at 12:39 PM dave penkler <dpe...@gm...> wrote: > > This is the first candidate relase of the new split userland/kernel linux gpib package that Frank has been working on > . > The tarballs for the user and kernel parts are available here: https://sourceforge.net/projects/linux-gpib/files/linux-gpib for 3.x.x and 2.6.x kernels/4.2.0_rc1/ One thing to note, when running the configure script for the userspace you'll need to use the option "--sysconfdir=/etc" if you want it to behave like it used to. Otherwise, with the defaults it will look for gpib.conf in /usr/local/etc. |
From: dave p. <dpe...@gm...> - 2018-10-02 16:39:28
|
This is the first candidate relase of the new split userland/kernel linux gpib package that Frank has been working on . The tarballs for the user and kernel parts are available here: https://sourceforge.net/projects/linux-gpib/files/linux-gpib for 3.x.x and 2.6.x kernels/4.2.0_rc1/ It also incorporates a number of fixes including support for the new linux kernel timer interface. cheers, -Dave |
From: Frank M. H. <fm...@gm...> - 2018-09-28 17:05:43
|
On Sun, Sep 16, 2018 at 9:42 PM Charles Lane <la...@du...> wrote: > > none of the kernel modules compile properly at first; it > mostly seems to be problems with "init_timer" not being > declared, and a look at the kernel include files in linux/timer.h > shows that "init_timer" has gotten removed? modified? The timer compilation issues should be fixed already in svn (along with other changes like the kernel/userspace being seperated). |
From: Charles L. <la...@du...> - 2018-09-17 01:41:43
|
none of the kernel modules compile properly at first; it mostly seems to be problems with "init_timer" not being declared, and a look at the kernel include files in linux/timer.h shows that "init_timer" has gotten removed? modified? Patch included to get it to compile. I haven't had a chance to test it with hardware yet. Summary of changes: init_timer(timer) -> init_timer_key(timer,NULL,0,NULL,NULL) remove timer->data = whatever lines (no longer in timer_list struct) timer handler routines: void watchdog_timeout( unsigned long arg ) -> void watchdog_timeout( struct timer_list* arg ) -- Drexel University \V --Chuck Lane ======]---------->-----*------<--------[=========== (215) 895-1545 / \_/*~~~~~ Particle Physics FAX: (215) 895-1281 la...@du... |
From: Frank M. H. <fm...@gm...> - 2018-06-19 16:20:38
|
On Sun, Jun 17, 2018, 14:32 Colin Samples <col...@gm...> wrote: > > If you are interested in upstreaming this, let me know, and I can > clean it up a bit more. > > Sure, just post again when you're satisfied with it. |
From: Colin S. <col...@gm...> - 2018-06-17 18:31:36
|
Hi, I just wanted to announce my RPM packaging for linux-gpib. The RPM specs and patches for the main package is at <https://github.com/vddvss/linux-gpib-packaging>, and the RPM specs and downloads for the firmware package are at: <https://github.com/vddvss/linux-gpib-firmware-packaging>. Fedora and RHEL copr builds are at: <https://copr.fedorainfracloud.org/coprs/vddvss/linux-gpib/package/linux-gpib>. This repo includes a number of patches that may be of interest to the community: * In the documentation, I've converted it to DocBook 5 and added a manpage for the `ibterm` program. The conversion fixes a number of issues with with tables in the documentation, in particular `jw` messes them up in manpages, but using the DocBook 5 xslt stylesheet fixes them. I've also generated the PDF using `dblatex` instead of `jw`, which again fixes the tables in the generated PDF--and gives a nicer looking PDF. There were also a few typos I fixed, and a couple of tags that weren't closed. If you are interested in upstreaming this, let me know, and I can clean it up a bit more. * I've added a patch to fix the tcl manpage, which is broken. `rpmlint` caught this one. The page dates from 2001, so I'm unsure how long it's been that way--or how many people have actually tried to use the manpage. * For some reason, the build of the kernel module on RHEL/CentOS 7 is broken. In the fmh_gpib module, it was not able to find the declaration of the of_find_node_by_path function. Not sure what's going on with that, since it is in the linux/of.h header. But I'm not sure how many people will actually use the driver with that OS, so I just did a hack and patched an extern declaration in the fmh_gpib.c file for EL7 builds. * Another issue is `rpmlint` complains that the FSF address is incorrect in the COPYING file. Didn't bother to patch this, since I'm not sure how much it really matters. * The package includes new udev rules for better out-of-box user experience and to allow easier user customization of minor device numbers. More details about this are in the README file of the main repo. * The package also replaces the configuration/firmware loading scripts with systemd unit files. These will make sure the kernel modules are loaded before running `gpib_config` and loading firmware, and they will allow greater user customization. Thanks for all of your work on this project, and any feedback you have is much appreciated. -- Colin |
From: Derek K. <der...@gm...> - 2018-05-30 10:24:30
|
Hello Frank, Thank you for the update. I rebuilt and your changes work correctly for me. Inconsistent was the wrong word for me to have used. linux-gpib does both direct setting of the function as well as using kernel timer functions to do so and the kernel's poorly conceived API changes broke that. Your mknod/udev changes were very helpful and I have working Debian packages now. Still some work to get them passing review before they can be published, but I have hopes the day will come! Derek On Wed, May 30, 2018 at 12:23 AM, Frank Mori Hess <fm...@gm...> wrote: > On Tue, May 29, 2018 at 7:04 AM, Derek Kozel <der...@gm...> > wrote: > > I've succeeded in compiling the kernel portion now. I'm far more familiar > > with C++ than C so here's my findings and I hope someone can take it the > > last mile > > It should be fixed now in svn revision 1753 if you want to try that. > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Linux-gpib-general mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linux-gpib-general > |
From: Frank M. H. <fm...@gm...> - 2018-05-29 23:23:15
|
On Tue, May 29, 2018 at 7:04 AM, Derek Kozel <der...@gm...> wrote: > I've succeeded in compiling the kernel portion now. I'm far more familiar > with C++ than C so here's my findings and I hope someone can take it the > last mile It should be fixed now in svn revision 1753 if you want to try that. |
From: Frank M. H. <fm...@gm...> - 2018-05-29 23:06:30
|
On Tue, May 29, 2018 at 7:04 AM, Derek Kozel <der...@gm...> wrote: > > So < 4.14 and > 4.14 are clear straightforward. 4.14 is the edge case where > the timer_list function prototype does not match timer_setup. > > The GPIB code is inconsistent in how the timer functions are used. For 4.14 What is inconsistent is the kernel's 4.14 timer_setup code (which is garbage). To work around it, we'll have to make the gpib code never call timer_setup directly and add a COMPAT_TIMER_SETUP macro. |
From: Derek K. <der...@gm...> - 2018-05-29 11:05:03
|
I've succeeded in compiling the kernel portion now. I'm far more familiar with C++ than C so here's my findings and I hope someone can take it the last mile The timer_setup function is already defined in 4.14 so it needs to be surrounded by a LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0) check. The issue is that the timer_list function prototype is: // Kernel <= 4.14 void (*function)(unsigned long); // Kernel > 4.14 void (*function)(struct timer_list *); But that timer_setup // Kernel < 4.14 Supplied by compat layer timer_setup(struct timer_list *timer, void (*func)(COMPAT_TIMER_ARG_TYPE), unsigned int flags) // Kernel >= 4.14 timer_setup(struct timer_list *timer, void (*callback)(struct timer_list *), unsigned int flags) So < 4.14 and > 4.14 are clear straightforward. 4.14 is the edge case where the timer_list function prototype does not match timer_setup. The GPIB code is inconsistent in how the timer functions are used. For 4.14 COMPAT_TIMER_ARG_TYPE needs to be (struct timer_list *) in most cases, but pseudo_irq_handler and watchdog_timeout are both directly assigned to a timer_list function so need to have an unsigned long as their function argument. This is the part I'm not sure how to most cleanly resolve. I've attached my patch which is ok except for the pseudo_irq_handler and watchdog_timeout function prototypes being hardcoded to unsigned long. Regards, Derek On Mon, May 28, 2018 at 9:41 PM, Derek Kozel <der...@gm...> wrote: > My change to the kernel version requirement was incorrect. Kernel 4.14.0 > has unsigned long as the timer_list function argument type. > > https://elixir.bootlin.com/linux/v4.14/source/include/linux/timer.h#L20 > https://sourceforge.net/p/linux-gpib/code/1752/tree// > trunk/linux-gpib-kernel/compat/include/linux/timer.h#l29 > > I'll look more into the redefinition error. Comparing 4.13, 4.14, and 4.15 > declarations of setup_timer it looks like there were a few changes between > each so I maybe just particularly unlucky in kernel versions. > > https://elixir.bootlin.com/linux/v4.13/source/include/linux/timer.h#L154 > https://elixir.bootlin.com/linux/v4.14/source/include/linux/timer.h#L175 > https://elixir.bootlin.com/linux/v4.15/source/include/linux/timer.h#L131 > > Regards, > Derek > > On Mon, May 28, 2018 at 7:49 PM, Derek Kozel <der...@gm...> > wrote: > >> Hello, >> >> I've just had a chance to try the newly separated source trees and >> encountered an error with the setup_timer compat header. The make log is >> attached as linux-gpib-r1752-setup_timer-error.txt. >> >> I'm running Ubuntu 16.04 with kernel 4.14.0-041400-generic. I have SVN >> rev 1752. >> >> As the error was setup_timer being redefined I changed the kernel version >> check to < 4.14 and attempted to recompile. Many drivers succeeded, but >> then I encountered an incompatible pointer type error. The log for that is >> also attached, I reran make after the first error to abbreviate the output. >> My guess is that I'll have to try understanding the code a bit more to fix >> this error, but I'm also slightly surprised it hasn't been encountered by >> anyone else. Can anyone shed light on it? >> >> Many thanks, >> Derek >> >> On Tue, May 8, 2018 at 3:41 PM, Frank Mori Hess <fm...@gm...> wrote: >> >>> On Mon, May 7, 2018 at 10:46 AM, Stefan Mahr <Ste...@zy...> >>> wrote: >>> > Hi, >>> > >>> > There's a timer initialisation bug in ni_usb driver, especially >>> > for NI_USB_B. The timer is setup after first use of mod_timer >>> > (ni_usb_b_read_serial_number->usb_send_bulk_msg), so kernel throws a >>> > bug in timer.c: BUG_ON(!timer->function); >>> > >>> > Attached patch should fix this issue. >>> > >>> >>> Thanks, I'm going to try implementing timer_setup using setup_timer in >>> a compatibility header later today, to get rid of needing to #ifdef >>> every timer setup. I'll incorporate your change into that. >>> >>> >>> -- >>> Frank >>> >>> ------------------------------------------------------------ >>> ------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> _______________________________________________ >>> Linux-gpib-general mailing list >>> Lin...@li... >>> https://lists.sourceforge.net/lists/listinfo/linux-gpib-general >>> >> >> > |
From: Derek K. <der...@gm...> - 2018-05-28 20:42:37
|
My change to the kernel version requirement was incorrect. Kernel 4.14.0 has unsigned long as the timer_list function argument type. https://elixir.bootlin.com/linux/v4.14/source/include/linux/timer.h#L20 https://sourceforge.net/p/linux-gpib/code/1752/tree//trunk/linux-gpib-kernel/compat/include/linux/timer.h#l29 I'll look more into the redefinition error. Comparing 4.13, 4.14, and 4.15 declarations of setup_timer it looks like there were a few changes between each so I maybe just particularly unlucky in kernel versions. https://elixir.bootlin.com/linux/v4.13/source/include/linux/timer.h#L154 https://elixir.bootlin.com/linux/v4.14/source/include/linux/timer.h#L175 https://elixir.bootlin.com/linux/v4.15/source/include/linux/timer.h#L131 Regards, Derek On Mon, May 28, 2018 at 7:49 PM, Derek Kozel <der...@gm...> wrote: > Hello, > > I've just had a chance to try the newly separated source trees and > encountered an error with the setup_timer compat header. The make log is > attached as linux-gpib-r1752-setup_timer-error.txt. > > I'm running Ubuntu 16.04 with kernel 4.14.0-041400-generic. I have SVN rev > 1752. > > As the error was setup_timer being redefined I changed the kernel version > check to < 4.14 and attempted to recompile. Many drivers succeeded, but > then I encountered an incompatible pointer type error. The log for that is > also attached, I reran make after the first error to abbreviate the output. > My guess is that I'll have to try understanding the code a bit more to fix > this error, but I'm also slightly surprised it hasn't been encountered by > anyone else. Can anyone shed light on it? > > Many thanks, > Derek > > On Tue, May 8, 2018 at 3:41 PM, Frank Mori Hess <fm...@gm...> wrote: > >> On Mon, May 7, 2018 at 10:46 AM, Stefan Mahr <Ste...@zy...> >> wrote: >> > Hi, >> > >> > There's a timer initialisation bug in ni_usb driver, especially >> > for NI_USB_B. The timer is setup after first use of mod_timer >> > (ni_usb_b_read_serial_number->usb_send_bulk_msg), so kernel throws a >> > bug in timer.c: BUG_ON(!timer->function); >> > >> > Attached patch should fix this issue. >> > >> >> Thanks, I'm going to try implementing timer_setup using setup_timer in >> a compatibility header later today, to get rid of needing to #ifdef >> every timer setup. I'll incorporate your change into that. >> >> >> -- >> Frank >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Linux-gpib-general mailing list >> Lin...@li... >> https://lists.sourceforge.net/lists/listinfo/linux-gpib-general >> > > |
From: Derek K. <der...@gm...> - 2018-05-28 18:49:57
|
Hello, I've just had a chance to try the newly separated source trees and encountered an error with the setup_timer compat header. The make log is attached as linux-gpib-r1752-setup_timer-error.txt. I'm running Ubuntu 16.04 with kernel 4.14.0-041400-generic. I have SVN rev 1752. As the error was setup_timer being redefined I changed the kernel version check to < 4.14 and attempted to recompile. Many drivers succeeded, but then I encountered an incompatible pointer type error. The log for that is also attached, I reran make after the first error to abbreviate the output. My guess is that I'll have to try understanding the code a bit more to fix this error, but I'm also slightly surprised it hasn't been encountered by anyone else. Can anyone shed light on it? Many thanks, Derek On Tue, May 8, 2018 at 3:41 PM, Frank Mori Hess <fm...@gm...> wrote: > On Mon, May 7, 2018 at 10:46 AM, Stefan Mahr <Ste...@zy...> wrote: > > Hi, > > > > There's a timer initialisation bug in ni_usb driver, especially > > for NI_USB_B. The timer is setup after first use of mod_timer > > (ni_usb_b_read_serial_number->usb_send_bulk_msg), so kernel throws a > > bug in timer.c: BUG_ON(!timer->function); > > > > Attached patch should fix this issue. > > > > Thanks, I'm going to try implementing timer_setup using setup_timer in > a compatibility header later today, to get rid of needing to #ifdef > every timer setup. I'll incorporate your change into that. > > > -- > Frank > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Linux-gpib-general mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linux-gpib-general > |
From: Allan <al...@ov...> - 2018-05-18 19:25:44
|
This seemed to get things working... #OOPS! sudo apt-get install fxload #Get the device bus and id. lsusb Bus 002 Device 005: ID 0957:0518 Agilent Technologies, Inc. #Load firmware sudo fxload -D /dev/bus/usb/002/005 -t fx2 -I gpib_firmware-2008-08-10/agilent_82357a/measat_releaseX1.8.hex #Wait for 3 seconds... lsusb Bus 002 Device 006: ID 0957:0518 Agilent Technologies, Inc. #<<< Notice the id change. sudo fxload -D /dev/bus/usb/002/006 -t fx2 -I gpib_firmware-2008-08-10/agilent_82357a/measat_releaseX1.8.hex sudo gpib_config #Works!!! On 05/18/2018 02:19 PM, Allan wrote: > I could use your help figuring out what I am doing wrong in my feeble > attempt at using the linux-gpib library. I am trying to use the > linux-gpib library to interface with a Beiming Technologies S82357 USB > to gpib adapter and an Agilent 4268A capacitance meter. My end goal is > to get capacitance and dissipation factor measurements from this > instrument. Currently I have successfully compiled the linux-gpib > sources by using, > > ./configure > make > sudo make install > > The issues I am having are not being able to open the Agilent 4268A > instrument from the ibtest or ibterm programs. When attempting to use > either of these two programs there is an error message in the syslog > that reads, > > May 18 13:09:58 allan-mi kernel: [ 1975.850775] gpib: ioctl 3 invalid > for offline board > May 18 13:09:58 allan-mi kernel: [ 1975.850821] gpib: ioctl 5 invalid > for offline board > May 18 13:09:58 allan-mi kernel: [ 1975.850836] gpib: ioctl 5 invalid > for offline board > > Other times I will get the following error messages, > > May 18 12:33:01 allan-mi kernel: [49674.574631] gpib: interface attach > failed > May 18 12:38:07 allan-mi kernel: [ 64.014752] agilent_82357a_gpib > driver loadingprobe succeeded for path: usb-0000:00:14.0-4 > May 18 12:38:07 allan-mi kernel: [ 64.014796] usbcore: registered > new interface driver agilent_82357a_gpib > May 18 12:38:07 allan-mi kernel: [ 64.014799] gpib: registered > agilent_82357a interface > May 18 12:40:00 allan-mi kernel: [ 176.966179] gpib: no gpib board > configured on /dev/gpib0 > May 18 12:40:00 allan-mi kernel: [ 176.966209] gpib: no gpib board > configured on /dev/gpib0 > May 18 12:40:00 allan-mi kernel: [ 176.966218] gpib: no gpib board > configured on /dev/gpib0 > May 18 12:45:37 allan-mi kernel: [ 514.809951] gpib: no gpib board > configured on /dev/gpib0 > May 18 12:45:37 allan-mi kernel: [ 514.809996] gpib: no gpib board > configured on /dev/gpib0 > May 18 12:45:37 allan-mi kernel: [ 514.810010] gpib: no gpib board > configured on /dev/gpib0 > > Any advice you could give would be a great help. > > Thanks, > > Allan Overstreet > > > > I have also downloaded the firmware and copied it into the > /usr/share/usb/agilent_82357a directory. The firmware is also located > in ~/software/linux-gpib/gpib_firmware-2008-08-10/ > > Below is my gpib.conf file in /etc/gpib.conf > > /*********************************************************************** > GPIB.CONF IEEE488 library config file > ------------------- > > copyright : (C) 2002 by Frank Mori Hess > (C) 1994 by C.Schroeter > email : fm...@us... > ***************************************************************************/ > /*************************************************************************** > * > * Syntax: > * > * interface { ... } starts new interface board section > * device {...} device configuration > * > ***************************************************************************/ > > /* This section configures the configurable driver characteristics > * for an interface board, such as board address, and interrupt level. > * minor = 0 configures /dev/gpib0, minor = 1 configures /dev/gpib1, etc. > */ > > interface { > minor = 0 /* board index, minor = 0 uses /dev/gpib0, minor = 1 > uses /dev/gpib1, etc. */ > board_type = "agilent_82357a" /* type of interface board being > used */ > name = "usb_china" /* optional name, allows you to get a board > descriptor using ibfind() */ > pad = 0 /* primary address of interface */ > sad = 0 /* secondary address of interface */ > timeout = T3s /* timeout for commands */ > > eos = 0x0a /* EOS Byte, 0xa is newline and 0xd is carriage > return */ > set-reos = yes /* Terminate read if EOS */ > set-bin = no /* Compare EOS 8-bit */ > set-xeos = no /* Assert EOI whenever EOS byte is sent */ > set-eot = yes /* Assert EOI with last byte on writes */ > > /* settings for boards that lack plug-n-play capability */ > base = 0 /* Base io ADDRESS */ > irq = 0 /* Interrupt request level */ > dma = 0 /* DMA channel (zero disables) */ > > /* pci_bus and pci_slot can be used to distinguish two pci boards > supported by the same driver */ > /* pci_bus = 0 */ > /* pci_slot = 7 */ > > master = yes /* interface board is system controller */ > } > > /* This is how you might set up a pcIIa board on /dev/gpib1, uncomment > to use. */ > /******************* > interface { > minor = 1 > board_type = "pcIIa" > pad = 0 > sad = 0 > timeout = T3s > > eos = 0x0a > set-reos = yes > set-bin = no > > base = 0x2e1 > irq = 7 > dma = 1 > > master = yes > } > *********************/ > > /* Now the device sections define the device characteristics for each > device. > * These are only used if you want to open the device using ibfind() > (instead > * of ibdev() ) > */ > > device { > minor = 0 /* minor number for interface board this device is > connected to */ > name = "agilent_4268A" /* device mnemonic */ > pad = 18 /* The Primary Address */ > sad = 0 /* Secondary Address */ > > eos = 0xa /* EOS Byte */ > set-reos = no /* Terminate read if EOS */ > set-bin = no /* Compare EOS 8-bit */ > } > > device { > minor = 0 > name = "scope" > pad = 8 > sad = 0 > } > > I also modified a hot plug script in the > /etc/hotplug/usb/agilent_82357a file. This is listed below, > > #!/bin/sh > > GPIB_CONFIG_OPTIONS="--minor 0" > DATADIR=/usr/share > FXLOAD=fxload > FXLOAD_OPTIONS= > > PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin > FIRMWARE=/home/allan/software/linux-gpib/gpib_firmware-2008-08-10/ > > # pre-renumeration device IDs > case $PRODUCT in > # 82357a with firmware already loaded > 957/107/*) > gpib_config $GPIB_CONFIG_OPTIONS > ;; > > # 82357a without firmware > 957/7/*) > FIRMWARE=$DATADIR/usb/agilent_82357a/82357a_fw.hex > ;; > > # 82357b with firmware already loaded > 957/718/*) > gpib_config $GPIB_CONFIG_OPTIONS > ;; > > # 82357b without firmware > 957/518/*) > FIRMWARE=$DATADIR/usb/agilent_82357a/measat_releaseX1.8.hex > FXLOAD_OPTIONS="-t fx2" > ;; > > esac > > > # quit unless we were called to download some firmware > if [ "$FIRMWARE" = "" ]; then > # OR: restructure to do other things for > # specific post-renumeration devices > exit 0 > fi > > # missing firmware? > if [ ! -r $FIRMWARE ]; then > if [ -x /usr/bin/logger ]; then > /usr/bin/logger -t $0 "missing $FIRMWARE for $PRODUCT ??" > fi > exit 1 > fi > > # missing fxload? > if ! which $FXLOAD; then > if [ -x /usr/bin/logger ]; then > /usr/bin/logger -t $0 "missing $FXLOAD ??" > fi > exit 1 > fi > > if [ -x /usr/bin/logger ]; then > /usr/bin/logger -t $0 "load $FIRMWARE for $PRODUCT to $DEVICE" > fi > > $FXLOAD $FXLOAD_OPTIONS -I $FIRMWARE > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > _______________________________________________ > Linux-gpib-general mailing list > Lin...@li... > https://lists.sourceforge.net/lists/listinfo/linux-gpib-general |
From: Allan <al...@ov...> - 2018-05-18 18:38:48
|
I could use your help figuring out what I am doing wrong in my feeble attempt at using the linux-gpib library. I am trying to use the linux-gpib library to interface with a Beiming Technologies S82357 USB to gpib adapter and an Agilent 4268A capacitance meter. My end goal is to get capacitance and dissipation factor measurements from this instrument. Currently I have successfully compiled the linux-gpib sources by using, ./configure make sudo make install The issues I am having are not being able to open the Agilent 4268A instrument from the ibtest or ibterm programs. When attempting to use either of these two programs there is an error message in the syslog that reads, May 18 13:09:58 allan-mi kernel: [ 1975.850775] gpib: ioctl 3 invalid for offline board May 18 13:09:58 allan-mi kernel: [ 1975.850821] gpib: ioctl 5 invalid for offline board May 18 13:09:58 allan-mi kernel: [ 1975.850836] gpib: ioctl 5 invalid for offline board Other times I will get the following error messages, May 18 12:33:01 allan-mi kernel: [49674.574631] gpib: interface attach failed May 18 12:38:07 allan-mi kernel: [ 64.014752] agilent_82357a_gpib driver loadingprobe succeeded for path: usb-0000:00:14.0-4 May 18 12:38:07 allan-mi kernel: [ 64.014796] usbcore: registered new interface driver agilent_82357a_gpib May 18 12:38:07 allan-mi kernel: [ 64.014799] gpib: registered agilent_82357a interface May 18 12:40:00 allan-mi kernel: [ 176.966179] gpib: no gpib board configured on /dev/gpib0 May 18 12:40:00 allan-mi kernel: [ 176.966209] gpib: no gpib board configured on /dev/gpib0 May 18 12:40:00 allan-mi kernel: [ 176.966218] gpib: no gpib board configured on /dev/gpib0 May 18 12:45:37 allan-mi kernel: [ 514.809951] gpib: no gpib board configured on /dev/gpib0 May 18 12:45:37 allan-mi kernel: [ 514.809996] gpib: no gpib board configured on /dev/gpib0 May 18 12:45:37 allan-mi kernel: [ 514.810010] gpib: no gpib board configured on /dev/gpib0 Any advice you could give would be a great help. Thanks, Allan Overstreet I have also downloaded the firmware and copied it into the /usr/share/usb/agilent_82357a directory. The firmware is also located in ~/software/linux-gpib/gpib_firmware-2008-08-10/ Below is my gpib.conf file in /etc/gpib.conf /*********************************************************************** GPIB.CONF IEEE488 library config file ------------------- copyright : (C) 2002 by Frank Mori Hess (C) 1994 by C.Schroeter email : fm...@us... ***************************************************************************/ /*************************************************************************** * * Syntax: * * interface { ... } starts new interface board section * device {...} device configuration * ***************************************************************************/ /* This section configures the configurable driver characteristics * for an interface board, such as board address, and interrupt level. * minor = 0 configures /dev/gpib0, minor = 1 configures /dev/gpib1, etc. */ interface { minor = 0 /* board index, minor = 0 uses /dev/gpib0, minor = 1 uses /dev/gpib1, etc. */ board_type = "agilent_82357a" /* type of interface board being used */ name = "usb_china" /* optional name, allows you to get a board descriptor using ibfind() */ pad = 0 /* primary address of interface */ sad = 0 /* secondary address of interface */ timeout = T3s /* timeout for commands */ eos = 0x0a /* EOS Byte, 0xa is newline and 0xd is carriage return */ set-reos = yes /* Terminate read if EOS */ set-bin = no /* Compare EOS 8-bit */ set-xeos = no /* Assert EOI whenever EOS byte is sent */ set-eot = yes /* Assert EOI with last byte on writes */ /* settings for boards that lack plug-n-play capability */ base = 0 /* Base io ADDRESS */ irq = 0 /* Interrupt request level */ dma = 0 /* DMA channel (zero disables) */ /* pci_bus and pci_slot can be used to distinguish two pci boards supported by the same driver */ /* pci_bus = 0 */ /* pci_slot = 7 */ master = yes /* interface board is system controller */ } /* This is how you might set up a pcIIa board on /dev/gpib1, uncomment to use. */ /******************* interface { minor = 1 board_type = "pcIIa" pad = 0 sad = 0 timeout = T3s eos = 0x0a set-reos = yes set-bin = no base = 0x2e1 irq = 7 dma = 1 master = yes } *********************/ /* Now the device sections define the device characteristics for each device. * These are only used if you want to open the device using ibfind() (instead * of ibdev() ) */ device { minor = 0 /* minor number for interface board this device is connected to */ name = "agilent_4268A" /* device mnemonic */ pad = 18 /* The Primary Address */ sad = 0 /* Secondary Address */ eos = 0xa /* EOS Byte */ set-reos = no /* Terminate read if EOS */ set-bin = no /* Compare EOS 8-bit */ } device { minor = 0 name = "scope" pad = 8 sad = 0 } I also modified a hot plug script in the /etc/hotplug/usb/agilent_82357a file. This is listed below, #!/bin/sh GPIB_CONFIG_OPTIONS="--minor 0" DATADIR=/usr/share FXLOAD=fxload FXLOAD_OPTIONS= PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin FIRMWARE=/home/allan/software/linux-gpib/gpib_firmware-2008-08-10/ # pre-renumeration device IDs case $PRODUCT in # 82357a with firmware already loaded 957/107/*) gpib_config $GPIB_CONFIG_OPTIONS ;; # 82357a without firmware 957/7/*) FIRMWARE=$DATADIR/usb/agilent_82357a/82357a_fw.hex ;; # 82357b with firmware already loaded 957/718/*) gpib_config $GPIB_CONFIG_OPTIONS ;; # 82357b without firmware 957/518/*) FIRMWARE=$DATADIR/usb/agilent_82357a/measat_releaseX1.8.hex FXLOAD_OPTIONS="-t fx2" ;; esac # quit unless we were called to download some firmware if [ "$FIRMWARE" = "" ]; then # OR: restructure to do other things for # specific post-renumeration devices exit 0 fi # missing firmware? if [ ! -r $FIRMWARE ]; then if [ -x /usr/bin/logger ]; then /usr/bin/logger -t $0 "missing $FIRMWARE for $PRODUCT ??" fi exit 1 fi # missing fxload? if ! which $FXLOAD; then if [ -x /usr/bin/logger ]; then /usr/bin/logger -t $0 "missing $FXLOAD ??" fi exit 1 fi if [ -x /usr/bin/logger ]; then /usr/bin/logger -t $0 "load $FIRMWARE for $PRODUCT to $DEVICE" fi $FXLOAD $FXLOAD_OPTIONS -I $FIRMWARE |
From: Frank M. H. <fm...@gm...> - 2018-05-08 14:41:25
|
On Mon, May 7, 2018 at 10:46 AM, Stefan Mahr <Ste...@zy...> wrote: > Hi, > > There's a timer initialisation bug in ni_usb driver, especially > for NI_USB_B. The timer is setup after first use of mod_timer > (ni_usb_b_read_serial_number->usb_send_bulk_msg), so kernel throws a > bug in timer.c: BUG_ON(!timer->function); > > Attached patch should fix this issue. > Thanks, I'm going to try implementing timer_setup using setup_timer in a compatibility header later today, to get rid of needing to #ifdef every timer setup. I'll incorporate your change into that. -- Frank |
From: Stefan M. <Ste...@zy...> - 2018-05-07 14:58:58
|
Hi, There's a timer initialisation bug in ni_usb driver, especially for NI_USB_B. The timer is setup after first use of mod_timer (ni_usb_b_read_serial_number->usb_send_bulk_msg), so kernel throws a bug in timer.c: BUG_ON(!timer->function); Attached patch should fix this issue. BR, Stefan |
From: Roel J. <r.j...@sc...> - 2018-05-06 15:44:39
|
Hi all, Thanks for this great project! I've just managed to get my new lab PC running with a HP82450A PCI card using Ubuntu 18.04 and the trunk code. Most of it works very nicely, I can access my RF generator and some other hardware perfectly. One device is proving stubborn though, my old HP853A spectrum analyzer. According to the manual this one should listen to a few commands to export the data but currently it isn't responding for me. In general there is no response from the device if it's the only one that's powered on and it prints "syntax err" on the screen if there is another device active and I'm communicating with that one. My guess is currently that it's being picky about the handshaking or something but I'm not so familiar with GPIB yet. As a second experiment I'd like to try to use the option to directly drive a plotter from the spectrum analyzer and see if I can get my PC to receive the data. Is this something I can do with linux-gpib? A first step would probably require met to get the card into a listening state and just dump the intercepted data to an output but I have no clue on how to get started here. Cheers, Roel |
From: Frank M. H. <fm...@gm...> - 2018-04-05 02:08:32
|
On Mon, Apr 2, 2018 at 11:37 AM, Derek Kozel <der...@gm...> wrote: > > The reorganization sounds really good. Also like it would be better if I can > get these patches integrated (where they make sense) sooner rather than > later. > I've finished a first pass at splitting the kernel module stuff out from the rest of linux-gpib. In svn there are now "linux-gpib-kernel" and "linux-gpib-user" directories in the trunk. They are independent and each have their own bootstrap script and autoconf stuff. |