I am trying to enable additional UARTs on Colibri iMX7D but I have not been successful so far.
I have created two new DTS files (one for carrier board itself, the other one for iMX7D module in this carrier board) in the same manner as DTS files for evaluation board are done.
imx7-colibri-janom-imp-rev0.dtsi
/ {
chosen {
bootargs = "console=ttymxc0,115200";
};
};
&iomuxc {
pinctrl-names = "default";
imx7d-colibri {
pinctrl_uart5: uart5grp {
fsl,pins = <
MX7D_PAD_SAI2_TX_BCLK__UART4_DTE_RX 0x79
MX7D_PAD_SAI2_TX_SYNC__UART4_DTE_TX 0x79
>;
};
};
};
&uart1 {
pinctrl-0 = <&pinctrl_uart1>;
/delete-property/ fsl,uart-has-rtscts;
status = "okay";
};
&uart2 {
status = "okay";
};
&uart3 {
status = "okay";
};
&uart5 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5>;
fsl,dte-mode;
status = "okay";
}
imx7d-colibri-janom-imp-rev0.dts
/dts-v1/;
#include "imx7d-colibri.dtsi"
#include "imx7-colibri-janom-imp-rev0.dtsi"
/ {
model = "Toradex Colibri iMX7D on Janom IMP rev.0";
compatible = "egmedical,colibri_imx7d-janom_imp", "toradex,colibri_imx7d", "fsl,imx7d";
};
I believe that the syntax is correct, but Device Tree Compiler says otherwise. I receive following error when trying to compile DTS file:
Error: /home/yocto/colibri-imx7/oe-core/build/tmp-glibc/work-shared/colibri-imx7/kernel-source/arch/arm/boot/dts/imx7d-colibri-janom-imp-rev0.dts:5.1-2 syntax error
FATAL ERROR: Unable to parse input tree
scripts/Makefile.lib:293: recipe for target 'arch/arm/boot/dts/imx7d-colibri-janom-imp-rev0.dtb' failed
make[3]: *** [arch/arm/boot/dts/imx7d-colibri-janom-imp-rev0.dtb] Error 1
arch/arm/Makefile:322: recipe for target 'imx7d-colibri-janom-imp-rev0.dtb' failed
make[2]: *** [imx7d-colibri-janom-imp-rev0.dtb] Error 2
Makefile:146: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
Makefile:24: recipe for target '__sub-make' failed
make: *** [__sub-make] Error 2
WARNING: exit code 1 from a shell command.