1c6ff132dSArnd Bergmann /* SPDX-License-Identifier: GPL-2.0 */ 2c6ff132dSArnd Bergmann /* 3c6ff132dSArnd Bergmann * Copyright 2008 Openmoko, Inc. 4c6ff132dSArnd Bergmann * Copyright 2008 Simtec Electronics 5c6ff132dSArnd Bergmann * http://armlinux.simtec.co.uk/ 6c6ff132dSArnd Bergmann * Ben Dooks <ben@simtec.co.uk> 7c6ff132dSArnd Bergmann * 8c6ff132dSArnd Bergmann * S3C64XX - Memory map definitions 9c6ff132dSArnd Bergmann */ 10c6ff132dSArnd Bergmann 11c6ff132dSArnd Bergmann #ifndef __ASM_ARCH_MAP_H 12c6ff132dSArnd Bergmann #define __ASM_ARCH_MAP_H __FILE__ 13c6ff132dSArnd Bergmann 14*91276c0fSArnd Bergmann #include "map-base.h" 15c6ff132dSArnd Bergmann #include "map-s3c.h" 16c6ff132dSArnd Bergmann 17c6ff132dSArnd Bergmann /* 18c6ff132dSArnd Bergmann * Post-mux Chip Select Regions Xm0CSn_ 19c6ff132dSArnd Bergmann * These may be used by SROM, NAND or CF depending on settings 20c6ff132dSArnd Bergmann */ 21c6ff132dSArnd Bergmann 22c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN0 (0x10000000) 23c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN1 (0x18000000) 24c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN2 (0x20000000) 25c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN3 (0x28000000) 26c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN4 (0x30000000) 27c6ff132dSArnd Bergmann #define S3C64XX_PA_XM0CSN5 (0x38000000) 28c6ff132dSArnd Bergmann 29c6ff132dSArnd Bergmann /* HSMMC units */ 30c6ff132dSArnd Bergmann #define S3C64XX_PA_HSMMC(x) (0x7C200000 + ((x) * 0x100000)) 31c6ff132dSArnd Bergmann #define S3C64XX_PA_HSMMC0 S3C64XX_PA_HSMMC(0) 32c6ff132dSArnd Bergmann #define S3C64XX_PA_HSMMC1 S3C64XX_PA_HSMMC(1) 33c6ff132dSArnd Bergmann #define S3C64XX_PA_HSMMC2 S3C64XX_PA_HSMMC(2) 34c6ff132dSArnd Bergmann 35c6ff132dSArnd Bergmann #define S3C_PA_UART (0x7F005000) 36c6ff132dSArnd Bergmann #define S3C_PA_UART0 (S3C_PA_UART + 0x00) 37c6ff132dSArnd Bergmann #define S3C_PA_UART1 (S3C_PA_UART + 0x400) 38c6ff132dSArnd Bergmann #define S3C_PA_UART2 (S3C_PA_UART + 0x800) 39c6ff132dSArnd Bergmann #define S3C_PA_UART3 (S3C_PA_UART + 0xC00) 40c6ff132dSArnd Bergmann #define S3C_UART_OFFSET (0x400) 41c6ff132dSArnd Bergmann 42c6ff132dSArnd Bergmann /* See notes on UART VA mapping in debug-macro.S */ 43c6ff132dSArnd Bergmann #define S3C_VA_UARTx(x) (S3C_VA_UART + (S3C_PA_UART & 0xfffff) + ((x) * S3C_UART_OFFSET)) 44c6ff132dSArnd Bergmann 45c6ff132dSArnd Bergmann #define S3C_VA_UART0 S3C_VA_UARTx(0) 46c6ff132dSArnd Bergmann #define S3C_VA_UART1 S3C_VA_UARTx(1) 47c6ff132dSArnd Bergmann #define S3C_VA_UART2 S3C_VA_UARTx(2) 48c6ff132dSArnd Bergmann #define S3C_VA_UART3 S3C_VA_UARTx(3) 49c6ff132dSArnd Bergmann 50c6ff132dSArnd Bergmann #define S3C64XX_PA_SROM (0x70000000) 51c6ff132dSArnd Bergmann 52c6ff132dSArnd Bergmann #define S3C64XX_PA_ONENAND0 (0x70100000) 53c6ff132dSArnd Bergmann #define S3C64XX_PA_ONENAND0_BUF (0x20000000) 54c6ff132dSArnd Bergmann #define S3C64XX_SZ_ONENAND0_BUF (SZ_64M) 55c6ff132dSArnd Bergmann 56c6ff132dSArnd Bergmann /* NAND and OneNAND1 controllers occupy the same register region 57c6ff132dSArnd Bergmann (depending on SoC POP version) */ 58c6ff132dSArnd Bergmann #define S3C64XX_PA_ONENAND1 (0x70200000) 59c6ff132dSArnd Bergmann #define S3C64XX_PA_ONENAND1_BUF (0x28000000) 60c6ff132dSArnd Bergmann #define S3C64XX_SZ_ONENAND1_BUF (SZ_64M) 61c6ff132dSArnd Bergmann 62c6ff132dSArnd Bergmann #define S3C64XX_PA_NAND (0x70200000) 63c6ff132dSArnd Bergmann #define S3C64XX_PA_FB (0x77100000) 64c6ff132dSArnd Bergmann #define S3C64XX_PA_USB_HSOTG (0x7C000000) 65c6ff132dSArnd Bergmann #define S3C64XX_PA_WATCHDOG (0x7E004000) 66c6ff132dSArnd Bergmann #define S3C64XX_PA_RTC (0x7E005000) 67c6ff132dSArnd Bergmann #define S3C64XX_PA_KEYPAD (0x7E00A000) 68c6ff132dSArnd Bergmann #define S3C64XX_PA_ADC (0x7E00B000) 69c6ff132dSArnd Bergmann #define S3C64XX_PA_SYSCON (0x7E00F000) 70c6ff132dSArnd Bergmann #define S3C64XX_PA_AC97 (0x7F001000) 71c6ff132dSArnd Bergmann #define S3C64XX_PA_IIS0 (0x7F002000) 72c6ff132dSArnd Bergmann #define S3C64XX_PA_IIS1 (0x7F003000) 73c6ff132dSArnd Bergmann #define S3C64XX_PA_TIMER (0x7F006000) 74c6ff132dSArnd Bergmann #define S3C64XX_PA_IIC0 (0x7F004000) 75c6ff132dSArnd Bergmann #define S3C64XX_PA_SPI0 (0x7F00B000) 76c6ff132dSArnd Bergmann #define S3C64XX_PA_SPI1 (0x7F00C000) 77c6ff132dSArnd Bergmann #define S3C64XX_PA_PCM0 (0x7F009000) 78c6ff132dSArnd Bergmann #define S3C64XX_PA_PCM1 (0x7F00A000) 79c6ff132dSArnd Bergmann #define S3C64XX_PA_IISV4 (0x7F00D000) 80c6ff132dSArnd Bergmann #define S3C64XX_PA_IIC1 (0x7F00F000) 81c6ff132dSArnd Bergmann 82c6ff132dSArnd Bergmann #define S3C64XX_PA_GPIO (0x7F008000) 83c6ff132dSArnd Bergmann #define S3C64XX_SZ_GPIO SZ_4K 84c6ff132dSArnd Bergmann 85c6ff132dSArnd Bergmann #define S3C64XX_PA_SDRAM (0x50000000) 86c6ff132dSArnd Bergmann 87c6ff132dSArnd Bergmann #define S3C64XX_PA_CFCON (0x70300000) 88c6ff132dSArnd Bergmann 89c6ff132dSArnd Bergmann #define S3C64XX_PA_VIC0 (0x71200000) 90c6ff132dSArnd Bergmann #define S3C64XX_PA_VIC1 (0x71300000) 91c6ff132dSArnd Bergmann 92c6ff132dSArnd Bergmann #define S3C64XX_PA_MODEM (0x74108000) 93c6ff132dSArnd Bergmann 94c6ff132dSArnd Bergmann #define S3C64XX_PA_USBHOST (0x74300000) 95c6ff132dSArnd Bergmann 96c6ff132dSArnd Bergmann #define S3C64XX_PA_USB_HSPHY (0x7C100000) 97c6ff132dSArnd Bergmann 98c6ff132dSArnd Bergmann /* compatibility defines. */ 99c6ff132dSArnd Bergmann #define S3C_PA_TIMER S3C64XX_PA_TIMER 100c6ff132dSArnd Bergmann #define S3C_PA_HSMMC0 S3C64XX_PA_HSMMC0 101c6ff132dSArnd Bergmann #define S3C_PA_HSMMC1 S3C64XX_PA_HSMMC1 102c6ff132dSArnd Bergmann #define S3C_PA_HSMMC2 S3C64XX_PA_HSMMC2 103c6ff132dSArnd Bergmann #define S3C_PA_IIC S3C64XX_PA_IIC0 104c6ff132dSArnd Bergmann #define S3C_PA_IIC1 S3C64XX_PA_IIC1 105c6ff132dSArnd Bergmann #define S3C_PA_NAND S3C64XX_PA_NAND 106c6ff132dSArnd Bergmann #define S3C_PA_ONENAND S3C64XX_PA_ONENAND0 107c6ff132dSArnd Bergmann #define S3C_PA_ONENAND_BUF S3C64XX_PA_ONENAND0_BUF 108c6ff132dSArnd Bergmann #define S3C_SZ_ONENAND_BUF S3C64XX_SZ_ONENAND0_BUF 109c6ff132dSArnd Bergmann #define S3C_PA_FB S3C64XX_PA_FB 110c6ff132dSArnd Bergmann #define S3C_PA_USBHOST S3C64XX_PA_USBHOST 111c6ff132dSArnd Bergmann #define S3C_PA_USB_HSOTG S3C64XX_PA_USB_HSOTG 112c6ff132dSArnd Bergmann #define S3C_PA_RTC S3C64XX_PA_RTC 113c6ff132dSArnd Bergmann #define S3C_PA_WDT S3C64XX_PA_WATCHDOG 114c6ff132dSArnd Bergmann #define S3C_PA_SPI0 S3C64XX_PA_SPI0 115c6ff132dSArnd Bergmann #define S3C_PA_SPI1 S3C64XX_PA_SPI1 116c6ff132dSArnd Bergmann 117c6ff132dSArnd Bergmann #define SAMSUNG_PA_ADC S3C64XX_PA_ADC 118c6ff132dSArnd Bergmann #define SAMSUNG_PA_CFCON S3C64XX_PA_CFCON 119c6ff132dSArnd Bergmann #define SAMSUNG_PA_KEYPAD S3C64XX_PA_KEYPAD 120c6ff132dSArnd Bergmann #define SAMSUNG_PA_TIMER S3C64XX_PA_TIMER 121c6ff132dSArnd Bergmann 122c6ff132dSArnd Bergmann #endif /* __ASM_ARCH_6400_MAP_H */ 123