Hi @Matte
You need to use the num-cs
property and not the fsl,spi-num-chipselects
since iMX6ULL is using a different spi driver ( drivers/spi/spi-imx.c
) as mentioned in ( arch/arm/boot/dts/imx6ul.dtsi
).
With the patch below you should be able to get the spidev devices you want. The colibri-spi-csx are symbolic links for the spidev0.x devices.
Best regards,
Jaski
diff --git a/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dtsi b/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dtsi
index 96f4438a3569..20084ec7ae0f 100644
--- a/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dtsi
+++ b/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dtsi
@@ -94,15 +94,39 @@
spi-max-frequency = <10000000>;
vdd-supply = <®_3v3>;
xceiver-supply = <®_5v0>;
- status = "okay";
- };
-
- spidev0: spidev@0 {
- compatible = "toradex,evalspi";
- reg = <0>;
- spi-max-frequency = <23000000>;
status = "disabled";
};
+
+
+ spidev0: spidev@0 {
+ compatible = "toradex,evalspi";
+ reg = <0>;
+ spi-max-frequency = <1000000>;
+ status = "okay";
+ };
+
+
+ spidev1: spidev@1 {
+ compatible = "toradex,evalspi";
+ reg = <1>;
+ spi-max-frequency = <1000000>;
+ status = "okay";
+ };
+
+
+ spidev2: spidev@2 {
+ compatible = "toradex,evalspi";
+ reg = <2>;
+ spi-max-frequency = <1000000>;
+ status = "okay";
+ };
+
+ spidev3: spidev@3 {
+ compatible = "toradex,evalspi";
+ reg = <3>;
+ spi-max-frequency = <1000000>;
+ status = "okay";
+ };
};
&can1 {
@@ -298,7 +322,7 @@
};
&uart2 {
- status = "okay";
+ status = "disabled";
};
&uart5 {
diff --git a/arch/arm/boot/dts/imx6ull-colibri.dtsi b/arch/arm/boot/dts/imx6ull-colibri.dtsi
index 10d3605e0ac4..3ef13ae776f7 100644
--- a/arch/arm/boot/dts/imx6ull-colibri.dtsi
+++ b/arch/arm/boot/dts/imx6ull-colibri.dtsi
@@ -106,7 +106,11 @@
/* Colibri SPI */
&ecspi1 {
- cs-gpios = <&gpio3 26 GPIO_ACTIVE_HIGH>;
+ fsl,spi-num-chipselects = <4>;
+ cs-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>,
+ <&gpio1 21 GPIO_ACTIVE_LOW>,
+ <&gpio1 22 GPIO_ACTIVE_LOW>,
+ <&gpio1 23 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>;
};
@@ -319,7 +323,10 @@
pinctrl_ecspi1_cs: ecspi1-cs-grp {
fsl,pins = <
- MX6UL_PAD_LCD_DATA21__GPIO3_IO26 0x70a0 /* SODIMM 86 */
+ MX6UL_PAD_UART2_CTS_B__GPIO1_IO22 0x70a0 /* SODIMM 32 */
+ MX6UL_PAD_UART2_RTS_B__GPIO1_IO23 0x70a0 /* SODIMM 34 */
+ MX6UL_PAD_UART2_RX_DATA__GPIO1_IO21 0x70a0 /* SODIMM 38 */
+ MX6UL_PAD_UART2_TX_DATA__GPIO1_IO20 0x70a0 /* SODIMM 36 */
>;
};