[USRP-users] uhd_usrp_probe not working with NI USRP-2952R over PCI

Ashish Chaudhari ashish.chaudhari at ettus.com
Fri Oct 31 14:11:18 EDT 2014


Hi Sreeraj,

Everything looks normal based on what you posted. At this point it could be
that the driver just does not work with the 3.17 (even though it compiles).
I would highly recommend using 3.14 or 3.15. We have verified that those
work with the USRP RIO driver stack.

There is also a possibility that the hardware is bad. Has your USRP RIO
worked over PCIe on any other OS/machine? Can you check the status of the
DS17 LED in when your host computer is powered up? Its a green LED near the
PCIe connector on the USRP; its very close to the large heatsink. It should
be on a few seconds after your host powers up.

Thanks,

*Ashish Chaudhari* | Senior Software Engineer | High Frequency Measurements
- RF
Ettus Research, *A National Instruments Company*
ashish.chaudhari at ettus.com

On Thu, Oct 30, 2014 at 11:43 AM, sreeraj r <rsreeraj at gmail.com> wrote:

> Hi Ashish,
>
> On Thu, Oct 30, 2014 at 6:01 PM, Ashish Chaudhari <
> ashish.chaudhari at ettus.com> wrote:
>
>> Hi Sreeraj,
>>
>> Its seems like the OS is recognizing the device but the USRP RIO driver
>> stack isn't. First, lets verify that all the necessary kernel modules are
>> actually loaded. Can you please post the output of
>> "/usr/local/bin/niusrprio_pcie status"? After you have run "sudo
>> /usr/local/bin/niusrprio_pcie start" it should look like the following:
>>
>> $ /usr/local/bin/niusrprio_pcie status
>> Modules Loaded: nikal nibds nistreamk NiRioSrv niusrpriok
>> Server: niusrpriorpc
>>
>
> I think all modules are properly loaded
>
> >>lsmod | grep -i n
> niusrpriok 386125 0
> NiRioSrv 734204 0
> nistreamk 131846 2 niusrpriok,NiRioSrv
> nibds 51513 2 niusrpriok,NiRioSrv
> nikal 71006 4 niusrpriok,nibds,NiRioSrv,
> nistreamk
>
>
>
>>
>> I should mention that the 3.17 kernel is newer than our officially
>> supported kernel versions and we have not verified it. To figure out if
>> this could be a kernel compatibility issue please run the following
>> commands and post the output of the last command.
>>
>> $ sudo /usr/local/bin/niusrprio_pcie stop
>>
>
> sudo /usr/local/bin/niusrprio_pcie stop
> Stopping: niusrpriorpc
> Unloading: niusrpriok NiRioSrv
>
> $ sudo rm /usr/local/natinst/nikal/src/client/*.o*
>> $ sudo rm /usr/local/natinst/nikal/src/nikal/*.*o*
>>
>
> Works
>
>
>> $ sudo /usr/local/bin/updateNIDrivers --no-prompt
>>
>
> Configuring for linux kernel version 3.17.1-1-ARCH.
>
> ******************************
> *** NOTE *********************************
> Using kernel headers found in /lib/modules/3.17.1-1-ARCH/build.
> If this does not correspond to the location of the 3.17.1-1-ARCH headers,
> then define KERNELHEADERS in your environment to point to the location
> of the kernel headers, define KERNELTARGET as the version of the
> kernel for which to compile, and then rerun ./configure.
> ********************************* NOTE *********************************
>
> Kernel has version.h in include/generated/uapi/: yes
> Kernel has reparent_to_init(): no
> Number of arguments for do_munmap(): 3
> Kernel has vm_mmap(): yes
> Kernel has vm_munmap(): yes
> Kernel has VM_RESERVED: no
> Kernel struct pci_dev has busn_res member: yes
> pte_offset function: pte_offset_kernel()
> Levels in page table: 4
> Kernel has remap_pfn_range: yes
> Kernel has kzalloc: yes
> Kernel has chained SGL support: yes
> USB altsetting name: cur_altsetting
> Kernel has usb_get_intf(): yes
> Kernel has intf_cache member in usb_host_config: yes
> Kernel has ep[] members in usb_device: yes
> Kernel exports usb_set_configuration(): yes
> Units of USB_CTRL_GET_TIMEOUT: msec
> Kernel has owner member in usb_driver: no
> Kernel has put_page_testzero(): yes
> Kernel has mutex method: yes
> Kernel has wait_for_completion_interruptible: yes
> Kernel has config.h: no
> Kernel has ioctl32.h: no
> IRQ handlers have pt_regs: no
> Kernel has work_struct and delayed_work: yes
> Kernel supports fault method in vm_operations_struct: yes
> Kernel has ioremap_wc: yes
> Kernel has pgprot_writecombine: yes
> Kernel has cred.h: yes
> Kernel has uidgid.h: yes
> Kernel has UMH constants: yes
> Kernel has create_proc_read_entry: no
> Kernel has namespaced generic netlink API: yes
> Kernel has genlmsg_new: yes
> Kernel has family genlmsg_put: yes
> Kernel has family genl_ops_groups: yes
> Kernel has usleep_range(): yes
> Kernel has RS-485 serial_core support: no
> Kernel struct uart_ops has set_wake(): no
> Kernel uses tty_port instead of tty_struct for tty helper functions: yes
>
> Storing configuration in Makefile.in
> If the values stored are incorrect they can be changed before running make.
>
> Installing NI-KAL:
>  NI-KAL successfully updated.
> Updating client modules:
>  nibds.ko successfully updated.
>  nistreamk.ko successfully updated.
>  NiRioSrv.ko successfully updated.
>  niusrpriok.ko successfully updated.
> Rebooting may be required to ensure that National Instruments drivers
> have been successfully updated.
>
>
>
>>
>> I should also mention that the USRP RIO devices are not hot-pluggable
>> over PCIe. Even if the kernel has hot-plug support the USRP drivers don't
>> and you can get into a situation where the OS detects the device and the
>> driver stack does not. So (if you have not done this already) I would ask
>> that you try your tests after rebooting your host (leaving the USRP powered
>> on).
>>
>> Tried this too
>
> Thanks
> Sreeraj Rajendran
>
>
>> Thanks,
>>
>> *Ashish Chaudhari* | Senior Software Engineer | High Frequency
>> Measurements - RF
>> Ettus Research, *A National Instruments Company*
>> ashish.chaudhari at ettus.com
>>
>> On Wed, Oct 29, 2014 at 10:41 AM, sreeraj r via USRP-users <
>> usrp-users at lists.ettus.com> wrote:
>>
>>> Hi,
>>>
>>> I installed NI USRP RIO PCI driver from
>>> http://files.ettus.com/manual/page_ni_rio_kernel.html. But I am not
>>> able to probe my USRP using uhd_usrp_probe/uhd_find_devices. I recompiled
>>> uhd and is facing the same issue. Please find the logs given below.
>>>
>>> OS: Archlinux 3.17.1-1-ARCH
>>>
>>> Some outuput logs
>>>
>>> >> sudo /usr/local/bin/niusrprio_pcie start
>>> Loading: NiRioSrv niusrpriok
>>> Starting: niusrpriorp
>>>
>>> >>lspci -k -d 1093:c4c4
>>> 04:00.0 Signal processing controller: National Instruments PXIe/PCIe
>>> Device
>>>     Subsystem: National Instruments Device 7730
>>>     Kernel modules: niusrpriok
>>>
>>>
>>> >>sudo ls
>>> /dev/ni
>>> nistreamk:0\nistreamk\
>>>
>>>
>>> >>uhd_find_devices
>>> linux; GNU C++ version 4.9.1 20140903 (prerelease); Boost_105600;
>>> UHD_003.008.000-0-unknown
>>>
>>>
>>> UHD Error:
>>>     Device discovery error: input stream error
>>> No UHD Devices Found
>>>
>>>
>>> >>uhd_usrp_probe
>>> linux; GNU C++ version 4.9.1 20140903 (prerelease); Boost_105600;
>>> UHD_003.008.000-0-unknown
>>>
>>> Error: input stream error
>>>
>>>
>>> Thanks in advance
>>> Sreeraj Rajendran
>>>
>>>
>>> _______________________________________________
>>> USRP-users mailing list
>>> USRP-users at lists.ettus.com
>>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>>>
>>>
>>
>
>
> --
> Regards
> Sreeraj Rajendran
> http://radioninja.in/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20141031/1f0725d7/attachment-0002.html>


More information about the USRP-users mailing list