Hello,
I’m working on a bring up of a custom carrier board with the Colibri iMX6ULL module and I’m having trouble enabling the GPIO for specific pins. I managed to compile the device tree and load the board with my custom device tree. I suspect that I’m configuring the device tree wrong but I’m not sure what to do. There will be several pins that I need to change, but for now, I’m just trying to get GPIO3_IO03 and GPIO3_IO11 to work.
The following is my current device tree:
/dts-v1/;
#include "imx6ull-colibri-nonwifi.dtsi"
#include "imx6ull-colibri-eval-v3.dtsi"
/ {
model = "Toradex Colibri iMX6ULL 256MB on Colibri Evaluation Board V3 - My Version";
compatible = "toradex,colibri_imx6ull-eval", "fsl,imx6ull";
gpio_additional {
pinctrl-name = "default";
pinctrl-0 = <&pinctrl_additionalgpio>;
status = "okay";
};
};
&lcdif {
status = "disabled";
};
&pinctrl_lcdif_ctrl {
status = "disabled";
};
&iomuxc {
pinctrl-names = "default";
imx6ull-eval-v3 {
pinctrl_additionalgpio: additionalgpios {
fsl,pins = <
MX6UL_PAD_LCD_VSYNC__GPIO3_IO03 0x5
MX6UL_PAD_LCD_DATA06__GPIO3_IO11 0x5
>;
};
};
};
I test the pins with the following Linux commands (Only GPIO03_IO3 here):
echo 67 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio67/direction
echo 1 > /sys/class/gpio/gpio67/value
When I call:
cat /sys/kernel/debug/gpio
I can see pin 67 there configured as an output with a ‘high’ state, but when measuring the pin, there is no change.
I’ve verified the Linux commands work fine for pin 118 and 120 on the Iris board when following the ‘Getting started’ tutorial. It just doesn’t work with these particular pins on my custom carrier board. (The physical pin connection is fine, I’ve tested.)
I’ve read the ‘device-tree-customization’ web page several times but can’t manage to fully wrap my head around how to set up the device tree for setting those pins to Alt5 mode (GPIO).
I’m new to using device-trees; I’ve searched the forums for help, read the relevant reference manual sections and watched the tutorial videos but still can’t manage to figure out what to do. I’ve been stuck with this problem for a few days now.
Any help would be appreciated. Thanks.