Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  *  Author: Nicolas Pitre
0004  *  Created:    Jun 15, 2001
0005  *  Copyright:  MontaVista Software Inc.
0006  */
0007 
0008 #include "irqs.h"
0009 
0010 #define LUBBOCK_ETH_PHYS    PXA_CS3_PHYS
0011 
0012 #define LUBBOCK_FPGA_PHYS   PXA_CS2_PHYS
0013 #define LUBBOCK_FPGA_VIRT   (0xf0000000)
0014 #define LUB_P2V(x)      ((x) - LUBBOCK_FPGA_PHYS + LUBBOCK_FPGA_VIRT)
0015 #define LUB_V2P(x)      ((x) - LUBBOCK_FPGA_VIRT + LUBBOCK_FPGA_PHYS)
0016 
0017 #ifndef __ASSEMBLY__
0018 #  define __LUB_REG(x)      (*((volatile unsigned long *)LUB_P2V(x)))
0019 #else
0020 #  define __LUB_REG(x)      LUB_P2V(x)
0021 #endif
0022 
0023 /* FPGA register virtual addresses */
0024 #define LUB_WHOAMI      __LUB_REG(LUBBOCK_FPGA_PHYS + 0x000)
0025 #define LUB_DISC_BLNK_LED   __LUB_REG(LUBBOCK_FPGA_PHYS + 0x040)
0026 #define LUB_CONF_SWITCHES   __LUB_REG(LUBBOCK_FPGA_PHYS + 0x050)
0027 #define LUB_USER_SWITCHES   __LUB_REG(LUBBOCK_FPGA_PHYS + 0x060)
0028 #define LUB_MISC_WR     __LUB_REG(LUBBOCK_FPGA_PHYS + 0x080)
0029 #define LUB_MISC_RD     __LUB_REG(LUBBOCK_FPGA_PHYS + 0x090)
0030 #define LUB_IRQ_MASK_EN     __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0c0)
0031 #define LUB_IRQ_SET_CLR     __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0d0)
0032 #define LUB_GP          __LUB_REG(LUBBOCK_FPGA_PHYS + 0x100)
0033 
0034 /* Board specific IRQs */
0035 #define LUBBOCK_NR_IRQS     IRQ_BOARD_START
0036 
0037 #define LUBBOCK_IRQ(x)      (LUBBOCK_NR_IRQS + (x))
0038 #define LUBBOCK_SD_IRQ      LUBBOCK_IRQ(0)
0039 #define LUBBOCK_SA1111_IRQ  LUBBOCK_IRQ(1)
0040 #define LUBBOCK_USB_IRQ     LUBBOCK_IRQ(2)  /* usb connect */
0041 #define LUBBOCK_ETH_IRQ     LUBBOCK_IRQ(3)
0042 #define LUBBOCK_UCB1400_IRQ LUBBOCK_IRQ(4)
0043 #define LUBBOCK_BB_IRQ      LUBBOCK_IRQ(5)
0044 #define LUBBOCK_USB_DISC_IRQ    LUBBOCK_IRQ(6)  /* usb disconnect */
0045 #define LUBBOCK_LAST_IRQ    LUBBOCK_IRQ(6)
0046 
0047 #define LUBBOCK_SA1111_IRQ_BASE (LUBBOCK_NR_IRQS + 32)