Hello;
I am using Colibri iMX6 with the BSP 5.7 and also I am using Multimedia Reference image but I want to configure it.
I am driving some GPIO’s from userspace. And I added my custom PINS to the devicetree.
Actually I can not drive the GPIO2_IO4
I added some patches to kernel dts.
The patches are there
Index: kernel-source/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
===================================================================
--- kernel-source.orig/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
+++ kernel-source/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts
@@ -122,6 +122,7 @@
&pinctrl_gpio_1
&pinctrl_gpio_2
&pinctrl_usbh_oc_1 &pinctrl_usbc_id_1
+ &pinctrl_tester_custom_gpios
>;
};
@@ -181,7 +182,7 @@
};
&weim {
- status = "okay";
+ status = "disabled";
fsl,weim-cs-gpr = <&gpr>;
/* weim memory map: 32MB on CS0, CS1, CS2 and CS3 */
ranges = <0 0 0x08000000 0x02000000
Index: kernel-source/arch/arm/boot/dts/imx6qdl-colibri.dtsi
===================================================================
--- kernel-source.orig/arch/arm/boot/dts/imx6qdl-colibri.dtsi
+++ kernel-source/arch/arm/boot/dts/imx6qdl-colibri.dtsi
@@ -790,7 +790,7 @@
&iomuxc {
pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_csi_gpio_1 &pinctrl_csi_gpio_2>;
+ pinctrl-0 = <&pinctrl_csi_gpio_1 &pinctrl_csi_gpio_2 &pinctrl_tester_custom_gpios &pinctrl_gpio_1 &pinctrl_weim_gpio_1 &pinctrl_weim_gpio_3 &pinctrl_weim_gpio_4 &pinctrl_weim_gpio_6>;
imx6qdl-colibri {
@@ -1350,5 +1350,33 @@
MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0
>;
};
+
+ /* Those pins used as GPIO for tester */
+ pinctrl_tester_custom_gpios: custom_gpios {
+ fsl,pins = <
+ MX6QDL_PAD_CSI0_DAT12__GPIO5_IO30 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT13__GPIO5_IO31 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT14__GPIO6_IO00 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT16__GPIO6_IO02 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT18__GPIO6_IO04 0x1b0b0
+ MX6QDL_PAD_CSI0_DAT19__GPIO6_IO05 0x1b0b0
+ MX6QDL_PAD_EIM_DA12__GPIO3_IO12 0x1b0b0
+ MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x1b0b0
+ MX6QDL_PAD_EIM_DA14__GPIO3_IO14 0x1b0b0
+ MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x1b0b0
+ MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x1b0b0
+ MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x1b0b0
+ MX6QDL_PAD_EIM_DA3__GPIO3_IO03 0x1b0b0
+ MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0x1b0b0
+ MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x1b0b0
+ MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x1b0b0
+ MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b0
+ MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x1b0b0
+ MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x1b0b0
+ MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x1b0b0
+ MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x1b0b0
+ >;
+ };
};
};
The pins that I wanted to drive GPIO2_IO4 at pinctrl_gpio_1 group and also it is written at the iomuxc.
For example for the GPIO2_IO06 i did not do customization because this pin is defaulty defined at the imx6qdl-colibri.dtsi and imx6dl-colibri-eval-v3.dts then I am able to drive this pin.
I couldn’t realize that issue because I can drive another pin with in the same group.
Is there any tricky way to solve it?