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

sreeraj r rsreeraj at gmail.com
Thu Oct 30 14:43:04 EDT 2014

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,

> 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*


> $ 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
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

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

Sreeraj Rajendran
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/attachments/20141030/99b5170a/attachment-0002.html>

More information about the USRP-users mailing list