fw_devlink on will break all snps,dw-apb-gpio users
From: Jisheng Zhang
Date: Wed Oct 14 2020 - 07:12:56 EST
Hi,
If set fw_devlink as on, any consumers of dw apb gpio won't probe.
The related dts looks like:
gpio0: gpio@2400 {
compatible = "snps,dw-apb-gpio";
#address-cells = <1>;
#size-cells = <0>;
porta: gpio-port@0 {
compatible = "snps,dw-apb-gpio-port";
gpio-controller;
#gpio-cells = <2>;
ngpios = <32>;
reg = <0>;
};
};
device_foo {
status = "okay"
...;
reset-gpio = <&porta, 0, GPIO_ACTIVE_HIGH>;
};
If I change the reset-gpio property to use another kind of gpio phandle,
e.g gpio expander, then device_foo can be probed successfully.
The gpio expander dt node looks like:
expander3: gpio@44 {
compatible = "fcs,fxl6408";
pinctrl-names = "default";
pinctrl-0 = <&expander3_pmux>;
reg = <0x44>;
gpio-controller;
#gpio-cells = <2>;
interrupt-parent = <&portb>;
interrupts = <23 IRQ_TYPE_NONE>;
interrupt-controller;
#interrupt-cells = <2>;
};
The common pattern looks like the devlink can't cope with suppliers from
child dt node.
Any suggestions?
Thanks in advance,
Jisheng