Hello!
I made the following changes to enable SPI0 pins on the expansion header:
diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
index 7d0265531920b..760aaf70a5d53 100644
--- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
@@ -16,6 +16,7 @@ aliases {
serial2 = &main_uart0;
serial3 = &mcu_uart0;
serial5 = &main_uart5;
+ main_spi0 = &main_spi0;
mmc0 = &sdhci0;
mmc1 = &sdhci1;
mmc2 = &sdhci2;
@@ -204,6 +205,14 @@ AM62X_IOPAD(0x1dc, PIN_OUTPUT, 1) /* uart5 txd */
>;
};
+ main_spi0_pins_default: main-spi0-pins-default {
+ pinctrl-single,pins = <
+ AM62X_IOPAD(0x01bc, PIN_OUTPUT, 0) /* (A14) SPI0_CLK */
+ AM62X_IOPAD(0x01c0, PIN_OUTPUT, 0) /* (B13) SPI0_D0 */
+ AM62X_IOPAD(0x01c4, PIN_INPUT, 0) /* (B14) SPI0_D1 */
+ AM62X_IOPAD(0x01b4, PIN_OUTPUT, 0) /* (A13) SPI0_CS0 */
+ >;
+ };
main_i2c0_pins_default: main-i2c0-pins-default {
pinctrl-single,pins = <
@@ -383,6 +392,17 @@ &main_uart5 {
pinctrl-0 = <&main_uart5_pins_default>;
};
+&main_spi0 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&main_spi0_pins_default>;
+ spidev@0 {
+ spi-max-frequency = <10000000>;
+ reg = <0>;
+ compatible = "rohm,dh2228fv";
+ };
+};
+
I then cross compiled the tools/spi/spidev_test application from the kernel tree and am running it this way:
.root@am62xx:~# ./spidev_test -D /dev/spidev1.0 -s 100000 -p aa55aa55
spi mode: 0x0
bits per word: 8
max speed: 100000 Hz (100 kHz)
However, when I probe the clock pin (pin 23 on expansion slot) or the D0 pin (pin 19), I don't see any signals. Is there any other settings that I missed on the above device tree definitions?
Thanks
Ram