1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Author: Nicolas Pitre 4 * Created: Jun 15, 2001 5 * Copyright: MontaVista Software Inc. 6 */ 7 8 #include "irqs.h" 9 10 #define LUBBOCK_ETH_PHYS PXA_CS3_PHYS 11 12 #define LUBBOCK_FPGA_PHYS PXA_CS2_PHYS 13 #define LUBBOCK_FPGA_VIRT (0xf0000000) 14 #define LUB_P2V(x) ((x) - LUBBOCK_FPGA_PHYS + LUBBOCK_FPGA_VIRT) 15 #define LUB_V2P(x) ((x) - LUBBOCK_FPGA_VIRT + LUBBOCK_FPGA_PHYS) 16 17 #ifndef __ASSEMBLY__ 18 # define __LUB_REG(x) (*((volatile unsigned long *)LUB_P2V(x))) 19 #else 20 # define __LUB_REG(x) LUB_P2V(x) 21 #endif 22 23 /* FPGA register virtual addresses */ 24 #define LUB_WHOAMI __LUB_REG(LUBBOCK_FPGA_PHYS + 0x000) 25 #define LUB_DISC_BLNK_LED __LUB_REG(LUBBOCK_FPGA_PHYS + 0x040) 26 #define LUB_CONF_SWITCHES __LUB_REG(LUBBOCK_FPGA_PHYS + 0x050) 27 #define LUB_USER_SWITCHES __LUB_REG(LUBBOCK_FPGA_PHYS + 0x060) 28 #define LUB_MISC_WR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x080) 29 #define LUB_MISC_RD __LUB_REG(LUBBOCK_FPGA_PHYS + 0x090) 30 #define LUB_IRQ_MASK_EN __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0c0) 31 #define LUB_IRQ_SET_CLR __LUB_REG(LUBBOCK_FPGA_PHYS + 0x0d0) 32 #define LUB_GP __LUB_REG(LUBBOCK_FPGA_PHYS + 0x100) 33 34 /* Board specific IRQs */ 35 #define LUBBOCK_NR_IRQS IRQ_BOARD_START 36 37 #define LUBBOCK_IRQ(x) (LUBBOCK_NR_IRQS + (x)) 38 #define LUBBOCK_SD_IRQ LUBBOCK_IRQ(0) 39 #define LUBBOCK_SA1111_IRQ LUBBOCK_IRQ(1) 40 #define LUBBOCK_USB_IRQ LUBBOCK_IRQ(2) /* usb connect */ 41 #define LUBBOCK_ETH_IRQ LUBBOCK_IRQ(3) 42 #define LUBBOCK_UCB1400_IRQ LUBBOCK_IRQ(4) 43 #define LUBBOCK_BB_IRQ LUBBOCK_IRQ(5) 44 #define LUBBOCK_USB_DISC_IRQ LUBBOCK_IRQ(6) /* usb disconnect */ 45 #define LUBBOCK_LAST_IRQ LUBBOCK_IRQ(6) 46 47 #define LUBBOCK_SA1111_IRQ_BASE (LUBBOCK_NR_IRQS + 32) 48