forked from Minki/linux
9928422fef
After commit88f718e3fa
"ARM: pxa: delete the custom GPIO header" a compilation error was introduced in the PXA25x gadget driver. An attempt to fix the problem was made in commitb144e4ab1e
"usb: gadget: fix pxa25x compilation problems" by explictly stating the driver needs the <mach/hardware.h> header, which solved the compilation for a few boards, such as the pxa255-idp and its defconfig. However the Lubbock board has this special clause in drivers/usb/gadget/pxa25x_udc.c: This include file has an implicit dependency on <mach/irqs.h> having been included before <mach/lubbock.h> was included. Before commit88f718e3fa
"ARM: pxa: delete the custom GPIO header" this implicit dependency for the pxa25x_udc compile on the Lubbock was satisfied by <linux/gpio.h> implicitly including <mach/gpio.h> which was in turn including <mach/irqs.h>, apart from the earlier added <mach/hardware.h>. Fix this by having the PXA25x <mach/lubbock.h> explicitly include <mach/irqs.h>. Reported-by: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Greg Kroah-Hartmann <gregkh@linuxfoundation.org> Cc: Felipe Balbi <balbi@ti.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Haojian Zhuang <haojian.zhuang@gmail.com> Signed-off-by: Olof Johansson <olof@lixom.net>
56 lines
1.9 KiB
C
56 lines
1.9 KiB
C
/*
|
|
* arch/arm/mach-pxa/include/mach/lubbock.h
|
|
*
|
|
* Author: Nicolas Pitre
|
|
* Created: Jun 15, 2001
|
|
* Copyright: MontaVista Software Inc.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
|
|
#include <mach/irqs.h>
|
|
|
|
#define LUBBOCK_ETH_PHYS PXA_CS3_PHYS
|
|
|
|
#define LUBBOCK_FPGA_PHYS PXA_CS2_PHYS
|
|
#define LUBBOCK_FPGA_VIRT (0xf0000000)
|
|
#define LUB_P2V(x) ((x) - LUBBOCK_FPGA_PHYS + LUBBOCK_FPGA_VIRT)
|
|
#define LUB_V2P(x) ((x) - LUBBOCK_FPGA_VIRT + LUBBOCK_FPGA_PHYS)
|
|
|
|
#ifndef __ASSEMBLY__
|
|
# define __LUB_REG(x) (*((volatile unsigned long *)LUB_P2V(x)))
|
|
#else
|
|
# define __LUB_REG(x) LUB_P2V(x)
|
|
#endif
|
|
|
|
/* FPGA register virtual addresses */
|
|
#define LUB_WHOAMI __LUB_REG(LUBBOCK_FPGA_PHYS + 0x000)
|
|
#define LUB_DISC_BLNK_LED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x040)
|
|
#define LUB_CONF_SWITCHES __LUB_REG(LUBBOCK_FPGA_PHYS + 0x050)
|
|
#define LUB_USER_SWITCHES __LUB_REG(LUBBOCK_FPGA_PHYS + 0x060)
|
|
#define LUB_MISC_WR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x080)
|
|
#define LUB_MISC_RD __LUB_REG(LUBBOCK_FPGA_PHYS + 0x090)
|
|
#define LUB_IRQ_MASK_EN __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0c0)
|
|
#define LUB_IRQ_SET_CLR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0d0)
|
|
#define LUB_GP __LUB_REG(LUBBOCK_FPGA_PHYS + 0x100)
|
|
|
|
/* Board specific IRQs */
|
|
#define LUBBOCK_IRQ(x) (IRQ_BOARD_START + (x))
|
|
#define LUBBOCK_SD_IRQ LUBBOCK_IRQ(0)
|
|
#define LUBBOCK_SA1111_IRQ LUBBOCK_IRQ(1)
|
|
#define LUBBOCK_USB_IRQ LUBBOCK_IRQ(2) /* usb connect */
|
|
#define LUBBOCK_ETH_IRQ LUBBOCK_IRQ(3)
|
|
#define LUBBOCK_UCB1400_IRQ LUBBOCK_IRQ(4)
|
|
#define LUBBOCK_BB_IRQ LUBBOCK_IRQ(5)
|
|
#define LUBBOCK_USB_DISC_IRQ LUBBOCK_IRQ(6) /* usb disconnect */
|
|
#define LUBBOCK_LAST_IRQ LUBBOCK_IRQ(6)
|
|
|
|
#define LUBBOCK_SA1111_IRQ_BASE (IRQ_BOARD_START + 16)
|
|
#define LUBBOCK_NR_IRQS (IRQ_BOARD_START + 16 + 55)
|
|
|
|
#ifndef __ASSEMBLY__
|
|
extern void lubbock_set_misc_wr(unsigned int mask, unsigned int set);
|
|
#endif
|