Tool/software:
I am having an issue where I am unable to get any activity on the SPI1 bus using U-Boot version 2021.07.
Below is my .dts file for the board (I'm using the OSD3358-SM-RED along with an infineon SLB9670 TPM):
&spi1 { /* MIO6, 9-11 */ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&spi1_pins>; u-boot,dm-spl; u-boot,dm-pre-reloc; num-cs = <1>; slb96: tpm_spi_tis@0 { u-boot,dm-spl; u-boot,dm-pre-reloc; compatible = "tcg,tpm_tis-spi"; reg = <0>; spi-max-frequency = <12000000>; gpio-reset = <&gpio1 12 GPIO_ACTIVE_LOW>; status = "okay"; }; }; &am33xx_pinmux { spi1_pins: pinmux_spi1_pins { pinctrl-single,pins = < AM33XX_IOPAD(0x990, PIN_OUTPUT | MUX_MODE3) /* mcasp0_aclkx.spi1_sclk */ AM33XX_IOPAD(0x994, PIN_INPUT_PULLDOWN | MUX_MODE3) /* mcasp0_fsx.spi1_d0 */ AM33XX_IOPAD(0x998, PIN_OUTPUT | MUX_MODE3) /* mcasp0_axr0.spi1_d1 */ AM33XX_IOPAD(0x99C, PIN_OUTPUT | MUX_MODE3) /* mcasp0_ahclkr.spi1_cs0 */ >; }; };
To start, you might want to double-check your pinmux configuration. It is recommended to use the SysConfig Pinmux tool provided by TI (https://www.ti.com/tool/SYSCONFIG). If I plug in the SPI pins you are wanting to use I get the following configuration (note the difference in pad control register configuration--- this is important to follow for things to work properly, see TRM).
&am33xx_pinmux { myspi1_pins_default: myspi1-default-pins { pinctrl-single,pins = < AM33XX_IOPAD(0x990, PIN_INPUT | MUX_MODE3) /* (A13) mcasp0_aclkx.spi1_sclk */ AM33XX_IOPAD(0x994, PIN_INPUT | MUX_MODE3) /* (B13) mcasp0_fsx.spi1_d0 */ AM33XX_IOPAD(0x998, PIN_INPUT | MUX_MODE3) /* (D12) mcasp0_axr0.spi1_d1 */ AM33XX_IOPAD(0x99c, PIN_INPUT | MUX_MODE3) /* (C12) mcasp0_ahclkr.spi1_cs0 */ >; }; };
Regards, Andreas