diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2010-06-17 08:29:09 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2010-06-17 08:29:09 +0200 |
commit | f7c02aea7b45474126b4723dfeb2581b0fd55447 (patch) | |
tree | 891c5d2c71f0c00bbe35235d0e1a8158e567a019 /arch | |
parent | a81786a053ed1f08aab8d70d28dbf33691ab7a37 (diff) | |
parent | c5de3fdcce291a9049a03f86f0553032f5068916 (diff) | |
download | barebox-f7c02aea7b45474126b4723dfeb2581b0fd55447.tar.gz barebox-f7c02aea7b45474126b4723dfeb2581b0fd55447.tar.xz |
Merge branch 'net' into next
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/configs/eukrea_cpuimx25_defconfig | 23 | ||||
-rw-r--r-- | arch/arm/configs/eukrea_cpuimx27_defconfig | 2 | ||||
-rw-r--r-- | arch/arm/cpu/cpu.c | 15 | ||||
-rw-r--r-- | arch/arm/cpu/start.c | 17 | ||||
-rw-r--r-- | arch/arm/mach-imx/include/mach/imx27-regs.h | 3 |
5 files changed, 40 insertions, 20 deletions
diff --git a/arch/arm/configs/eukrea_cpuimx25_defconfig b/arch/arm/configs/eukrea_cpuimx25_defconfig index 81f9c80a3c..574d32292d 100644 --- a/arch/arm/configs/eukrea_cpuimx25_defconfig +++ b/arch/arm/configs/eukrea_cpuimx25_defconfig @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# barebox version: 2010.03.0 -# Fri Mar 19 11:12:11 2010 +# barebox version: 2010.05.0 +# Wed Jun 2 01:04:00 2010 # # CONFIG_BOARD_LINKER_SCRIPT is not set CONFIG_GENERIC_LINKER_SCRIPT=y @@ -88,19 +88,20 @@ CONFIG_MALLOC_SIZE=0x1000000 # CONFIG_EXPERIMENTAL is not set CONFIG_MACH_HAS_LOWLEVEL_INIT=y CONFIG_MACH_DO_LOWLEVEL_INIT=y -CONFIG_PROMPT="barebox:" +CONFIG_PROMPT="cpuimx25:" CONFIG_BAUDRATE=115200 -# CONFIG_LONGHELP is not set +CONFIG_LONGHELP=y CONFIG_CBSIZE=1024 CONFIG_MAXARGS=16 CONFIG_SHELL_HUSH=y # CONFIG_SHELL_SIMPLE is not set CONFIG_GLOB=y CONFIG_PROMPT_HUSH_PS2="cpuimx25>" +CONFIG_HUSH_FANCY_PROMPT=y CONFIG_CMDLINE_EDITING=y CONFIG_AUTO_COMPLETE=y CONFIG_DYNAMIC_CRC_TABLE=y -# CONFIG_ERRNO_MESSAGES is not set +CONFIG_ERRNO_MESSAGES=y CONFIG_TIMESTAMP=y CONFIG_CONSOLE_FULL=y CONFIG_CONSOLE_ACTIVATE_FIRST=y @@ -153,6 +154,7 @@ CONFIG_CMD_UMOUNT=y # CONFIG_CMD_CLEAR=y CONFIG_CMD_ECHO=y +CONFIG_CMD_ECHO_E=y # # memory @@ -172,9 +174,9 @@ CONFIG_CMD_FLASH=y # booting # CONFIG_CMD_BOOTM=y -# CONFIG_CMD_BOOTM_ZLIB is not set -# CONFIG_CMD_BOOTM_BZLIB is not set -# CONFIG_CMD_BOOTM_SHOW_TYPE is not set +CONFIG_CMD_BOOTM_ZLIB=y +CONFIG_CMD_BOOTM_BZLIB=y +CONFIG_CMD_BOOTM_SHOW_TYPE=y CONFIG_CMD_BOOTZ=y CONFIG_CMD_BOOTU=y # CONFIG_CMD_LINUX16 is not set @@ -188,6 +190,7 @@ CONFIG_CMD_HELP=y CONFIG_CMD_DEVINFO=y CONFIG_CMD_BMP=y CONFIG_CMD_GPIO=y +CONFIG_CMD_UNLZO=y CONFIG_NET=y CONFIG_NET_DHCP=y # CONFIG_NET_RARP is not set @@ -243,5 +246,9 @@ CONFIG_DRIVER_VIDEO_IMX=y # CONFIG_FS_CRAMFS is not set CONFIG_FS_RAMFS=y CONFIG_FS_DEVFS=y +CONFIG_ZLIB=y +CONFIG_BZLIB=y CONFIG_CRC32=y # CONFIG_GENERIC_FIND_NEXT_BIT is not set +CONFIG_PROCESS_ESCAPE_SEQUENCE=y +CONFIG_LZO_DECOMPRESS=y diff --git a/arch/arm/configs/eukrea_cpuimx27_defconfig b/arch/arm/configs/eukrea_cpuimx27_defconfig index 3b92c37ff2..a1cf1adb74 100644 --- a/arch/arm/configs/eukrea_cpuimx27_defconfig +++ b/arch/arm/configs/eukrea_cpuimx27_defconfig @@ -92,7 +92,7 @@ CONFIG_HAVE_CONFIGURABLE_MEMORY_LAYOUT=y CONFIG_MEMORY_LAYOUT_DEFAULT=y # CONFIG_MEMORY_LAYOUT_FIXED is not set CONFIG_STACK_SIZE=0x8000 -CONFIG_MALLOC_SIZE=0x400000 +CONFIG_MALLOC_SIZE=0x800000 # CONFIG_BROKEN is not set # CONFIG_EXPERIMENTAL is not set CONFIG_MACH_HAS_LOWLEVEL_INIT=y diff --git a/arch/arm/cpu/cpu.c b/arch/arm/cpu/cpu.c index fbc91aabf2..2b36a793dc 100644 --- a/arch/arm/cpu/cpu.c +++ b/arch/arm/cpu/cpu.c @@ -75,12 +75,19 @@ void arch_shutdown(void) int i; #ifdef CONFIG_MMU + /* nearly the same as below, but this could also disable + * second level cache. + */ mmu_disable(); +#else + asm volatile ( + "bl __mmu_cache_flush;" + "bl __mmu_cache_off;" + : + : + : "r0", "r1", "r2", "r3", "r6", "r10", "r12", "cc", "memory" + ); #endif - - /* flush I/D-cache */ - i = 0; - asm ("mcr p15, 0, %0, c7, c7, 0": :"r" (i)); } /** diff --git a/arch/arm/cpu/start.c b/arch/arm/cpu/start.c index 67d54a6a76..eea7dcfa3c 100644 --- a/arch/arm/cpu/start.c +++ b/arch/arm/cpu/start.c @@ -81,21 +81,24 @@ void __naked __bare_init reset(void) */ void __naked __bare_init board_init_lowlevel_return(void) { - uint32_t r; + uint32_t r, addr; + + /* + * Get runtime address of this function. Do not + * put any code above this. + */ + __asm__ __volatile__("1: adr %0, 1b":"=r"(addr)); /* Setup the stack */ r = STACK_BASE + STACK_SIZE - 16; __asm__ __volatile__("mov sp, %0" : : "r"(r)); - /* Get runtime address of this function */ - __asm__ __volatile__("adr %0, 0":"=r"(r)); - /* Get start of binary image */ - r -= (uint32_t)&board_init_lowlevel_return - TEXT_BASE; + addr -= (uint32_t)&board_init_lowlevel_return - TEXT_BASE; /* relocate to link address if necessary */ - if (r != TEXT_BASE) - memcpy((void *)TEXT_BASE, (void *)r, + if (addr != TEXT_BASE) + memcpy((void *)TEXT_BASE, (void *)addr, (unsigned int)&__bss_start - TEXT_BASE); /* clear bss */ diff --git a/arch/arm/mach-imx/include/mach/imx27-regs.h b/arch/arm/mach-imx/include/mach/imx27-regs.h index 6c31ccd914..4e2261261e 100644 --- a/arch/arm/mach-imx/include/mach/imx27-regs.h +++ b/arch/arm/mach-imx/include/mach/imx27-regs.h @@ -22,6 +22,7 @@ #define IMX_TIM5_BASE (0x1a000 + IMX_IO_BASE) #define IMX_UART5_BASE (0x1b000 + IMX_IO_BASE) #define IMX_UART6_BASE (0x1c000 + IMX_IO_BASE) +#define IMX_I2C2_BASE (0x1d000 + IMX_IO_BASE) #define IMX_TIM6_BASE (0x1f000 + IMX_IO_BASE) #define IMX_AIPI2_BASE (0x20000 + IMX_IO_BASE) #define IMX_PLL_BASE (0x27000 + IMX_IO_BASE) @@ -309,6 +310,8 @@ #define PE13_PF_UART1_RXD (GPIO_PORTE | GPIO_IN | GPIO_PF | 13) #define PE14_PF_UART1_CTS (GPIO_PORTE | GPIO_OUT | GPIO_PF | 14) #define PE15_PF_UART1_RTS (GPIO_PORTE | GPIO_IN | GPIO_PF | 15) +#define PC5_PF_I2C2_DATA (GPIO_PORTC | GPIO_OUT | GPIO_PF | 5) +#define PC6_PF_I2C2_CLK (GPIO_PORTC | GPIO_OUT | GPIO_PF | 6) #define PC7_PF_USBOTG_DATA5 (GPIO_PORTC | GPIO_PF | GPIO_OUT | 7) #define PC8_PF_USBOTG_DATA6 (GPIO_PORTC | GPIO_PF | GPIO_OUT | 8) #define PC9_PF_USBOTG_DATA0 (GPIO_PORTC | GPIO_PF | GPIO_OUT | 9) |