[OpenWrt-Devel] Issue with deferred GPIO probing on ar71xx/TL-WDR3600 under kernel 4.4
Heiner Kallweit
hkallweit1 at gmail.com
Sun Apr 24 11:40:26 EDT 2016
Am 24.04.2016 um 16:53 schrieb Heiner Kallweit:
> Under 4.4 I get the following errors which do not occur under 4.1:
>
> [ 0.120197] MIPS: machine is TP-LINK TL-WDR3600/4300/4310
> [ 0.126234] unable to request GPIO18 for external LNA0
> [ 0.132811] unable to request GPIO19 for external LNA1
>
> Reason is that gpio_request_one() in the following calls of
> the board initialization code returns -EPROBE_DEFER now.
>
> ath79_wmac_set_ext_lna_gpio(0, WDR4300_GPIO_EXTERNAL_LNA0);
> ath79_wmac_set_ext_lna_gpio(1, WDR4300_GPIO_EXTERNAL_LNA1);
>
> I'm not sure how to handle the situation that the board
> initialization code wants to access resources which are not
> available yet.
> A driver could defer its loading in this case, but most
> likely we don't have this option for the board initialization
> code.
>
I found that manually registering the ath79 gpio driver from
the board init code fixes the issue.
Symbol ath79_gpio_driver needs to be exported in the ath79 gpio
driver and the following has to be added to the board init code:
extern struct platform_driver ath79_gpio_driver;
platform_driver_register(&ath79_gpio_driver);
However to me this looks more like a hack than a proper solution.
Any better idea?
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list