I am currently using IMX8qxp with linux kernel 4.14.62-imx-4.14.62 and I am having trouble suspending the board
it causes a kernel panic
Synchronous External Abort: synchronous external abort (0x96000210) at 0xffff00000804500c
The issue is caused by the gpio driver, specifically the suspend function "PC is at mxc_gpio_noirq_suspend+0x94/0x178" digging further into this revealed that this issue occur when trying to read registers values to save them before suspending and that this happen with one gpio only, disabling this node from the tree resolve the problem, but I am looking to find a solution that wouldn't require disabling the node.
Here is the offending node
gpio0_mipi_csi0: gpio@58222000 {
compatible = "fsl,imx8qm-gpio", "fsl,imx35-gpio";
reg = <0x0 0x58222000 0x0 0x1000>;
interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
interrupt-parent = <&irqsteer_csi>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
power-domains = <&pd_mipi_csi>;
};
I double checked from the reference manual that the node address is right and that the node is actually a gpio, so I am clueless as to why this issue could be happening.