![Linus Walleij](/assets/img/avatar_default.png)
Due to commit 88f718e3fa
"ARM: pxa: delete the custom GPIO header" some drivers fail
compilation, for example like this:
In file included from sound/soc/pxa/spitz.c:28:0:
sound/soc/pxa/spitz.c: In function ‘spitz_ext_control’:
arch/arm/mach-pxa/include/mach/spitz.h:111:30: error:
‘PXA_NR_BUILTIN_GPIO’ undeclared (first use in this function)
#define SPITZ_SCP_GPIO_BASE (PXA_NR_BUILTIN_GPIO)
(etc.)
This is caused by implicit inclusion of <mach/irqs.h> from
various board-specific headers under <mach/*> in the PXA
platform. So we take a sweep over these, and for every such
header that uses PXA_NR_BUILTIN_GPIO or PXA_GPIO_TO_IRQ()
we explicitly #include "irqs.h" so that we satisfy the
dependency in the board include file alone.
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Cc: stable@vger.kernel.org # v3.13+
Signed-off-by: Kevin Hilman <khilman@linaro.org>
95 lines
3.2 KiB
C
95 lines
3.2 KiB
C
/*
|
|
* arch/arm/mach-pxa/include/mach/poodle.h
|
|
*
|
|
* May be copied or modified under the terms of the GNU General Public
|
|
* License. See linux/COPYING for more information.
|
|
*
|
|
* Based on:
|
|
* arch/arm/mach-sa1100/include/mach/collie.h
|
|
*
|
|
* ChangeLog:
|
|
* 04-06-2001 Lineo Japan, Inc.
|
|
* 04-16-2001 SHARP Corporation
|
|
* Update to 2.6 John Lenz
|
|
*/
|
|
#ifndef __ASM_ARCH_POODLE_H
|
|
#define __ASM_ARCH_POODLE_H 1
|
|
|
|
#include "irqs.h" /* PXA_GPIO_TO_IRQ */
|
|
|
|
/*
|
|
* GPIOs
|
|
*/
|
|
/* PXA GPIOs */
|
|
#define POODLE_GPIO_ON_KEY (0)
|
|
#define POODLE_GPIO_AC_IN (1)
|
|
#define POODLE_GPIO_CO 16
|
|
#define POODLE_GPIO_TP_INT (5)
|
|
#define POODLE_GPIO_TP_CS (24)
|
|
#define POODLE_GPIO_WAKEUP (11) /* change battery */
|
|
#define POODLE_GPIO_GA_INT (10)
|
|
#define POODLE_GPIO_IR_ON (22)
|
|
#define POODLE_GPIO_HP_IN (4)
|
|
#define POODLE_GPIO_CF_IRQ (17)
|
|
#define POODLE_GPIO_CF_CD (14)
|
|
#define POODLE_GPIO_CF_STSCHG (14)
|
|
#define POODLE_GPIO_SD_PWR (33)
|
|
#define POODLE_GPIO_SD_PWR1 (3)
|
|
#define POODLE_GPIO_nSD_CLK (6)
|
|
#define POODLE_GPIO_nSD_WP (7)
|
|
#define POODLE_GPIO_nSD_INT (8)
|
|
#define POODLE_GPIO_nSD_DETECT (9)
|
|
#define POODLE_GPIO_MAIN_BAT_LOW (13)
|
|
#define POODLE_GPIO_BAT_COVER (13)
|
|
#define POODLE_GPIO_USB_PULLUP (20)
|
|
#define POODLE_GPIO_ADC_TEMP_ON (21)
|
|
#define POODLE_GPIO_BYPASS_ON (36)
|
|
#define POODLE_GPIO_CHRG_ON (38)
|
|
#define POODLE_GPIO_CHRG_FULL (16)
|
|
#define POODLE_GPIO_DISCHARGE_ON (42) /* Enable battery discharge */
|
|
|
|
/* PXA GPIOs */
|
|
#define POODLE_IRQ_GPIO_ON_KEY PXA_GPIO_TO_IRQ(0)
|
|
#define POODLE_IRQ_GPIO_AC_IN PXA_GPIO_TO_IRQ(1)
|
|
#define POODLE_IRQ_GPIO_HP_IN PXA_GPIO_TO_IRQ(4)
|
|
#define POODLE_IRQ_GPIO_CO PXA_GPIO_TO_IRQ(16)
|
|
#define POODLE_IRQ_GPIO_TP_INT PXA_GPIO_TO_IRQ(5)
|
|
#define POODLE_IRQ_GPIO_WAKEUP PXA_GPIO_TO_IRQ(11)
|
|
#define POODLE_IRQ_GPIO_GA_INT PXA_GPIO_TO_IRQ(10)
|
|
#define POODLE_IRQ_GPIO_CF_IRQ PXA_GPIO_TO_IRQ(17)
|
|
#define POODLE_IRQ_GPIO_CF_CD PXA_GPIO_TO_IRQ(14)
|
|
#define POODLE_IRQ_GPIO_nSD_INT PXA_GPIO_TO_IRQ(8)
|
|
#define POODLE_IRQ_GPIO_nSD_DETECT PXA_GPIO_TO_IRQ(9)
|
|
#define POODLE_IRQ_GPIO_MAIN_BAT_LOW PXA_GPIO_TO_IRQ(13)
|
|
|
|
/* SCOOP GPIOs */
|
|
#define POODLE_SCOOP_CHARGE_ON SCOOP_GPCR_PA11
|
|
#define POODLE_SCOOP_CP401 SCOOP_GPCR_PA13
|
|
#define POODLE_SCOOP_VPEN SCOOP_GPCR_PA18
|
|
#define POODLE_SCOOP_L_PCLK SCOOP_GPCR_PA20
|
|
#define POODLE_SCOOP_L_LCLK SCOOP_GPCR_PA21
|
|
#define POODLE_SCOOP_HS_OUT SCOOP_GPCR_PA22
|
|
|
|
#define POODLE_SCOOP_IO_DIR ( POODLE_SCOOP_VPEN | POODLE_SCOOP_HS_OUT )
|
|
#define POODLE_SCOOP_IO_OUT ( 0 )
|
|
|
|
#define POODLE_SCOOP_GPIO_BASE (PXA_NR_BUILTIN_GPIO)
|
|
#define POODLE_GPIO_CHARGE_ON (POODLE_SCOOP_GPIO_BASE + 0)
|
|
#define POODLE_GPIO_CP401 (POODLE_SCOOP_GPIO_BASE + 2)
|
|
#define POODLE_GPIO_VPEN (POODLE_SCOOP_GPIO_BASE + 7)
|
|
#define POODLE_GPIO_L_PCLK (POODLE_SCOOP_GPIO_BASE + 9)
|
|
#define POODLE_GPIO_L_LCLK (POODLE_SCOOP_GPIO_BASE + 10)
|
|
#define POODLE_GPIO_HS_OUT (POODLE_SCOOP_GPIO_BASE + 11)
|
|
|
|
#define POODLE_LOCOMO_GPIO_AMP_ON LOCOMO_GPIO(8)
|
|
#define POODLE_LOCOMO_GPIO_MUTE_L LOCOMO_GPIO(10)
|
|
#define POODLE_LOCOMO_GPIO_MUTE_R LOCOMO_GPIO(11)
|
|
#define POODLE_LOCOMO_GPIO_232VCC_ON LOCOMO_GPIO(12)
|
|
#define POODLE_LOCOMO_GPIO_JK_B LOCOMO_GPIO(13)
|
|
|
|
#define POODLE_NR_IRQS (IRQ_BOARD_START + 4) /* 4 for LoCoMo */
|
|
|
|
extern struct platform_device poodle_locomo_device;
|
|
|
|
#endif /* __ASM_ARCH_POODLE_H */
|