I’m running ArchlinuxArm on a radxa, as such I don’t use a boot.scr
u-boot script, but an extlinux.conf
file. I’m aware that I can load device-tree overlays with the FDTOVERLAYS
line, which works fine ; I already use it for I2C.
Now I need to run an SPI screen. The meson-g12a-spi-spidev
overlay has a mandatory argument, param_spidev_spi_bus
. Is there a syntax to add it in extlinux.conf
?
Besides, in the hope to have a parameter-free overlay, I tried building an user overlay with the following content :
/dts-v1/;
/plugin/;
&spicc1 {
#address-cells = <1>;
#size-cells = <0>;
spidev@0 {
compatible = "spidev";
status = "okay";
spi-max-frequency = <8000000>;
reg = <0>;
};
};
I compiled it with
sudo dtc -@ -I dts -O dtb -o spidev-1.dtbo spidev-1.dts
And added it to /boot/extlinux/extlinux.conf
that now reads :
LABEL an Arch Arm
KERNEL /boot/Image
FDT /boot/dtbs/amlogic/meson-g12a-radxa-zero.dtb
FDTOVERLAYS overlay-user/spidev-1.dtbo overlay-user/i2c-3.dtbo
APPEND initrd=/boot/initramfs-linux.img root=LABEL=anArchArm rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 loglevel=5
But there’s still no file named /dev/spidev*
in the system. I have logs from u-boot showing it loaded all bootfiles successfuly :
Found /boot/extlinux/extlinux.conf
Retrieving file: /boot/extlinux/extlinux.conf
1: an Arch Arm
Retrieving file: /boot/initramfs-linux.img
Retrieving file: /boot/Image
append: initrd=/boot/initramfs-linux.img root=LABEL=anArchArm rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 loglevel=5
Retrieving file: /boot/dtbs/amlogic/meson-g12a-radxa-zero.dtb
Retrieving file: /boot/overlay-user/spidev-1.dtbo
Retrieving file: /boot/overlay-user/i2c-3.dtbo
Moving Image from 0x8080000 to 0x8200000, end=aa20000
## Flattened Device Tree blob at 08008000
Booting using the fdt blob at 0x8008000
Loading Ramdisk to 3f8ff000, end 3fffffae ... OK
Loading Device Tree to 000000003f8e8000, end 000000003f8fefff ... OK
Starting kernel ...
[ 0.448653] SPI driver max3421-hcd has no spi_device_id for maxim,max3421
[ 1.386667] dwc2 ff400000.usb: supply vusb_d not found, using dummy regulator
[ 1.388283] dwc2 ff400000.usb: supply vusb_a not found, using dummy regulator
[ 1.569981] meson-drm ff900000.vpu: Couldnt bind all components
[ 3.204832] using random self ethernet address
[ 3.204849] using random host ethernet address
[ 3.210777] using random self ethernet address
[ 3.221832] using random host ethernet address
[ 3.310533] systemd-journald[276]: File /var/log/journal/43b6ee3e3a1e4b63be769a8899ad9256/system.journal corrupted or uncleanly shut down, renaming and replacing.
[ 4.267421] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 4.778369] debugfs: Directory 'ff800280.cec' with parent 'regmap' already present!
[ 4.921118] meson_vdec: module is from the staging directory, the quality is unknown, you have been warned.
[ 5.007951] panfrost ffe40000.gpu: error -ENODEV: dev_pm_opp_set_regulators: no regulator (mali) found
[ 5.104684] brcmfmac mmc2:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.radxa,zero.bin failed with error -2
[ 5.123829] brcmfmac mmc2:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.radxa,zero.txt failed with error -2
[ 5.277992] hci_uart_bcm serial0-0: supply vbat not found, using dummy regulator
[ 5.309954] hci_uart_bcm serial0-0: supply vddio not found, using dummy regulator
[ 5.384331] kauditd_printk_skb: 24 callbacks suppressed
[ 5.678762] Bluetooth: hci0: BCM: firmware Patch file not found, tried:
[ 5.678776] Bluetooth: hci0: BCM: 'brcm/BCM4345C0.radxa,zero.hcd'
[ 5.678779] Bluetooth: hci0: BCM: 'brcm/BCM4345C0.hcd'
[ 5.678783] Bluetooth: hci0: BCM: 'brcm/BCM.radxa,zero.hcd'
[ 5.678785] Bluetooth: hci0: BCM: 'brcm/BCM.hcd'