Hi Radxa Team and Community,
I am a beginner working with the Radxa NIO-12L (MediaTek MT8395) development board.
My first task is to interface an SPI sensor using the 40-pin expansion header, but I am not sure how to properly enable the SPI interface in Linux.
I have flashed the official Radxa Ubuntu image, and the board is working fine.
However:
-
I do not see any
/dev/spidev*devices -
The documentation does not clearly explain how to enable SPI on NIO-12L
-
I see that the header pins include multiplexed SPIM1_CSB / CLK / MO / MI, but I don’t know how to activate them in Linux
I would like to know the correct procedure:
-
Does SPI require a Device Tree Overlay (DTBO) on NIO-12L?
-
If yes, is there an official SPI overlay provided by Radxa?
-
Or do I need to create a custom DTBO that enables a
spidevnode?
-
-
How do I add a custom DTBO to the NIO-12L boot process?
-
Should it be added to the
u-boot-initial-envlist_dtbovariable? -
Do I need to push the overlay using
genio-flash board-assets?
-
-
Which SPI controller corresponds to the 40-pin header?
- Is it SPI0 or SPI1 in the MT8395 device tree?
-
After enabling SPI, what should
/devshow?/dev/spidev0.0or/dev/spidev1.0?
-
Is there an official example (DTS/DTBO or C/C++ userspace code) to test SPI communication on NIO-12L?
My goal
I simply want to connect an SPI sensor and access it from userspace using /dev/spidevX.Y.
Any official guidance, DT overlays, or example configurations would be extremely helpful for beginners like me.
Thank you!