Файловый менеджер - Редактировать - /var/www/html/mach-pxa.zip
Ðазад
PK ! �3h� � include/mach/addr-map.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 */ #ifndef __ASM_MACH_ADDR_MAP_H #define __ASM_MACH_ADDR_MAP_H /* * Chip Selects */ #define PXA_CS0_PHYS 0x00000000 #define PXA_CS1_PHYS 0x04000000 #define PXA_CS2_PHYS 0x08000000 #define PXA_CS3_PHYS 0x0C000000 #define PXA_CS4_PHYS 0x10000000 #define PXA_CS5_PHYS 0x14000000 #define PXA300_CS0_PHYS 0x00000000 /* PXA300/PXA310 _only_ */ #define PXA300_CS1_PHYS 0x30000000 /* PXA300/PXA310 _only_ */ #define PXA3xx_CS2_PHYS 0x10000000 #define PXA3xx_CS3_PHYS 0x14000000 /* * Peripheral Bus */ #define PERIPH_PHYS 0x40000000 #define PERIPH_VIRT IOMEM(0xf2000000) #define PERIPH_SIZE 0x02000000 /* * Static Memory Controller (w/ SDRAM controls on PXA25x/PXA27x) */ #define PXA2XX_SMEMC_PHYS 0x48000000 #define PXA3XX_SMEMC_PHYS 0x4a000000 #define SMEMC_VIRT IOMEM(0xf6000000) #define SMEMC_SIZE 0x00100000 /* * Dynamic Memory Controller (only on PXA3xx) */ #define DMEMC_PHYS 0x48100000 #define DMEMC_VIRT IOMEM(0xf6100000) #define DMEMC_SIZE 0x00100000 /* * Reserved space for low level debug virtual addresses within * 0xf6200000..0xf6201000 */ /* * DFI Bus for NAND, PXA3xx only */ #define NAND_PHYS 0x43100000 #define NAND_VIRT IOMEM(0xf6300000) #define NAND_SIZE 0x00100000 /* * Internal Memory Controller (PXA27x and later) */ #define IMEMC_PHYS 0x58000000 #define IMEMC_VIRT IOMEM(0xfe000000) #define IMEMC_SIZE 0x00100000 #endif /* __ASM_MACH_ADDR_MAP_H */ PK ! c}�k k include/mach/palmld.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIOs and interrupts for Palm LifeDrive Handheld Computer * * Authors: Alex Osborne <ato@meshy.org> * Marek Vasut <marek.vasut@gmail.com> */ #ifndef _INCLUDE_PALMLD_H_ #define _INCLUDE_PALMLD_H_ #include "irqs.h" /* PXA_GPIO_TO_IRQ */ /** HERE ARE GPIOs **/ /* GPIOs */ #define GPIO_NR_PALMLD_GPIO_RESET 1 #define GPIO_NR_PALMLD_POWER_DETECT 4 #define GPIO_NR_PALMLD_HOTSYNC_BUTTON_N 10 #define GPIO_NR_PALMLD_POWER_SWITCH 12 #define GPIO_NR_PALMLD_EARPHONE_DETECT 13 #define GPIO_NR_PALMLD_LOCK_SWITCH 15 /* SD/MMC */ #define GPIO_NR_PALMLD_SD_DETECT_N 14 #define GPIO_NR_PALMLD_SD_POWER 114 #define GPIO_NR_PALMLD_SD_READONLY 116 /* TOUCHSCREEN */ #define GPIO_NR_PALMLD_WM9712_IRQ 27 /* IRDA */ #define GPIO_NR_PALMLD_IR_DISABLE 108 /* LCD/BACKLIGHT */ #define GPIO_NR_PALMLD_BL_POWER 19 #define GPIO_NR_PALMLD_LCD_POWER 96 /* LCD BORDER */ #define GPIO_NR_PALMLD_BORDER_SWITCH 21 #define GPIO_NR_PALMLD_BORDER_SELECT 22 /* BLUETOOTH */ #define GPIO_NR_PALMLD_BT_POWER 17 #define GPIO_NR_PALMLD_BT_RESET 83 /* PCMCIA (WiFi) */ #define GPIO_NR_PALMLD_PCMCIA_READY 38 #define GPIO_NR_PALMLD_PCMCIA_POWER 36 #define GPIO_NR_PALMLD_PCMCIA_RESET 81 /* LEDs */ #define GPIO_NR_PALMLD_LED_GREEN 52 #define GPIO_NR_PALMLD_LED_AMBER 94 /* IDE */ #define GPIO_NR_PALMLD_IDE_RESET 98 #define GPIO_NR_PALMLD_IDE_PWEN 115 /* USB */ #define GPIO_NR_PALMLD_USB_DETECT_N 3 #define GPIO_NR_PALMLD_USB_READY 86 #define GPIO_NR_PALMLD_USB_RESET 88 #define GPIO_NR_PALMLD_USB_INT 106 #define GPIO_NR_PALMLD_USB_POWER 118 /* 20, 53 and 86 are usb related too */ /* INTERRUPTS */ #define IRQ_GPIO_PALMLD_GPIO_RESET PXA_GPIO_TO_IRQ(GPIO_NR_PALMLD_GPIO_RESET) #define IRQ_GPIO_PALMLD_SD_DETECT_N PXA_GPIO_TO_IRQ(GPIO_NR_PALMLD_SD_DETECT_N) #define IRQ_GPIO_PALMLD_WM9712_IRQ PXA_GPIO_TO_IRQ(GPIO_NR_PALMLD_WM9712_IRQ) #define IRQ_GPIO_PALMLD_IDE_IRQ PXA_GPIO_TO_IRQ(GPIO_NR_PALMLD_IDE_IRQ) /** HERE ARE INIT VALUES **/ /* IO mappings */ #define PALMLD_USB_PHYS PXA_CS2_PHYS #define PALMLD_USB_VIRT 0xf0000000 #define PALMLD_USB_SIZE 0x00100000 #define PALMLD_IDE_PHYS 0x20000000 #define PALMLD_IDE_VIRT 0xf1000000 #define PALMLD_IDE_SIZE 0x00100000 #define PALMLD_PHYS_IO_START 0x40000000 #define PALMLD_STR_BASE 0xa0200000 /* BATTERY */ #define PALMLD_BAT_MAX_VOLTAGE 4000 /* 4.00V maximum voltage */ #define PALMLD_BAT_MIN_VOLTAGE 3550 /* 3.55V critical voltage */ #define PALMLD_BAT_MAX_CURRENT 0 /* unknown */ #define PALMLD_BAT_MIN_CURRENT 0 /* unknown */ #define PALMLD_BAT_MAX_CHARGE 1 /* unknown */ #define PALMLD_BAT_MIN_CHARGE 1 /* unknown */ #define PALMLD_MAX_LIFE_MINS 240 /* on-life in minutes */ #define PALMLD_BAT_MEASURE_DELAY (HZ * 1) /* BACKLIGHT */ #define PALMLD_MAX_INTENSITY 0xFE #define PALMLD_DEFAULT_INTENSITY 0x7E #define PALMLD_LIMIT_MASK 0x7F #define PALMLD_PRESCALER 0x3F #define PALMLD_PERIOD_NS 3500 #endif PK ! �L�� � include/mach/balloon3.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * linux/include/asm-arm/arch-pxa/balloon3.h * * Authors: Nick Bane and Wookey * Created: Oct, 2005 * Copyright: Toby Churchill Ltd * Cribbed from mainstone.c, by Nicholas Pitre */ #ifndef ASM_ARCH_BALLOON3_H #define ASM_ARCH_BALLOON3_H #include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ enum balloon3_features { BALLOON3_FEATURE_OHCI, BALLOON3_FEATURE_MMC, BALLOON3_FEATURE_CF, BALLOON3_FEATURE_AUDIO, BALLOON3_FEATURE_TOPPOLY, }; #define BALLOON3_FPGA_PHYS PXA_CS4_PHYS #define BALLOON3_FPGA_VIRT IOMEM(0xf1000000) /* as per balloon2 */ #define BALLOON3_FPGA_LENGTH 0x01000000 #define BALLOON3_FPGA_SETnCLR (0x1000) /* FPGA / CPLD registers for CF socket */ #define BALLOON3_CF_STATUS_REG (BALLOON3_FPGA_VIRT + 0x00e00008) #define BALLOON3_CF_CONTROL_REG (BALLOON3_FPGA_VIRT + 0x00e00008) /* FPGA / CPLD version register */ #define BALLOON3_FPGA_VER (BALLOON3_FPGA_VIRT + 0x00e0001c) /* FPGA / CPLD registers for NAND flash */ #define BALLOON3_NAND_BASE (PXA_CS4_PHYS + 0x00e00000) #define BALLOON3_NAND_IO_REG (BALLOON3_FPGA_VIRT + 0x00e00000) #define BALLOON3_NAND_CONTROL2_REG (BALLOON3_FPGA_VIRT + 0x00e00010) #define BALLOON3_NAND_STAT_REG (BALLOON3_FPGA_VIRT + 0x00e00014) #define BALLOON3_NAND_CONTROL_REG (BALLOON3_FPGA_VIRT + 0x00e00014) /* fpga/cpld interrupt control register */ #define BALLOON3_INT_CONTROL_REG (BALLOON3_FPGA_VIRT + 0x00e0000C) #define BALLOON3_VERSION_REG (BALLOON3_FPGA_VIRT + 0x00e0001c) #define BALLOON3_SAMOSA_ADDR_REG (BALLOON3_FPGA_VIRT + 0x00c00000) #define BALLOON3_SAMOSA_DATA_REG (BALLOON3_FPGA_VIRT + 0x00c00004) #define BALLOON3_SAMOSA_STATUS_REG (BALLOON3_FPGA_VIRT + 0x00c0001c) /* CF Status Register bits (read-only) bits */ #define BALLOON3_CF_nIRQ (1 << 0) #define BALLOON3_CF_nSTSCHG_BVD1 (1 << 1) /* CF Control Set Register bits / CF Control Clear Register bits (write-only) */ #define BALLOON3_CF_RESET (1 << 0) #define BALLOON3_CF_ENABLE (1 << 1) #define BALLOON3_CF_ADD_ENABLE (1 << 2) /* CF Interrupt sources */ #define BALLOON3_BP_CF_NRDY_IRQ BALLOON3_IRQ(0) #define BALLOON3_BP_NSTSCHG_IRQ BALLOON3_IRQ(1) /* NAND Control register */ #define BALLOON3_NAND_CONTROL_FLWP (1 << 7) #define BALLOON3_NAND_CONTROL_FLSE (1 << 6) #define BALLOON3_NAND_CONTROL_FLCE3 (1 << 5) #define BALLOON3_NAND_CONTROL_FLCE2 (1 << 4) #define BALLOON3_NAND_CONTROL_FLCE1 (1 << 3) #define BALLOON3_NAND_CONTROL_FLCE0 (1 << 2) #define BALLOON3_NAND_CONTROL_FLALE (1 << 1) #define BALLOON3_NAND_CONTROL_FLCLE (1 << 0) /* NAND Status register */ #define BALLOON3_NAND_STAT_RNB (1 << 0) /* NAND Control2 register */ #define BALLOON3_NAND_CONTROL2_16BIT (1 << 0) /* GPIOs for irqs */ #define BALLOON3_GPIO_AUX_NIRQ (94) #define BALLOON3_GPIO_CODEC_IRQ (95) /* Timer and Idle LED locations */ #define BALLOON3_GPIO_LED_NAND (9) #define BALLOON3_GPIO_LED_IDLE (10) /* backlight control */ #define BALLOON3_GPIO_RUN_BACKLIGHT (99) #define BALLOON3_GPIO_S0_CD (105) /* NAND */ #define BALLOON3_GPIO_RUN_NAND (102) /* PCF8574A Leds */ #define BALLOON3_PCF_GPIO_BASE 160 #define BALLOON3_PCF_GPIO_LED0 (BALLOON3_PCF_GPIO_BASE + 0) #define BALLOON3_PCF_GPIO_LED1 (BALLOON3_PCF_GPIO_BASE + 1) #define BALLOON3_PCF_GPIO_LED2 (BALLOON3_PCF_GPIO_BASE + 2) #define BALLOON3_PCF_GPIO_LED3 (BALLOON3_PCF_GPIO_BASE + 3) #define BALLOON3_PCF_GPIO_LED4 (BALLOON3_PCF_GPIO_BASE + 4) #define BALLOON3_PCF_GPIO_LED5 (BALLOON3_PCF_GPIO_BASE + 5) #define BALLOON3_PCF_GPIO_LED6 (BALLOON3_PCF_GPIO_BASE + 6) #define BALLOON3_PCF_GPIO_LED7 (BALLOON3_PCF_GPIO_BASE + 7) /* FPGA Interrupt Mask/Acknowledge Register */ #define BALLOON3_INT_S0_IRQ (1 << 0) /* PCMCIA 0 IRQ */ #define BALLOON3_INT_S0_STSCHG (1 << 1) /* PCMCIA 0 status changed */ /* CPLD (and FPGA) interface definitions */ #define CPLD_LCD0_DATA_SET 0x00 #define CPLD_LCD0_DATA_CLR 0x10 #define CPLD_LCD0_COMMAND_SET 0x01 #define CPLD_LCD0_COMMAND_CLR 0x11 #define CPLD_LCD1_DATA_SET 0x02 #define CPLD_LCD1_DATA_CLR 0x12 #define CPLD_LCD1_COMMAND_SET 0x03 #define CPLD_LCD1_COMMAND_CLR 0x13 #define CPLD_MISC_SET 0x07 #define CPLD_MISC_CLR 0x17 #define CPLD_MISC_LOON_NRESET_BIT 0 #define CPLD_MISC_LOON_UNSUSP_BIT 1 #define CPLD_MISC_RUN_5V_BIT 2 #define CPLD_MISC_CHG_D0_BIT 3 #define CPLD_MISC_CHG_D1_BIT 4 #define CPLD_MISC_DAC_NCS_BIT 5 #define CPLD_LCD_SET 0x08 #define CPLD_LCD_CLR 0x18 #define CPLD_LCD_BACKLIGHT_EN_0_BIT 0 #define CPLD_LCD_BACKLIGHT_EN_1_BIT 1 #define CPLD_LCD_LED_RED_BIT 4 #define CPLD_LCD_LED_GREEN_BIT 5 #define CPLD_LCD_NRESET_BIT 7 #define CPLD_LCD_RO_SET 0x09 #define CPLD_LCD_RO_CLR 0x19 #define CPLD_LCD_RO_LCD0_nWAIT_BIT 0 #define CPLD_LCD_RO_LCD1_nWAIT_BIT 1 #define CPLD_SERIAL_SET 0x0a #define CPLD_SERIAL_CLR 0x1a #define CPLD_SERIAL_GSM_RI_BIT 0 #define CPLD_SERIAL_GSM_CTS_BIT 1 #define CPLD_SERIAL_GSM_DTR_BIT 2 #define CPLD_SERIAL_LPR_CTS_BIT 3 #define CPLD_SERIAL_TC232_CTS_BIT 4 #define CPLD_SERIAL_TC232_DSR_BIT 5 #define CPLD_SROUTING_SET 0x0b #define CPLD_SROUTING_CLR 0x1b #define CPLD_SROUTING_MSP430_LPR 0 #define CPLD_SROUTING_MSP430_TC232 1 #define CPLD_SROUTING_MSP430_GSM 2 #define CPLD_SROUTING_LOON_LPR (0 << 4) #define CPLD_SROUTING_LOON_TC232 (1 << 4) #define CPLD_SROUTING_LOON_GSM (2 << 4) #define CPLD_AROUTING_SET 0x0c #define CPLD_AROUTING_CLR 0x1c #define CPLD_AROUTING_MIC2PHONE_BIT 0 #define CPLD_AROUTING_PHONE2INT_BIT 1 #define CPLD_AROUTING_PHONE2EXT_BIT 2 #define CPLD_AROUTING_LOONL2INT_BIT 3 #define CPLD_AROUTING_LOONL2EXT_BIT 4 #define CPLD_AROUTING_LOONR2PHONE_BIT 5 #define CPLD_AROUTING_LOONR2INT_BIT 6 #define CPLD_AROUTING_LOONR2EXT_BIT 7 /* Balloon3 Interrupts */ #define BALLOON3_IRQ(x) (IRQ_BOARD_START + (x)) #define BALLOON3_AUX_NIRQ PXA_GPIO_TO_IRQ(BALLOON3_GPIO_AUX_NIRQ) #define BALLOON3_CODEC_IRQ PXA_GPIO_TO_IRQ(BALLOON3_GPIO_CODEC_IRQ) #define BALLOON3_NR_IRQS (IRQ_BOARD_START + 16) extern int balloon3_has(enum balloon3_features feature); #endif PK ! 8��M M include/mach/vpac270.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIOs and interrupts for Voipac PXA270 * * Copyright (C) 2010 * Marek Vasut <marek.vasut@gmail.com> */ #ifndef _INCLUDE_VPAC270_H_ #define _INCLUDE_VPAC270_H_ #define GPIO1_VPAC270_USER_BTN 1 #define GPIO15_VPAC270_LED_ORANGE 15 #define GPIO81_VPAC270_BKL_ON 81 #define GPIO83_VPAC270_NL_ON 83 #define GPIO52_VPAC270_SD_READONLY 52 #define GPIO53_VPAC270_SD_DETECT_N 53 #define GPIO84_VPAC270_PCMCIA_CD 84 #define GPIO35_VPAC270_PCMCIA_RDY 35 #define GPIO107_VPAC270_PCMCIA_PPEN 107 #define GPIO11_VPAC270_PCMCIA_RESET 11 #define GPIO17_VPAC270_CF_CD 17 #define GPIO12_VPAC270_CF_RDY 12 #define GPIO16_VPAC270_CF_RESET 16 #define GPIO41_VPAC270_UDC_DETECT 41 #define GPIO114_VPAC270_ETH_IRQ 114 #define GPIO36_VPAC270_IDE_IRQ 36 #define GPIO113_VPAC270_TS_IRQ 113 #endif PK ! ���� � include/mach/palmtx.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIOs and interrupts for Palm T|X Handheld Computer * * Based on palmld-gpio.h by Alex Osborne * * Authors: Marek Vasut <marek.vasut@gmail.com> * Cristiano P. <cristianop@users.sourceforge.net> * Jan Herman <2hp@seznam.cz> */ #ifndef _INCLUDE_PALMTX_H_ #define _INCLUDE_PALMTX_H_ #include "irqs.h" /* PXA_GPIO_TO_IRQ */ /** HERE ARE GPIOs **/ /* GPIOs */ #define GPIO_NR_PALMTX_GPIO_RESET 1 #define GPIO_NR_PALMTX_POWER_DETECT 12 /* 90 */ #define GPIO_NR_PALMTX_HOTSYNC_BUTTON_N 10 #define GPIO_NR_PALMTX_EARPHONE_DETECT 107 /* SD/MMC */ #define GPIO_NR_PALMTX_SD_DETECT_N 14 #define GPIO_NR_PALMTX_SD_POWER 114 /* probably */ #define GPIO_NR_PALMTX_SD_READONLY 115 /* probably */ /* TOUCHSCREEN */ #define GPIO_NR_PALMTX_WM9712_IRQ 27 /* IRDA - disable GPIO connected to SD pin of tranceiver (TFBS4710?) ? */ #define GPIO_NR_PALMTX_IR_DISABLE 40 /* USB */ #define GPIO_NR_PALMTX_USB_DETECT_N 13 #define GPIO_NR_PALMTX_USB_PULLUP 93 /* LCD/BACKLIGHT */ #define GPIO_NR_PALMTX_BL_POWER 84 #define GPIO_NR_PALMTX_LCD_POWER 96 /* LCD BORDER */ #define GPIO_NR_PALMTX_BORDER_SWITCH 98 #define GPIO_NR_PALMTX_BORDER_SELECT 22 /* BLUETOOTH */ #define GPIO_NR_PALMTX_BT_POWER 17 #define GPIO_NR_PALMTX_BT_RESET 83 /* PCMCIA (WiFi) */ #define GPIO_NR_PALMTX_PCMCIA_POWER1 94 #define GPIO_NR_PALMTX_PCMCIA_POWER2 108 #define GPIO_NR_PALMTX_PCMCIA_RESET 79 #define GPIO_NR_PALMTX_PCMCIA_READY 116 /* NAND Flash ... this GPIO may be incorrect! */ #define GPIO_NR_PALMTX_NAND_BUFFER_DIR 79 /* INTERRUPTS */ #define IRQ_GPIO_PALMTX_SD_DETECT_N PXA_GPIO_TO_IRQ(GPIO_NR_PALMTX_SD_DETECT_N) #define IRQ_GPIO_PALMTX_WM9712_IRQ PXA_GPIO_TO_IRQ(GPIO_NR_PALMTX_WM9712_IRQ) #define IRQ_GPIO_PALMTX_USB_DETECT PXA_GPIO_TO_IRQ(GPIO_NR_PALMTX_USB_DETECT) #define IRQ_GPIO_PALMTX_GPIO_RESET PXA_GPIO_TO_IRQ(GPIO_NR_PALMTX_GPIO_RESET) /** HERE ARE INIT VALUES **/ /* Various addresses */ #define PALMTX_PCMCIA_PHYS 0x28000000 #define PALMTX_PCMCIA_VIRT IOMEM(0xf0000000) #define PALMTX_PCMCIA_SIZE 0x100000 #define PALMTX_PHYS_RAM_START 0xa0000000 #define PALMTX_PHYS_IO_START 0x40000000 #define PALMTX_STR_BASE 0xa0200000 #define PALMTX_PHYS_FLASH_START PXA_CS0_PHYS /* ChipSelect 0 */ #define PALMTX_PHYS_NAND_START PXA_CS1_PHYS /* ChipSelect 1 */ #define PALMTX_NAND_ALE_PHYS (PALMTX_PHYS_NAND_START | (1 << 24)) #define PALMTX_NAND_CLE_PHYS (PALMTX_PHYS_NAND_START | (1 << 25)) #define PALMTX_NAND_ALE_VIRT IOMEM(0xff100000) #define PALMTX_NAND_CLE_VIRT IOMEM(0xff200000) /* TOUCHSCREEN */ #define AC97_LINK_FRAME 21 /* BATTERY */ #define PALMTX_BAT_MAX_VOLTAGE 4000 /* 4.00v current voltage */ #define PALMTX_BAT_MIN_VOLTAGE 3550 /* 3.55v critical voltage */ #define PALMTX_BAT_MAX_CURRENT 0 /* unknown */ #define PALMTX_BAT_MIN_CURRENT 0 /* unknown */ #define PALMTX_BAT_MAX_CHARGE 1 /* unknown */ #define PALMTX_BAT_MIN_CHARGE 1 /* unknown */ #define PALMTX_MAX_LIFE_MINS 360 /* on-life in minutes */ #define PALMTX_BAT_MEASURE_DELAY (HZ * 1) /* BACKLIGHT */ #define PALMTX_MAX_INTENSITY 0xFE #define PALMTX_DEFAULT_INTENSITY 0x7E #define PALMTX_LIMIT_MASK 0x7F #define PALMTX_PRESCALER 0x3F #define PALMTX_PERIOD_NS 3500 #endif PK ! _��� include/mach/tosa.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * Hardware specific definitions for Sharp SL-C6000x series of PDAs * * Copyright (c) 2005 Dirk Opfer * * Based on Sharp's 2.4 kernel patches */ #ifndef _ASM_ARCH_TOSA_H_ #define _ASM_ARCH_TOSA_H_ 1 #include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ /* TOSA Chip selects */ #define TOSA_LCDC_PHYS PXA_CS4_PHYS /* Internel Scoop */ #define TOSA_CF_PHYS (PXA_CS2_PHYS + 0x00800000) /* Jacket Scoop */ #define TOSA_SCOOP_PHYS (PXA_CS5_PHYS + 0x00800000) #define TOSA_NR_IRQS (IRQ_BOARD_START + TC6393XB_NR_IRQS) /* * SCOOP2 internal GPIOs */ #define TOSA_SCOOP_GPIO_BASE PXA_NR_BUILTIN_GPIO #define TOSA_SCOOP_PXA_VCORE1 SCOOP_GPCR_PA11 #define TOSA_GPIO_TC6393XB_REST_IN (TOSA_SCOOP_GPIO_BASE + 1) #define TOSA_GPIO_IR_POWERDWN (TOSA_SCOOP_GPIO_BASE + 2) #define TOSA_GPIO_SD_WP (TOSA_SCOOP_GPIO_BASE + 3) #define TOSA_GPIO_PWR_ON (TOSA_SCOOP_GPIO_BASE + 4) #define TOSA_SCOOP_AUD_PWR_ON SCOOP_GPCR_PA16 #define TOSA_GPIO_BT_RESET (TOSA_SCOOP_GPIO_BASE + 6) #define TOSA_GPIO_BT_PWR_EN (TOSA_SCOOP_GPIO_BASE + 7) #define TOSA_SCOOP_AC_IN_OL SCOOP_GPCR_PA19 /* GPIO Direction 1 : output mode / 0:input mode */ #define TOSA_SCOOP_IO_DIR (TOSA_SCOOP_PXA_VCORE1 | \ TOSA_SCOOP_AUD_PWR_ON) /* * SCOOP2 jacket GPIOs */ #define TOSA_SCOOP_JC_GPIO_BASE (PXA_NR_BUILTIN_GPIO + 12) #define TOSA_GPIO_BT_LED (TOSA_SCOOP_JC_GPIO_BASE + 0) #define TOSA_GPIO_NOTE_LED (TOSA_SCOOP_JC_GPIO_BASE + 1) #define TOSA_GPIO_CHRG_ERR_LED (TOSA_SCOOP_JC_GPIO_BASE + 2) #define TOSA_GPIO_USB_PULLUP (TOSA_SCOOP_JC_GPIO_BASE + 3) #define TOSA_GPIO_TC6393XB_SUSPEND (TOSA_SCOOP_JC_GPIO_BASE + 4) #define TOSA_GPIO_TC6393XB_L3V_ON (TOSA_SCOOP_JC_GPIO_BASE + 5) #define TOSA_SCOOP_JC_WLAN_DETECT SCOOP_GPCR_PA17 #define TOSA_GPIO_WLAN_LED (TOSA_SCOOP_JC_GPIO_BASE + 7) #define TOSA_SCOOP_JC_CARD_LIMIT_SEL SCOOP_GPCR_PA19 /* GPIO Direction 1 : output mode / 0:input mode */ #define TOSA_SCOOP_JC_IO_DIR (TOSA_SCOOP_JC_CARD_LIMIT_SEL) /* * TC6393XB GPIOs */ #define TOSA_TC6393XB_GPIO_BASE (PXA_NR_BUILTIN_GPIO + 2 * 12) #define TOSA_GPIO_TG_ON (TOSA_TC6393XB_GPIO_BASE + 0) #define TOSA_GPIO_L_MUTE (TOSA_TC6393XB_GPIO_BASE + 1) #define TOSA_GPIO_BL_C20MA (TOSA_TC6393XB_GPIO_BASE + 3) #define TOSA_GPIO_CARD_VCC_ON (TOSA_TC6393XB_GPIO_BASE + 4) #define TOSA_GPIO_CHARGE_OFF (TOSA_TC6393XB_GPIO_BASE + 6) #define TOSA_GPIO_CHARGE_OFF_JC (TOSA_TC6393XB_GPIO_BASE + 7) #define TOSA_GPIO_BAT0_V_ON (TOSA_TC6393XB_GPIO_BASE + 9) #define TOSA_GPIO_BAT1_V_ON (TOSA_TC6393XB_GPIO_BASE + 10) #define TOSA_GPIO_BU_CHRG_ON (TOSA_TC6393XB_GPIO_BASE + 11) #define TOSA_GPIO_BAT_SW_ON (TOSA_TC6393XB_GPIO_BASE + 12) #define TOSA_GPIO_BAT0_TH_ON (TOSA_TC6393XB_GPIO_BASE + 14) #define TOSA_GPIO_BAT1_TH_ON (TOSA_TC6393XB_GPIO_BASE + 15) /* * PXA GPIOs */ #define TOSA_GPIO_POWERON (0) #define TOSA_GPIO_RESET (1) #define TOSA_GPIO_AC_IN (2) #define TOSA_GPIO_RECORD_BTN (3) #define TOSA_GPIO_SYNC (4) /* Cradle SYNC Button */ #define TOSA_GPIO_USB_IN (5) #define TOSA_GPIO_JACKET_DETECT (7) #define TOSA_GPIO_nSD_DETECT (9) #define TOSA_GPIO_nSD_INT (10) #define TOSA_GPIO_TC6393XB_CLK (11) #define TOSA_GPIO_BAT1_CRG (12) #define TOSA_GPIO_CF_CD (13) #define TOSA_GPIO_BAT0_CRG (14) #define TOSA_GPIO_TC6393XB_INT (15) #define TOSA_GPIO_BAT0_LOW (17) #define TOSA_GPIO_TC6393XB_RDY (18) #define TOSA_GPIO_ON_RESET (19) #define TOSA_GPIO_EAR_IN (20) #define TOSA_GPIO_CF_IRQ (21) /* CF slot0 Ready */ #define TOSA_GPIO_ON_KEY (22) #define TOSA_GPIO_VGA_LINE (27) #define TOSA_GPIO_TP_INT (32) /* Touch Panel pen down interrupt */ #define TOSA_GPIO_JC_CF_IRQ (36) /* CF slot1 Ready */ #define TOSA_GPIO_BAT_LOCKED (38) /* Battery locked */ #define TOSA_GPIO_IRDA_TX (47) #define TOSA_GPIO_TG_SPI_SCLK (81) #define TOSA_GPIO_TG_SPI_CS (82) #define TOSA_GPIO_TG_SPI_MOSI (83) #define TOSA_GPIO_BAT1_LOW (84) #define TOSA_GPIO_HP_IN GPIO_EAR_IN #define TOSA_GPIO_MAIN_BAT_LOW GPIO_BAT0_LOW #define TOSA_KEY_STROBE_NUM (11) #define TOSA_KEY_SENSE_NUM (7) #define TOSA_GPIO_HIGH_STROBE_BIT (0xfc000000) #define TOSA_GPIO_LOW_STROBE_BIT (0x0000001f) #define TOSA_GPIO_ALL_SENSE_BIT (0x00000fe0) #define TOSA_GPIO_ALL_SENSE_RSHIFT (5) #define TOSA_GPIO_STROBE_BIT(a) GPIO_bit(58+(a)) #define TOSA_GPIO_SENSE_BIT(a) GPIO_bit(69+(a)) #define TOSA_GAFR_HIGH_STROBE_BIT (0xfff00000) #define TOSA_GAFR_LOW_STROBE_BIT (0x000003ff) #define TOSA_GAFR_ALL_SENSE_BIT (0x00fffc00) #define TOSA_GPIO_KEY_SENSE(a) (69+(a)) #define TOSA_GPIO_KEY_STROBE(a) (58+(a)) /* * Interrupts */ #define TOSA_IRQ_GPIO_WAKEUP PXA_GPIO_TO_IRQ(TOSA_GPIO_WAKEUP) #define TOSA_IRQ_GPIO_AC_IN PXA_GPIO_TO_IRQ(TOSA_GPIO_AC_IN) #define TOSA_IRQ_GPIO_RECORD_BTN PXA_GPIO_TO_IRQ(TOSA_GPIO_RECORD_BTN) #define TOSA_IRQ_GPIO_SYNC PXA_GPIO_TO_IRQ(TOSA_GPIO_SYNC) #define TOSA_IRQ_GPIO_USB_IN PXA_GPIO_TO_IRQ(TOSA_GPIO_USB_IN) #define TOSA_IRQ_GPIO_JACKET_DETECT PXA_GPIO_TO_IRQ(TOSA_GPIO_JACKET_DETECT) #define TOSA_IRQ_GPIO_nSD_INT PXA_GPIO_TO_IRQ(TOSA_GPIO_nSD_INT) #define TOSA_IRQ_GPIO_nSD_DETECT PXA_GPIO_TO_IRQ(TOSA_GPIO_nSD_DETECT) #define TOSA_IRQ_GPIO_BAT1_CRG PXA_GPIO_TO_IRQ(TOSA_GPIO_BAT1_CRG) #define TOSA_IRQ_GPIO_CF_CD PXA_GPIO_TO_IRQ(TOSA_GPIO_CF_CD) #define TOSA_IRQ_GPIO_BAT0_CRG PXA_GPIO_TO_IRQ(TOSA_GPIO_BAT0_CRG) #define TOSA_IRQ_GPIO_TC6393XB_INT PXA_GPIO_TO_IRQ(TOSA_GPIO_TC6393XB_INT) #define TOSA_IRQ_GPIO_BAT0_LOW PXA_GPIO_TO_IRQ(TOSA_GPIO_BAT0_LOW) #define TOSA_IRQ_GPIO_EAR_IN PXA_GPIO_TO_IRQ(TOSA_GPIO_EAR_IN) #define TOSA_IRQ_GPIO_CF_IRQ PXA_GPIO_TO_IRQ(TOSA_GPIO_CF_IRQ) #define TOSA_IRQ_GPIO_ON_KEY PXA_GPIO_TO_IRQ(TOSA_GPIO_ON_KEY) #define TOSA_IRQ_GPIO_VGA_LINE PXA_GPIO_TO_IRQ(TOSA_GPIO_VGA_LINE) #define TOSA_IRQ_GPIO_TP_INT PXA_GPIO_TO_IRQ(TOSA_GPIO_TP_INT) #define TOSA_IRQ_GPIO_JC_CF_IRQ PXA_GPIO_TO_IRQ(TOSA_GPIO_JC_CF_IRQ) #define TOSA_IRQ_GPIO_BAT_LOCKED PXA_GPIO_TO_IRQ(TOSA_GPIO_BAT_LOCKED) #define TOSA_IRQ_GPIO_BAT1_LOW PXA_GPIO_TO_IRQ(TOSA_GPIO_BAT1_LOW) #define TOSA_IRQ_GPIO_KEY_SENSE(a) PXA_GPIO_TO_IRQ(69+(a)) #define TOSA_IRQ_GPIO_MAIN_BAT_LOW PXA_GPIO_TO_IRQ(TOSA_GPIO_MAIN_BAT_LOW) #define TOSA_KEY_SYNC KEY_102ND /* ??? */ #ifndef CONFIG_TOSA_USE_EXT_KEYCODES #define TOSA_KEY_RECORD KEY_YEN #define TOSA_KEY_ADDRESSBOOK KEY_KATAKANA #define TOSA_KEY_CANCEL KEY_ESC #define TOSA_KEY_CENTER KEY_HIRAGANA #define TOSA_KEY_OK KEY_HENKAN #define TOSA_KEY_CALENDAR KEY_KATAKANAHIRAGANA #define TOSA_KEY_HOMEPAGE KEY_HANGEUL #define TOSA_KEY_LIGHT KEY_MUHENKAN #define TOSA_KEY_MENU KEY_HANJA #define TOSA_KEY_FN KEY_RIGHTALT #define TOSA_KEY_MAIL KEY_ZENKAKUHANKAKU #else #define TOSA_KEY_RECORD KEY_RECORD #define TOSA_KEY_ADDRESSBOOK KEY_ADDRESSBOOK #define TOSA_KEY_CANCEL KEY_CANCEL #define TOSA_KEY_CENTER KEY_SELECT /* ??? */ #define TOSA_KEY_OK KEY_OK #define TOSA_KEY_CALENDAR KEY_CALENDAR #define TOSA_KEY_HOMEPAGE KEY_HOMEPAGE #define TOSA_KEY_LIGHT KEY_KBDILLUMTOGGLE #define TOSA_KEY_MENU KEY_MENU #define TOSA_KEY_FN KEY_FN #define TOSA_KEY_MAIL KEY_MAIL #endif #endif /* _ASM_ARCH_TOSA_H_ */ PK ! �v�L L include/mach/corgi.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * Hardware specific definitions for SL-C7xx series of PDAs * * Copyright (c) 2004-2005 Richard Purdie * * Based on Sharp's 2.4 kernel patches */ #ifndef __ASM_ARCH_CORGI_H #define __ASM_ARCH_CORGI_H 1 #include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ /* * Corgi (Non Standard) GPIO Definitions */ #define CORGI_GPIO_KEY_INT (0) /* Keyboard Interrupt */ #define CORGI_GPIO_AC_IN (1) /* Charger Detection */ #define CORGI_GPIO_WAKEUP (3) /* System wakeup notification? */ #define CORGI_GPIO_AK_INT (4) /* Headphone Jack Control Interrupt */ #define CORGI_GPIO_TP_INT (5) /* Touch Panel Interrupt */ #define CORGI_GPIO_nSD_WP (7) /* SD Write Protect? */ #define CORGI_GPIO_nSD_DETECT (9) /* MMC/SD Card Detect */ #define CORGI_GPIO_nSD_INT (10) /* SD Interrupt for SDIO? */ #define CORGI_GPIO_MAIN_BAT_LOW (11) /* Main Battery Low Notification */ #define CORGI_GPIO_BAT_COVER (11) /* Battery Cover Detect */ #define CORGI_GPIO_LED_ORANGE (13) /* Orange LED Control */ #define CORGI_GPIO_CF_CD (14) /* Compact Flash Card Detect */ #define CORGI_GPIO_CHRG_FULL (16) /* Charging Complete Notification */ #define CORGI_GPIO_CF_IRQ (17) /* Compact Flash Interrupt */ #define CORGI_GPIO_LCDCON_CS (19) /* LCD Control Chip Select */ #define CORGI_GPIO_MAX1111_CS (20) /* MAX1111 Chip Select */ #define CORGI_GPIO_ADC_TEMP_ON (21) /* Select battery voltage or temperature */ #define CORGI_GPIO_IR_ON (22) /* Enable IR Transceiver */ #define CORGI_GPIO_ADS7846_CS (24) /* ADS7846 Chip Select */ #define CORGI_GPIO_SD_PWR (33) /* MMC/SD Power */ #define CORGI_GPIO_CHRG_ON (38) /* Enable battery Charging */ #define CORGI_GPIO_DISCHARGE_ON (42) /* Enable battery Discharge */ #define CORGI_GPIO_CHRG_UKN (43) /* Unknown Charging (Bypass Control?) */ #define CORGI_GPIO_HSYNC (44) /* LCD HSync Pulse */ #define CORGI_GPIO_USB_PULLUP (45) /* USB show presence to host */ /* * Corgi Keyboard Definitions */ #define CORGI_KEY_STROBE_NUM (12) #define CORGI_KEY_SENSE_NUM (8) #define CORGI_GPIO_ALL_STROBE_BIT (0x00003ffc) #define CORGI_GPIO_HIGH_SENSE_BIT (0xfc000000) #define CORGI_GPIO_HIGH_SENSE_RSHIFT (26) #define CORGI_GPIO_LOW_SENSE_BIT (0x00000003) #define CORGI_GPIO_LOW_SENSE_LSHIFT (6) #define CORGI_GPIO_STROBE_BIT(a) GPIO_bit(66+(a)) #define CORGI_GPIO_SENSE_BIT(a) GPIO_bit(58+(a)) #define CORGI_GAFR_ALL_STROBE_BIT (0x0ffffff0) #define CORGI_GAFR_HIGH_SENSE_BIT (0xfff00000) #define CORGI_GAFR_LOW_SENSE_BIT (0x0000000f) #define CORGI_GPIO_KEY_SENSE(a) (58+(a)) #define CORGI_GPIO_KEY_STROBE(a) (66+(a)) /* * Corgi Interrupts */ #define CORGI_IRQ_GPIO_KEY_INT PXA_GPIO_TO_IRQ(0) #define CORGI_IRQ_GPIO_AC_IN PXA_GPIO_TO_IRQ(1) #define CORGI_IRQ_GPIO_WAKEUP PXA_GPIO_TO_IRQ(3) #define CORGI_IRQ_GPIO_AK_INT PXA_GPIO_TO_IRQ(4) #define CORGI_IRQ_GPIO_TP_INT PXA_GPIO_TO_IRQ(5) #define CORGI_IRQ_GPIO_nSD_DETECT PXA_GPIO_TO_IRQ(9) #define CORGI_IRQ_GPIO_nSD_INT PXA_GPIO_TO_IRQ(10) #define CORGI_IRQ_GPIO_MAIN_BAT_LOW PXA_GPIO_TO_IRQ(11) #define CORGI_IRQ_GPIO_CF_CD PXA_GPIO_TO_IRQ(14) #define CORGI_IRQ_GPIO_CHRG_FULL PXA_GPIO_TO_IRQ(16) /* Battery fully charged */ #define CORGI_IRQ_GPIO_CF_IRQ PXA_GPIO_TO_IRQ(17) #define CORGI_IRQ_GPIO_KEY_SENSE(a) PXA_GPIO_TO_IRQ(58+(a)) /* Keyboard Sense lines */ /* * Corgi SCOOP GPIOs and Config */ #define CORGI_SCP_LED_GREEN SCOOP_GPCR_PA11 #define CORGI_SCP_SWA SCOOP_GPCR_PA12 /* Hinge Switch A */ #define CORGI_SCP_SWB SCOOP_GPCR_PA13 /* Hinge Switch B */ #define CORGI_SCP_MUTE_L SCOOP_GPCR_PA14 #define CORGI_SCP_MUTE_R SCOOP_GPCR_PA15 #define CORGI_SCP_AKIN_PULLUP SCOOP_GPCR_PA16 #define CORGI_SCP_APM_ON SCOOP_GPCR_PA17 #define CORGI_SCP_BACKLIGHT_CONT SCOOP_GPCR_PA18 #define CORGI_SCP_MIC_BIAS SCOOP_GPCR_PA19 #define CORGI_SCOOP_IO_DIR ( CORGI_SCP_LED_GREEN | CORGI_SCP_MUTE_L | CORGI_SCP_MUTE_R | \ CORGI_SCP_AKIN_PULLUP | CORGI_SCP_APM_ON | CORGI_SCP_BACKLIGHT_CONT | \ CORGI_SCP_MIC_BIAS ) #define CORGI_SCOOP_IO_OUT ( CORGI_SCP_MUTE_L | CORGI_SCP_MUTE_R ) #define CORGI_SCOOP_GPIO_BASE (PXA_NR_BUILTIN_GPIO) #define CORGI_GPIO_LED_GREEN (CORGI_SCOOP_GPIO_BASE + 0) #define CORGI_GPIO_SWA (CORGI_SCOOP_GPIO_BASE + 1) /* Hinge Switch A */ #define CORGI_GPIO_SWB (CORGI_SCOOP_GPIO_BASE + 2) /* Hinge Switch B */ #define CORGI_GPIO_MUTE_L (CORGI_SCOOP_GPIO_BASE + 3) #define CORGI_GPIO_MUTE_R (CORGI_SCOOP_GPIO_BASE + 4) #define CORGI_GPIO_AKIN_PULLUP (CORGI_SCOOP_GPIO_BASE + 5) #define CORGI_GPIO_APM_ON (CORGI_SCOOP_GPIO_BASE + 6) #define CORGI_GPIO_BACKLIGHT_CONT (CORGI_SCOOP_GPIO_BASE + 7) #define CORGI_GPIO_MIC_BIAS (CORGI_SCOOP_GPIO_BASE + 8) #endif /* __ASM_ARCH_CORGI_H */ PK ! ��J� � include/mach/uncompress.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * arch/arm/mach-pxa/include/mach/uncompress.h * * Author: Nicolas Pitre * Copyright: (C) 2001 MontaVista Software Inc. */ #include <linux/serial_reg.h> #include <asm/mach-types.h> #define FFUART_BASE (0x40100000) #define BTUART_BASE (0x40200000) #define STUART_BASE (0x40700000) unsigned long uart_base; unsigned int uart_shift; unsigned int uart_is_pxa; static inline unsigned char uart_read(int offset) { return *(volatile unsigned char *)(uart_base + (offset << uart_shift)); } static inline void uart_write(unsigned char val, int offset) { *(volatile unsigned char *)(uart_base + (offset << uart_shift)) = val; } static inline int uart_is_enabled(void) { /* assume enabled by default for non-PXA uarts */ return uart_is_pxa ? uart_read(UART_IER) & UART_IER_UUE : 1; } static inline void putc(char c) { if (!uart_is_enabled()) return; while (!(uart_read(UART_LSR) & UART_LSR_THRE)) barrier(); uart_write(c, UART_TX); } /* * This does not append a newline */ static inline void flush(void) { } static inline void arch_decomp_setup(void) { /* initialize to default */ uart_base = FFUART_BASE; uart_shift = 2; uart_is_pxa = 1; if (machine_is_littleton() || machine_is_intelmote2() || machine_is_csb726() || machine_is_stargate2() || machine_is_cm_x300() || machine_is_balloon3()) uart_base = STUART_BASE; if (machine_is_arcom_zeus()) { uart_base = 0x10000000; /* nCS4 */ uart_shift = 1; uart_is_pxa = 0; } } PK ! V��_/ / include/mach/irqs.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * arch/arm/mach-pxa/include/mach/irqs.h * * Author: Nicolas Pitre * Created: Jun 15, 2001 * Copyright: MontaVista Software Inc. */ #ifndef __ASM_MACH_IRQS_H #define __ASM_MACH_IRQS_H #include <asm/irq.h> #define PXA_ISA_IRQ(x) (x) #define PXA_IRQ(x) (NR_IRQS_LEGACY + (x)) #define IRQ_SSP3 PXA_IRQ(0) /* SSP3 service request */ #define IRQ_MSL PXA_IRQ(1) /* MSL Interface interrupt */ #define IRQ_USBH2 PXA_IRQ(2) /* USB Host interrupt 1 (OHCI,PXA27x) */ #define IRQ_USBH1 PXA_IRQ(3) /* USB Host interrupt 2 (non-OHCI,PXA27x) */ #define IRQ_KEYPAD PXA_IRQ(4) /* Key pad controller */ #define IRQ_MEMSTK PXA_IRQ(5) /* Memory Stick interrupt (PXA27x) */ #define IRQ_ACIPC0 PXA_IRQ(5) /* AP-CP Communication (PXA930) */ #define IRQ_PWRI2C PXA_IRQ(6) /* Power I2C interrupt */ #define IRQ_HWUART PXA_IRQ(7) /* HWUART Transmit/Receive/Error (PXA26x) */ #define IRQ_OST_4_11 PXA_IRQ(7) /* OS timer 4-11 matches (PXA27x) */ #define IRQ_GPIO0 PXA_IRQ(8) /* GPIO0 Edge Detect */ #define IRQ_GPIO1 PXA_IRQ(9) /* GPIO1 Edge Detect */ #define IRQ_GPIO_2_x PXA_IRQ(10) /* GPIO[2-x] Edge Detect */ #define IRQ_USB PXA_IRQ(11) /* USB Service */ #define IRQ_PMU PXA_IRQ(12) /* Performance Monitoring Unit */ #define IRQ_I2S PXA_IRQ(13) /* I2S Interrupt (PXA27x) */ #define IRQ_SSP4 PXA_IRQ(13) /* SSP4 service request (PXA3xx) */ #define IRQ_AC97 PXA_IRQ(14) /* AC97 Interrupt */ #define IRQ_ASSP PXA_IRQ(15) /* Audio SSP Service Request (PXA25x) */ #define IRQ_USIM PXA_IRQ(15) /* Smart Card interface interrupt (PXA27x) */ #define IRQ_NSSP PXA_IRQ(16) /* Network SSP Service Request (PXA25x) */ #define IRQ_SSP2 PXA_IRQ(16) /* SSP2 interrupt (PXA27x) */ #define IRQ_LCD PXA_IRQ(17) /* LCD Controller Service Request */ #define IRQ_I2C PXA_IRQ(18) /* I2C Service Request */ #define IRQ_ICP PXA_IRQ(19) /* ICP Transmit/Receive/Error */ #define IRQ_ACIPC2 PXA_IRQ(19) /* AP-CP Communication (PXA930) */ #define IRQ_STUART PXA_IRQ(20) /* STUART Transmit/Receive/Error */ #define IRQ_BTUART PXA_IRQ(21) /* BTUART Transmit/Receive/Error */ #define IRQ_FFUART PXA_IRQ(22) /* FFUART Transmit/Receive/Error*/ #define IRQ_MMC PXA_IRQ(23) /* MMC Status/Error Detection */ #define IRQ_SSP PXA_IRQ(24) /* SSP Service Request */ #define IRQ_DMA PXA_IRQ(25) /* DMA Channel Service Request */ #define IRQ_OST0 PXA_IRQ(26) /* OS Timer match 0 */ #define IRQ_OST1 PXA_IRQ(27) /* OS Timer match 1 */ #define IRQ_OST2 PXA_IRQ(28) /* OS Timer match 2 */ #define IRQ_OST3 PXA_IRQ(29) /* OS Timer match 3 */ #define IRQ_RTC1Hz PXA_IRQ(30) /* RTC HZ Clock Tick */ #define IRQ_RTCAlrm PXA_IRQ(31) /* RTC Alarm */ #define IRQ_TPM PXA_IRQ(32) /* TPM interrupt */ #define IRQ_CAMERA PXA_IRQ(33) /* Camera Interface */ #define IRQ_CIR PXA_IRQ(34) /* Consumer IR */ #define IRQ_COMM_WDT PXA_IRQ(35) /* Comm WDT interrupt */ #define IRQ_TSI PXA_IRQ(36) /* Touch Screen Interface (PXA320) */ #define IRQ_ENHROT PXA_IRQ(37) /* Enhanced Rotary (PXA930) */ #define IRQ_USIM2 PXA_IRQ(38) /* USIM2 Controller */ #define IRQ_GCU PXA_IRQ(39) /* Graphics Controller (PXA3xx) */ #define IRQ_ACIPC1 PXA_IRQ(40) /* AP-CP Communication (PXA930) */ #define IRQ_MMC2 PXA_IRQ(41) /* MMC2 Controller */ #define IRQ_TRKBALL PXA_IRQ(43) /* Track Ball (PXA930) */ #define IRQ_1WIRE PXA_IRQ(44) /* 1-Wire Controller */ #define IRQ_NAND PXA_IRQ(45) /* NAND Controller */ #define IRQ_USB2 PXA_IRQ(46) /* USB 2.0 Device Controller */ #define IRQ_WAKEUP0 PXA_IRQ(49) /* EXT_WAKEUP0 */ #define IRQ_WAKEUP1 PXA_IRQ(50) /* EXT_WAKEUP1 */ #define IRQ_DMEMC PXA_IRQ(51) /* Dynamic Memory Controller */ #define IRQ_MMC3 PXA_IRQ(55) /* MMC3 Controller (PXA310) */ #define IRQ_U2O PXA_IRQ(64) /* USB OTG 2.0 Controller (PXA935) */ #define IRQ_U2H PXA_IRQ(65) /* USB Host 2.0 Controller (PXA935) */ #define IRQ_PXA935_MMC0 PXA_IRQ(72) /* MMC0 Controller (PXA935) */ #define IRQ_PXA935_MMC1 PXA_IRQ(73) /* MMC1 Controller (PXA935) */ #define IRQ_PXA935_MMC2 PXA_IRQ(74) /* MMC2 Controller (PXA935) */ #define IRQ_U2P PXA_IRQ(93) /* USB PHY D+/D- Lines (PXA935) */ #define PXA_GPIO_IRQ_BASE PXA_IRQ(96) #define PXA_NR_BUILTIN_GPIO (192) #define PXA_GPIO_TO_IRQ(x) (PXA_GPIO_IRQ_BASE + (x)) /* * The following interrupts are for board specific purposes. Since * the kernel can only run on one machine at a time, we can re-use * these. * By default, no board IRQ is reserved. It should be finished in * custom board since sparse IRQ is already enabled. */ #define IRQ_BOARD_START (PXA_GPIO_IRQ_BASE + PXA_NR_BUILTIN_GPIO) #define PXA_NR_IRQS (IRQ_BOARD_START) #ifndef __ASSEMBLY__ struct irq_data; struct pt_regs; void pxa_mask_irq(struct irq_data *); void pxa_unmask_irq(struct irq_data *); void icip_handle_irq(struct pt_regs *); void ichp_handle_irq(struct pt_regs *); void pxa_init_irq(int irq_nr, int (*set_wake)(struct irq_data *, unsigned int)); #endif #endif /* __ASM_MACH_IRQS_H */ PK ! Éc c include/mach/magician.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO and IRQ definitions for HTC Magician PDA phones * * Copyright (c) 2007 Philipp Zabel */ #ifndef _MAGICIAN_H_ #define _MAGICIAN_H_ #include <linux/gpio.h> #include <mach/irqs.h> /* * PXA GPIOs */ #define GPIO0_MAGICIAN_KEY_POWER 0 #define GPIO9_MAGICIAN_UNKNOWN 9 #define GPIO10_MAGICIAN_GSM_IRQ 10 #define GPIO11_MAGICIAN_GSM_OUT1 11 #define GPIO13_MAGICIAN_CPLD_IRQ 13 #define GPIO14_MAGICIAN_TSC2046_CS 14 #define GPIO18_MAGICIAN_UNKNOWN 18 #define GPIO22_MAGICIAN_VIBRA_EN 22 #define GPIO26_MAGICIAN_GSM_POWER 26 #define GPIO27_MAGICIAN_USBC_PUEN 27 #define GPIO30_MAGICIAN_BQ24022_nCHARGE_EN 30 #define GPIO37_MAGICIAN_KEY_HANGUP 37 #define GPIO38_MAGICIAN_KEY_CONTACTS 38 #define GPIO40_MAGICIAN_GSM_OUT2 40 #define GPIO48_MAGICIAN_UNKNOWN 48 #define GPIO56_MAGICIAN_UNKNOWN 56 #define GPIO57_MAGICIAN_CAM_RESET 57 #define GPIO75_MAGICIAN_SAMSUNG_POWER 75 #define GPIO83_MAGICIAN_nIR_EN 83 #define GPIO86_MAGICIAN_GSM_RESET 86 #define GPIO87_MAGICIAN_GSM_SELECT 87 #define GPIO90_MAGICIAN_KEY_CALENDAR 90 #define GPIO91_MAGICIAN_KEY_CAMERA 91 #define GPIO93_MAGICIAN_KEY_UP 93 #define GPIO94_MAGICIAN_KEY_DOWN 94 #define GPIO95_MAGICIAN_KEY_LEFT 95 #define GPIO96_MAGICIAN_KEY_RIGHT 96 #define GPIO97_MAGICIAN_KEY_ENTER 97 #define GPIO98_MAGICIAN_KEY_RECORD 98 #define GPIO99_MAGICIAN_HEADPHONE_IN 99 #define GPIO100_MAGICIAN_KEY_VOL_UP 100 #define GPIO101_MAGICIAN_KEY_VOL_DOWN 101 #define GPIO102_MAGICIAN_KEY_PHONE 102 #define GPIO103_MAGICIAN_LED_KP 103 #define GPIO104_MAGICIAN_LCD_VOFF_EN 104 #define GPIO105_MAGICIAN_LCD_VON_EN 105 #define GPIO106_MAGICIAN_LCD_DCDC_NRESET 106 #define GPIO107_MAGICIAN_DS1WM_IRQ 107 #define GPIO108_MAGICIAN_GSM_READY 108 #define GPIO114_MAGICIAN_UNKNOWN 114 #define GPIO115_MAGICIAN_nPEN_IRQ 115 #define GPIO116_MAGICIAN_nCAM_EN 116 #define GPIO119_MAGICIAN_UNKNOWN 119 #define GPIO120_MAGICIAN_UNKNOWN 120 /* * CPLD IRQs */ #define IRQ_MAGICIAN_SD (IRQ_BOARD_START + 0) #define IRQ_MAGICIAN_EP (IRQ_BOARD_START + 1) #define IRQ_MAGICIAN_BT (IRQ_BOARD_START + 2) #define IRQ_MAGICIAN_VBUS (IRQ_BOARD_START + 3) #define MAGICIAN_NR_IRQS (IRQ_BOARD_START + 8) /* * CPLD EGPIOs */ #define MAGICIAN_EGPIO_BASE PXA_NR_BUILTIN_GPIO #define MAGICIAN_EGPIO(reg,bit) \ (MAGICIAN_EGPIO_BASE + 8*reg + bit) /* output */ #define EGPIO_MAGICIAN_TOPPOLY_POWER MAGICIAN_EGPIO(0, 2) #define EGPIO_MAGICIAN_LED_POWER MAGICIAN_EGPIO(0, 5) #define EGPIO_MAGICIAN_GSM_RESET MAGICIAN_EGPIO(0, 6) #define EGPIO_MAGICIAN_LCD_POWER MAGICIAN_EGPIO(0, 7) #define EGPIO_MAGICIAN_SPK_POWER MAGICIAN_EGPIO(1, 0) #define EGPIO_MAGICIAN_EP_POWER MAGICIAN_EGPIO(1, 1) #define EGPIO_MAGICIAN_IN_SEL0 MAGICIAN_EGPIO(1, 2) #define EGPIO_MAGICIAN_IN_SEL1 MAGICIAN_EGPIO(1, 3) #define EGPIO_MAGICIAN_MIC_POWER MAGICIAN_EGPIO(1, 4) #define EGPIO_MAGICIAN_CODEC_RESET MAGICIAN_EGPIO(1, 5) #define EGPIO_MAGICIAN_CODEC_POWER MAGICIAN_EGPIO(1, 6) #define EGPIO_MAGICIAN_BL_POWER MAGICIAN_EGPIO(1, 7) #define EGPIO_MAGICIAN_SD_POWER MAGICIAN_EGPIO(2, 0) #define EGPIO_MAGICIAN_CARKIT_MIC MAGICIAN_EGPIO(2, 1) #define EGPIO_MAGICIAN_IR_RX_SHUTDOWN MAGICIAN_EGPIO(2, 2) #define EGPIO_MAGICIAN_FLASH_VPP MAGICIAN_EGPIO(2, 3) #define EGPIO_MAGICIAN_BL_POWER2 MAGICIAN_EGPIO(2, 4) #define EGPIO_MAGICIAN_BQ24022_ISET2 MAGICIAN_EGPIO(2, 5) #define EGPIO_MAGICIAN_NICD_CHARGE MAGICIAN_EGPIO(2, 6) #define EGPIO_MAGICIAN_GSM_POWER MAGICIAN_EGPIO(2, 7) /* input */ /* USB or AC charger type */ #define EGPIO_MAGICIAN_CABLE_TYPE MAGICIAN_EGPIO(4, 0) /* * Vbus is detected * FIXME behaves like (6,3), may differ for host/device */ #define EGPIO_MAGICIAN_CABLE_VBUS MAGICIAN_EGPIO(4, 1) #define EGPIO_MAGICIAN_BOARD_ID0 MAGICIAN_EGPIO(5, 0) #define EGPIO_MAGICIAN_BOARD_ID1 MAGICIAN_EGPIO(5, 1) #define EGPIO_MAGICIAN_BOARD_ID2 MAGICIAN_EGPIO(5, 2) #define EGPIO_MAGICIAN_LCD_SELECT MAGICIAN_EGPIO(5, 3) #define EGPIO_MAGICIAN_nSD_READONLY MAGICIAN_EGPIO(5, 4) #define EGPIO_MAGICIAN_EP_INSERT MAGICIAN_EGPIO(6, 1) /* FIXME behaves like (4,1), may differ for host/device */ #define EGPIO_MAGICIAN_CABLE_INSERTED MAGICIAN_EGPIO(6, 3) #endif /* _MAGICIAN_H_ */ PK ! S_�: : include/mach/bitfield.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 */ /* * FILE bitfield.h * * Version 1.1 * Author Copyright (c) Marc A. Viredaz, 1998 * DEC Western Research Laboratory, Palo Alto, CA * Date April 1998 (April 1997) * System Advanced RISC Machine (ARM) * Language C or ARM Assembly * Purpose Definition of macros to operate on bit fields. */ #ifndef __BITFIELD_H #define __BITFIELD_H #ifndef __ASSEMBLY__ #define UData(Data) ((unsigned long) (Data)) #else #define UData(Data) (Data) #endif /* * MACRO: Fld * * Purpose * The macro "Fld" encodes a bit field, given its size and its shift value * with respect to bit 0. * * Note * A more intuitive way to encode bit fields would have been to use their * mask. However, extracting size and shift value information from a bit * field's mask is cumbersome and might break the assembler (255-character * line-size limit). * * Input * Size Size of the bit field, in number of bits. * Shft Shift value of the bit field with respect to bit 0. * * Output * Fld Encoded bit field. */ #define Fld(Size, Shft) (((Size) << 16) + (Shft)) /* * MACROS: FSize, FShft, FMsk, FAlnMsk, F1stBit * * Purpose * The macros "FSize", "FShft", "FMsk", "FAlnMsk", and "F1stBit" return * the size, shift value, mask, aligned mask, and first bit of a * bit field. * * Input * Field Encoded bit field (using the macro "Fld"). * * Output * FSize Size of the bit field, in number of bits. * FShft Shift value of the bit field with respect to bit 0. * FMsk Mask for the bit field. * FAlnMsk Mask for the bit field, aligned on bit 0. * F1stBit First bit of the bit field. */ #define FSize(Field) ((Field) >> 16) #define FShft(Field) ((Field) & 0x0000FFFF) #define FMsk(Field) (((UData (1) << FSize (Field)) - 1) << FShft (Field)) #define FAlnMsk(Field) ((UData (1) << FSize (Field)) - 1) #define F1stBit(Field) (UData (1) << FShft (Field)) /* * MACRO: FInsrt * * Purpose * The macro "FInsrt" inserts a value into a bit field by shifting the * former appropriately. * * Input * Value Bit-field value. * Field Encoded bit field (using the macro "Fld"). * * Output * FInsrt Bit-field value positioned appropriately. */ #define FInsrt(Value, Field) \ (UData (Value) << FShft (Field)) /* * MACRO: FExtr * * Purpose * The macro "FExtr" extracts the value of a bit field by masking and * shifting it appropriately. * * Input * Data Data containing the bit-field to be extracted. * Field Encoded bit field (using the macro "Fld"). * * Output * FExtr Bit-field value. */ #define FExtr(Data, Field) \ ((UData (Data) >> FShft (Field)) & FAlnMsk (Field)) #endif /* __BITFIELD_H */ PK ! �0�A A include/mach/hx4700.hnu �[��� /* SPDX-License-Identifier: GPL-2.0-only */ /* * GPIO and IRQ definitions for HP iPAQ hx4700 * * Copyright (c) 2008 Philipp Zabel */ #ifndef _HX4700_H_ #define _HX4700_H_ #include <linux/gpio.h> #include <linux/mfd/asic3.h> #include "irqs.h" /* PXA_NR_BUILTIN_GPIO */ #define HX4700_ASIC3_GPIO_BASE PXA_NR_BUILTIN_GPIO #define HX4700_EGPIO_BASE (HX4700_ASIC3_GPIO_BASE + ASIC3_NUM_GPIOS) #define HX4700_NR_IRQS (IRQ_BOARD_START + 70) /* * PXA GPIOs */ #define GPIO0_HX4700_nKEY_POWER 0 #define GPIO12_HX4700_ASIC3_IRQ 12 #define GPIO13_HX4700_W3220_IRQ 13 #define GPIO14_HX4700_nWLAN_IRQ 14 #define GPIO18_HX4700_RDY 18 #define GPIO22_HX4700_LCD_RL 22 #define GPIO27_HX4700_CODEC_ON 27 #define GPIO32_HX4700_RS232_ON 32 #define GPIO52_HX4700_CPU_nBATT_FAULT 52 #define GPIO58_HX4700_TSC2046_nPENIRQ 58 #define GPIO59_HX4700_LCD_PC1 59 #define GPIO60_HX4700_CF_RNB 60 #define GPIO61_HX4700_W3220_nRESET 61 #define GPIO62_HX4700_LCD_nRESET 62 #define GPIO63_HX4700_CPU_SS_nRESET 63 #define GPIO65_HX4700_TSC2046_PEN_PU 65 #define GPIO66_HX4700_ASIC3_nSDIO_IRQ 66 #define GPIO67_HX4700_EUART_PS 67 #define GPIO70_HX4700_LCD_SLIN1 70 #define GPIO71_HX4700_ASIC3_nRESET 71 #define GPIO72_HX4700_BQ24022_nCHARGE_EN 72 #define GPIO73_HX4700_LCD_UD_1 73 #define GPIO75_HX4700_EARPHONE_nDET 75 #define GPIO76_HX4700_USBC_PUEN 76 #define GPIO81_HX4700_CPU_GP_nRESET 81 #define GPIO82_HX4700_EUART_RESET 82 #define GPIO83_HX4700_WLAN_nRESET 83 #define GPIO84_HX4700_LCD_SQN 84 #define GPIO85_HX4700_nPCE1 85 #define GPIO88_HX4700_TSC2046_CS 88 #define GPIO91_HX4700_FLASH_VPEN 91 #define GPIO92_HX4700_HP_DRIVER 92 #define GPIO93_HX4700_EUART_INT 93 #define GPIO94_HX4700_KEY_MAIL 94 #define GPIO95_HX4700_BATT_OFF 95 #define GPIO96_HX4700_BQ24022_ISET2 96 #define GPIO97_HX4700_nBL_DETECT 97 #define GPIO99_HX4700_KEY_CONTACTS 99 #define GPIO100_HX4700_AUTO_SENSE 100 /* BL auto brightness */ #define GPIO102_HX4700_SYNAPTICS_POWER_ON 102 #define GPIO103_HX4700_SYNAPTICS_INT 103 #define GPIO105_HX4700_nIR_ON 105 #define GPIO106_HX4700_CPU_BT_nRESET 106 #define GPIO107_HX4700_SPK_nSD 107 #define GPIO109_HX4700_CODEC_nPDN 109 #define GPIO110_HX4700_LCD_LVDD_3V3_ON 110 #define GPIO111_HX4700_LCD_AVDD_3V3_ON 111 #define GPIO112_HX4700_LCD_N2V7_7V3_ON 112 #define GPIO114_HX4700_CF_RESET 114 #define GPIO116_HX4700_CPU_HW_nRESET 116 /* * ASIC3 GPIOs */ #define GPIOC_BASE (HX4700_ASIC3_GPIO_BASE + 32) #define GPIOD_BASE (HX4700_ASIC3_GPIO_BASE + 48) #define GPIOC0_LED_RED (GPIOC_BASE + 0) #define GPIOC1_LED_GREEN (GPIOC_BASE + 1) #define GPIOC2_LED_BLUE (GPIOC_BASE + 2) #define GPIOC3_nSD_CS (GPIOC_BASE + 3) #define GPIOC4_CF_nCD (GPIOC_BASE + 4) /* Input */ #define GPIOC5_nCIOW (GPIOC_BASE + 5) /* Output, to CF */ #define GPIOC6_nCIOR (GPIOC_BASE + 6) /* Output, to CF */ #define GPIOC7_nPCE1 (GPIOC_BASE + 7) /* Input, from CPU */ #define GPIOC8_nPCE2 (GPIOC_BASE + 8) /* Input, from CPU */ #define GPIOC9_nPOE (GPIOC_BASE + 9) /* Input, from CPU */ #define GPIOC10_CF_nPWE (GPIOC_BASE + 10) /* Input */ #define GPIOC11_PSKTSEL (GPIOC_BASE + 11) /* Input, from CPU */ #define GPIOC12_nPREG (GPIOC_BASE + 12) /* Input, from CPU */ #define GPIOC13_nPWAIT (GPIOC_BASE + 13) /* Output, to CPU */ #define GPIOC14_nPIOIS16 (GPIOC_BASE + 14) /* Output, to CPU */ #define GPIOC15_nPIOR (GPIOC_BASE + 15) /* Input, from CPU */ #define GPIOD0_CPU_SS_INT (GPIOD_BASE + 0) /* Input */ #define GPIOD1_nKEY_CALENDAR (GPIOD_BASE + 1) #define GPIOD2_BLUETOOTH_WAKEUP (GPIOD_BASE + 2) #define GPIOD3_nKEY_HOME (GPIOD_BASE + 3) #define GPIOD4_CF_nCD (GPIOD_BASE + 4) /* Input, from CF */ #define GPIOD5_nPIO (GPIOD_BASE + 5) /* Input */ #define GPIOD6_nKEY_RECORD (GPIOD_BASE + 6) #define GPIOD7_nSDIO_DETECT (GPIOD_BASE + 7) #define GPIOD8_COM_DCD (GPIOD_BASE + 8) /* Input */ #define GPIOD9_nAC_IN (GPIOD_BASE + 9) #define GPIOD10_nSDIO_IRQ (GPIOD_BASE + 10) /* Input */ #define GPIOD11_nCIOIS16 (GPIOD_BASE + 11) /* Input, from CF */ #define GPIOD12_nCWAIT (GPIOD_BASE + 12) /* Input, from CF */ #define GPIOD13_CF_RNB (GPIOD_BASE + 13) /* Input */ #define GPIOD14_nUSBC_DETECT (GPIOD_BASE + 14) #define GPIOD15_nPIOW (GPIOD_BASE + 15) /* Input, from CPU */ /* * EGPIOs */ #define EGPIO0_VCC_3V3_EN (HX4700_EGPIO_BASE + 0) /* WLAN support chip */ #define EGPIO1_WL_VREG_EN (HX4700_EGPIO_BASE + 1) /* WLAN power */ #define EGPIO2_VCC_2V1_WL_EN (HX4700_EGPIO_BASE + 2) /* unused */ #define EGPIO3_SS_PWR_ON (HX4700_EGPIO_BASE + 3) /* smart slot power */ #define EGPIO4_CF_3V3_ON (HX4700_EGPIO_BASE + 4) /* CF 3.3V enable */ #define EGPIO5_BT_3V3_ON (HX4700_EGPIO_BASE + 5) /* BT 3.3V enable */ #define EGPIO6_WL1V8_EN (HX4700_EGPIO_BASE + 6) /* WLAN 1.8V enable */ #define EGPIO7_VCC_3V3_WL_EN (HX4700_EGPIO_BASE + 7) /* WLAN 3.3V enable */ #define EGPIO8_USB_3V3_ON (HX4700_EGPIO_BASE + 8) /* unused */ #endif /* _HX4700_H_ */ PK ! ���# �# include/mach/regs-lcd.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 */ #ifndef __ASM_ARCH_REGS_LCD_H #define __ASM_ARCH_REGS_LCD_H #include <mach/bitfield.h> /* * LCD Controller Registers and Bits Definitions */ #define LCCR0 (0x000) /* LCD Controller Control Register 0 */ #define LCCR1 (0x004) /* LCD Controller Control Register 1 */ #define LCCR2 (0x008) /* LCD Controller Control Register 2 */ #define LCCR3 (0x00C) /* LCD Controller Control Register 3 */ #define LCCR4 (0x010) /* LCD Controller Control Register 4 */ #define LCCR5 (0x014) /* LCD Controller Control Register 5 */ #define LCSR (0x038) /* LCD Controller Status Register 0 */ #define LCSR1 (0x034) /* LCD Controller Status Register 1 */ #define LIIDR (0x03C) /* LCD Controller Interrupt ID Register */ #define TMEDRGBR (0x040) /* TMED RGB Seed Register */ #define TMEDCR (0x044) /* TMED Control Register */ #define FBR0 (0x020) /* DMA Channel 0 Frame Branch Register */ #define FBR1 (0x024) /* DMA Channel 1 Frame Branch Register */ #define FBR2 (0x028) /* DMA Channel 2 Frame Branch Register */ #define FBR3 (0x02C) /* DMA Channel 2 Frame Branch Register */ #define FBR4 (0x030) /* DMA Channel 2 Frame Branch Register */ #define FBR5 (0x110) /* DMA Channel 2 Frame Branch Register */ #define FBR6 (0x114) /* DMA Channel 2 Frame Branch Register */ #define OVL1C1 (0x050) /* Overlay 1 Control Register 1 */ #define OVL1C2 (0x060) /* Overlay 1 Control Register 2 */ #define OVL2C1 (0x070) /* Overlay 2 Control Register 1 */ #define OVL2C2 (0x080) /* Overlay 2 Control Register 2 */ #define CMDCR (0x100) /* Command Control Register */ #define PRSR (0x104) /* Panel Read Status Register */ #define LCCR3_BPP(x) ((((x) & 0x7) << 24) | (((x) & 0x8) ? (1 << 29) : 0)) #define LCCR3_PDFOR_0 (0 << 30) #define LCCR3_PDFOR_1 (1 << 30) #define LCCR3_PDFOR_2 (2 << 30) #define LCCR3_PDFOR_3 (3 << 30) #define LCCR4_PAL_FOR_0 (0 << 15) #define LCCR4_PAL_FOR_1 (1 << 15) #define LCCR4_PAL_FOR_2 (2 << 15) #define LCCR4_PAL_FOR_3 (3 << 15) #define LCCR4_PAL_FOR_MASK (3 << 15) #define FDADR0 (0x200) /* DMA Channel 0 Frame Descriptor Address Register */ #define FDADR1 (0x210) /* DMA Channel 1 Frame Descriptor Address Register */ #define FDADR2 (0x220) /* DMA Channel 2 Frame Descriptor Address Register */ #define FDADR3 (0x230) /* DMA Channel 3 Frame Descriptor Address Register */ #define FDADR4 (0x240) /* DMA Channel 4 Frame Descriptor Address Register */ #define FDADR5 (0x250) /* DMA Channel 5 Frame Descriptor Address Register */ #define FDADR6 (0x260) /* DMA Channel 6 Frame Descriptor Address Register */ #define LCCR0_ENB (1 << 0) /* LCD Controller enable */ #define LCCR0_CMS (1 << 1) /* Color/Monochrome Display Select */ #define LCCR0_Color (LCCR0_CMS*0) /* Color display */ #define LCCR0_Mono (LCCR0_CMS*1) /* Monochrome display */ #define LCCR0_SDS (1 << 2) /* Single/Dual Panel Display Select */ #define LCCR0_Sngl (LCCR0_SDS*0) /* Single panel display */ #define LCCR0_Dual (LCCR0_SDS*1) /* Dual panel display */ #define LCCR0_LDM (1 << 3) /* LCD Disable Done Mask */ #define LCCR0_SFM (1 << 4) /* Start of frame mask */ #define LCCR0_IUM (1 << 5) /* Input FIFO underrun mask */ #define LCCR0_EFM (1 << 6) /* End of Frame mask */ #define LCCR0_PAS (1 << 7) /* Passive/Active display Select */ #define LCCR0_Pas (LCCR0_PAS*0) /* Passive display (STN) */ #define LCCR0_Act (LCCR0_PAS*1) /* Active display (TFT) */ #define LCCR0_DPD (1 << 9) /* Double Pixel Data (monochrome) */ #define LCCR0_4PixMono (LCCR0_DPD*0) /* 4-Pixel/clock Monochrome display */ #define LCCR0_8PixMono (LCCR0_DPD*1) /* 8-Pixel/clock Monochrome display */ #define LCCR0_DIS (1 << 10) /* LCD Disable */ #define LCCR0_QDM (1 << 11) /* LCD Quick Disable mask */ #define LCCR0_PDD (0xff << 12) /* Palette DMA request delay */ #define LCCR0_PDD_S 12 #define LCCR0_BM (1 << 20) /* Branch mask */ #define LCCR0_OUM (1 << 21) /* Output FIFO underrun mask */ #define LCCR0_LCDT (1 << 22) /* LCD panel type */ #define LCCR0_RDSTM (1 << 23) /* Read status interrupt mask */ #define LCCR0_CMDIM (1 << 24) /* Command interrupt mask */ #define LCCR0_OUC (1 << 25) /* Overlay Underlay control bit */ #define LCCR0_LDDALT (1 << 26) /* LDD alternate mapping control */ #define LCCR1_PPL Fld (10, 0) /* Pixels Per Line - 1 */ #define LCCR1_DisWdth(Pixel) (((Pixel) - 1) << FShft (LCCR1_PPL)) #define LCCR1_HSW Fld (6, 10) /* Horizontal Synchronization */ #define LCCR1_HorSnchWdth(Tpix) (((Tpix) - 1) << FShft (LCCR1_HSW)) #define LCCR1_ELW Fld (8, 16) /* End-of-Line pixel clock Wait - 1 */ #define LCCR1_EndLnDel(Tpix) (((Tpix) - 1) << FShft (LCCR1_ELW)) #define LCCR1_BLW Fld (8, 24) /* Beginning-of-Line pixel clock */ #define LCCR1_BegLnDel(Tpix) (((Tpix) - 1) << FShft (LCCR1_BLW)) #define LCCR2_LPP Fld (10, 0) /* Line Per Panel - 1 */ #define LCCR2_DisHght(Line) (((Line) - 1) << FShft (LCCR2_LPP)) #define LCCR2_VSW Fld (6, 10) /* Vertical Synchronization pulse - 1 */ #define LCCR2_VrtSnchWdth(Tln) (((Tln) - 1) << FShft (LCCR2_VSW)) #define LCCR2_EFW Fld (8, 16) /* End-of-Frame line clock Wait */ #define LCCR2_EndFrmDel(Tln) ((Tln) << FShft (LCCR2_EFW)) #define LCCR2_BFW Fld (8, 24) /* Beginning-of-Frame line clock */ #define LCCR2_BegFrmDel(Tln) ((Tln) << FShft (LCCR2_BFW)) #define LCCR3_API (0xf << 16) /* AC Bias pin trasitions per interrupt */ #define LCCR3_API_S 16 #define LCCR3_VSP (1 << 20) /* vertical sync polarity */ #define LCCR3_HSP (1 << 21) /* horizontal sync polarity */ #define LCCR3_PCP (1 << 22) /* Pixel Clock Polarity (L_PCLK) */ #define LCCR3_PixRsEdg (LCCR3_PCP*0) /* Pixel clock Rising-Edge */ #define LCCR3_PixFlEdg (LCCR3_PCP*1) /* Pixel clock Falling-Edge */ #define LCCR3_OEP (1 << 23) /* Output Enable Polarity */ #define LCCR3_OutEnH (LCCR3_OEP*0) /* Output Enable active High */ #define LCCR3_OutEnL (LCCR3_OEP*1) /* Output Enable active Low */ #define LCCR3_DPC (1 << 27) /* double pixel clock mode */ #define LCCR3_PCD Fld (8, 0) /* Pixel Clock Divisor */ #define LCCR3_PixClkDiv(Div) (((Div) << FShft (LCCR3_PCD))) #define LCCR3_ACB Fld (8, 8) /* AC Bias */ #define LCCR3_Acb(Acb) (((Acb) << FShft (LCCR3_ACB))) #define LCCR3_HorSnchH (LCCR3_HSP*0) /* HSP Active High */ #define LCCR3_HorSnchL (LCCR3_HSP*1) /* HSP Active Low */ #define LCCR3_VrtSnchH (LCCR3_VSP*0) /* VSP Active High */ #define LCCR3_VrtSnchL (LCCR3_VSP*1) /* VSP Active Low */ #define LCCR5_IUM(x) (1 << ((x) + 23)) /* input underrun mask */ #define LCCR5_BSM(x) (1 << ((x) + 15)) /* branch mask */ #define LCCR5_EOFM(x) (1 << ((x) + 7)) /* end of frame mask */ #define LCCR5_SOFM(x) (1 << ((x) + 0)) /* start of frame mask */ #define LCSR_LDD (1 << 0) /* LCD Disable Done */ #define LCSR_SOF (1 << 1) /* Start of frame */ #define LCSR_BER (1 << 2) /* Bus error */ #define LCSR_ABC (1 << 3) /* AC Bias count */ #define LCSR_IUL (1 << 4) /* input FIFO underrun Lower panel */ #define LCSR_IUU (1 << 5) /* input FIFO underrun Upper panel */ #define LCSR_OU (1 << 6) /* output FIFO underrun */ #define LCSR_QD (1 << 7) /* quick disable */ #define LCSR_EOF (1 << 8) /* end of frame */ #define LCSR_BS (1 << 9) /* branch status */ #define LCSR_SINT (1 << 10) /* subsequent interrupt */ #define LCSR_RD_ST (1 << 11) /* read status */ #define LCSR_CMD_INT (1 << 12) /* command interrupt */ #define LCSR1_IU(x) (1 << ((x) + 23)) /* Input FIFO underrun */ #define LCSR1_BS(x) (1 << ((x) + 15)) /* Branch Status */ #define LCSR1_EOF(x) (1 << ((x) + 7)) /* End of Frame Status */ #define LCSR1_SOF(x) (1 << ((x) - 1)) /* Start of Frame Status */ #define LDCMD_PAL (1 << 26) /* instructs DMA to load palette buffer */ /* overlay control registers */ #define OVLxC1_PPL(x) ((((x) - 1) & 0x3ff) << 0) /* Pixels Per Line */ #define OVLxC1_LPO(x) ((((x) - 1) & 0x3ff) << 10) /* Number of Lines */ #define OVLxC1_BPP(x) (((x) & 0xf) << 20) /* Bits Per Pixel */ #define OVLxC1_OEN (1 << 31) /* Enable bit for Overlay */ #define OVLxC2_XPOS(x) (((x) & 0x3ff) << 0) /* Horizontal Position */ #define OVLxC2_YPOS(x) (((x) & 0x3ff) << 10) /* Vertical Position */ #define OVL2C2_PFOR(x) (((x) & 0x7) << 20) /* Pixel Format */ /* smartpanel related */ #define PRSR_DATA(x) ((x) & 0xff) /* Panel Data */ #define PRSR_A0 (1 << 8) /* Read Data Source */ #define PRSR_ST_OK (1 << 9) /* Status OK */ #define PRSR_CON_NT (1 << 10) /* Continue to Next Command */ #define SMART_CMD_A0 (0x1 << 8) #define SMART_CMD_READ_STATUS_REG (0x0 << 9) #define SMART_CMD_READ_FRAME_BUFFER ((0x0 << 9) | SMART_CMD_A0) #define SMART_CMD_WRITE_COMMAND (0x1 << 9) #define SMART_CMD_WRITE_DATA ((0x1 << 9) | SMART_CMD_A0) #define SMART_CMD_WRITE_FRAME ((0x2 << 9) | SMART_CMD_A0) #define SMART_CMD_WAIT_FOR_VSYNC (0x3 << 9) #define SMART_CMD_NOOP (0x4 << 9) #define SMART_CMD_INTERRUPT (0x5 << 9) #define SMART_CMD(x) (SMART_CMD_WRITE_COMMAND | ((x) & 0xff)) #define SMART_DAT(x) (SMART_CMD_WRITE_DATA | ((x) & 0xff)) /* SMART_DELAY() is introduced for software controlled delay primitive which * can be inserted between command sequences, unused command 0x6 is used here * and delay ranges from 0ms ~ 255ms */ #define SMART_CMD_DELAY (0x6 << 9) #define SMART_DELAY(ms) (SMART_CMD_DELAY | ((ms) & 0xff)) #endif /* __ASM_ARCH_REGS_LCD_H */ PK ! ���Y"