From mboxrd@z Thu Jan 1 00:00:00 1970 From: robert.jarzmik@free.fr (Robert Jarzmik) Date: Sun, 10 Jul 2016 09:50:40 +0200 Subject: [PATCH] ARM: pxa: remove devicetree boards from pxa_defconfig In-Reply-To: <1464985766-20754-1-git-send-email-robert.jarzmik@free.fr> (Robert Jarzmik's message of "Fri, 3 Jun 2016 22:29:26 +0200") References: <1464985766-20754-1-git-send-email-robert.jarzmik@free.fr> Message-ID: <877fcu3p9r.fsf@belgarion.home> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Robert Jarzmik writes: > If both legacy and device-tree machines are mixed in the same defconfig, > the legacy boards don't boot up anymore with gpio request deferral > errors. > > This is seen when attempting to run akita, borzoi, spitz, terrier, or > tosa in qemu with pxa_defconfig. > > The real reason behind is that gpio handling for pxa in its current > state cannot be built for _both_ a devicetree machine (ie. pxa-dt.c) and > a non devicetree machine (ie. corgi, tosa, ...). > > This is turn is because for devicetree a pinctrl is enforced for the > machine, and a pinctrl driver is required. If it's not available, > pxa_gpio_request() fails on pinctrl_request_gpio() and returns > -EPROBE_DEFER. It was introduced by commit f806dac5938b > ("ARM: pxa: activate pinctrl for device-tree machines"). > > Now the true chicken and egg problem is than machine files, > ie. arch/arm/mach-pxa/xxx.c are using gpio before the drivers are > probed, in the init_machine() function, and that's why pinctrl/gpio for > legacy machine files is a bit difficult. > > As for now, to keep the compilation coverage and testing of legacy > machines, this patch removes the 2 devicetree machines from > pxa_defconfig. > > Reported-by: Guenter Roeck > Signed-off-by: Robert Jarzmik > Tested-by: Guenter Roeck Applied to pxa/for-next, with a huge delay. Cheers. -- Robert