Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

device tree on upgraded kernel not creating spi devices.

Featured Replies

I'm trying to upgrade my kernel. However on the new kernel the boot loader says 'Applying kernel provided DT overlay sun50i-h5-spi-spidev.dtbo'. But there are no spi devices.

 

If I run the old kernel, everything is there.

 

In a bit more detail...

 

1) Download linux source 5.16.10

2) Copy config from /boot/ directory

3) Make menuconfig

4) turn on real time  PREEMPT (something I want to experiment with)

5) build

6) build the modules

7) copy the kernel and modules to the sd card

8) link Image to the new version.

reboot

 

The device comes up and networking is working, but I have no /dev/spi

 

Is there something I'm doing wrong? Is there a way to debug?

Thanks

 

 

Edited by Dan Walton76
change of word

Solved by Dan Walton76

I've just installed a RPI dvb hat (sony cxd2880 spi device) on a bpim2plus with kernel 5.10.60-sunxi #21.08.2 SMP Tue Sep 14 16:28:44 UTC 2021 armv7l.

 

/dev/spi is not populated but the cxd2880 driver can obviously find spi0 (thanks to a dtb found on armbian forum) because I can stream DVB-T ?!?

 

I suppose the driver don't need spi devices.

 

udev problem on debian bullseye ? (I am afraid to say I don't understand anything on dtb).

 

Kernel seems happy anyway :

 

ls -l /sys/bus/spi/devices/
total 0
lrwxrwxrwx 1 root root 0 Feb 22 12:32 spi0.0 -> ../../../devices/platform/soc/1c68000.spi/spi_master/spi0/spi0.0

  • Author
3 hours ago, Myron said:

For example, the make and model of the SBC you are using.

I'm using an Orange PI Zero Plus 2. Thanks for the reply. I'll check out the link you included.

 

I'm also using the existing dtb and initrd.img. I'm just swapping kernels, and modules too I suppose.

 

Thanks,

Dan

  • Author

I am seeing this:

ls -l /sys/bus/spi/devices/
total 0
lrwxrwxrwx 1 root root 0 Feb 22 14:57 spi1.0 -> ../../../devices/platform/soc/1c69000.spi/spi_master/spi1/spi1.0
 

but still no /dev/spi1.0

 

Thanks,

Dan

I am just discovering as yourself on this subject (and as I said above, perfectly happy with my armbian config which does not require /dev/spi* nodes)

 

Do you have module spidev loaded (lsmod | grep spi). If not try "modprobe spidev".

 

As far as I know, this is this module that should create device nodes to give userland access to spi devices. Kernel drivers don't need it.

 

It must be enabled by armbian-config for the bus you need for your device. (The dtb overlay is then added to /boot/armbianEnv.txt).

 

Anyway, I found complaints on RPI forum for the lack of /dev/spi interfaces and this may come for dtb for specific devices.

  • Author

lsmod does have this:

spidev                 24576  0


 

My armbianEnv.txt contains this:

verbosity=7
bootlogo=false
console=both
disp_mode=1920x1080p60
overlay_prefix=sun50i-h5
param_spidev_spi_bus=1
overlays=analog-codec spi-spidev
rootdev=UUID=558c413f-84e6-4d3e-b9df-b683d55ad429
rootfstype=ext4
usbstoragequirks=0x2537:0x1066:u,0x2537:0x1068:u


 

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.