SPI on Colibri IMX6ULL

Hi @temalab,

I’m glad it works for you now and that you could find a solution!

Please do not hesitate in contacting us again if you need any extra help.

Best regards,
Guilherme

Well, I cloned current upstream kernel, made it with colibri-imx6ull defconfig from downstream kernel, combined your DT changes into single file as below. Verdict: /dev/spidev0.0 is present:

#include "imx6ull-colibri-eval-v3.dts"

/* changes from imx6ull-colibri-nonwifi.dtsi */

&ad7879_ts {
	status = "disabled";
};

&backlight {
	status = "disabled";
};

&i2c1 {
	status = "disabled";
};

&i2c2 {
	status = "disabled";
};

// Perhaps different kernel snapshots, if you need to redefine default
// active iomuxc pingroups, then uncomment below
//&iomuxc {
//	// add pinctrl_gpio5
//	pinctrl-0 = <&pinctrl_gpio1 &pinctrl_gpio2 &pinctrl_gpio3
//		&pinctrl_gpio4 &pinctrl_gpio5 &pinctrl_gpio6 &pinctrl_gpio7>;
//};

// the same here
//&iomuxc_snvs {
//	// add pinctrl_snvs_gpio2
//	pinctrl-0 = <&pinctrl_snvs_gpio1 &pinctrl_snvs_gpio2 &pinctrl_snvs_gpio3>;
//};

&lcdif {
	status = "disabled";
};

&pwm4 {
	status = "disabled";
};

/* changes from imx6ull-colibri-eval-v3.dtsi */

// perhaps again different kernel snapshots. 
// I see debounce property removed in your file
&extcon_usbc_det {
	/delete-property/ debounce;
};

&pxp {
	status = "disabled";
};

&mcp2515 {
	status = "disabled";
};

&spidev0 {
	compatible = "toradex,evalspi";
	reg = <0>;
	spi-max-frequency = <23000000>;
	status = "okay";
};

/* you deleted disabled can1, can2 and atmel_mxt_ts, which makes no effect,
   no need to delete "disabled" nodes */

&usbotg1 {
	extcon = <&extcon_usbc_det>, <&extcon_usbc_det>;
	/delete-property/ vbus-supply; 
};

/* you deleted pinctrl_gpiotouch. Unless it is used by "okay" node, you don't need to remove it.
 Instead you should try to make node, which uses this pinctrl "disabled". But if you still need delete pinctrl,
 then it should be something like below.
 In current DT pinctrl_gpiotouch is not defined, perhaps you wanted to delete pins for ad7879_ts?*/
/* first delete consumer of pinctrl, else DT won't compile*/
/delete-node/ &ad7879_ts;
/* and then delete pinctrl*/
/delete-node/ &pinctrl_snvs_ad7879_int;

Perhaps you fail to compile DT in some way? Here’s compiled dtb. First try using it as is with your older kernel. If it won’t boot, then of course reclone your kernel, it will make you a good job of restoring dtsi and dts files to original state:
imx6ull-colibri-maurizio.dtb (33.3 KB)

1 Like