summaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2012-12-04mxs: Implement common function to setup VDDxMarek Vasut
Implement common function to setup the VDDIO, VDDD and VDDA voltage. Right now, there are two almost identical functions to setup VDDIO and VDDD, which is prone to breakage. Pull out the differences into constant structure and pass them as an argument to the common function. Moreover, the function has almost identical loops for setting higher and lower VDDx voltage. Merge these two loops. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <fabio.estevam@freescale.com>
2012-12-04mx28: Rename regs-power.h to regs-power-mx28.hMarek Vasut
The i.MX23 has different register layout and bit placement in the power supply. Thus, in order to be able to add support for MX23, rename the MX28's regs-power.h to regs-power-mx28.h . Moreover, add ifdef around inclusion of regs-*-mx28.h in imx-regs.h so the MX23 boards will include proper set of registers. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-12-04mx28: Remove SET, CLR, TOG ops from PLLxCTRL1 registersMarek Vasut
These registers don't have _SET, _CLR and _TOG at the respective offsets available, these registers has to be toggled via R-M-W if needed. Thus do not export these offsets anymore. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Otavio Salvador <otavio@ossystems.com.br>
2012-11-24mx28: Fix typo in POWER_DCLIMITS_NEGLIMIT_OFFSETMarek Vasut
The POWER_DCLIMITS_NEGLIMIT_OFFSET bit in mx28 power supply block is not called POWER_DCLIMITS_NETLIMIT_OFFSET, but POWER_DCLIMITS_NEGLIMIT_OFFSET. Correct the name in the header file. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-11-24mx28: Fix typo in POWER_MINPWR_VBG_OFFMarek Vasut
The POWER_MINPWR_VBG_OFF bit in mx28 power supply block is not called POWER_MINPWR_FBG_OFF, but POWER_MINPWR_VBG_OFF. Correct the name in the header file. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-11-19mx5: Mark lowlevel_init board-specific codeBenoît Thébaudeau
The mx5 lowlevel_init.S contains board-specific code based on the reference design. Let's keep it since it avoids creating new lowlevel_init files and it may be used by many boards. But add a config to make it optional in order not to cause issues on boards not following this part of the reference design. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Matt Sealey <matt@genesi-usa.com> Acked-by: Stefano Babic <sbabic@denx.de>
2012-11-19mx6: clock: Only show CSPI clock if CSPI is enabledFabio Estevam
If a board does not enable CSPI, there is no need to show the CSPI clock frequency as part of the 'clock' command. Reported-by: Dirk Behme <dirk.behme@gmail.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Dirk Behme <dirk.behme@gmail.com>
2012-11-19mx5: Print CSPI clock in 'clock' commandFabio Estevam
Print CSPI clock in 'clock' command. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2012-11-19mx5: Align SPI CS naming with i.MX53 reference manualFabio Estevam
Align SPI chip select naming with i.MX53 reference manual. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2012-11-16ehci-mxc: Add support for i.MX35Benoît Thébaudeau
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-11-16ehci-mxc: Define host offsetsBenoît Thébaudeau
Some MXC SoCs like the i.MX35 have hosts located at unusual offsets, so prepare to the introduction of i.MX35 support by defining the ehci-mxc hosts offsets at SoC level. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-11-16mx31: Move EHCI definitions to ehci-fsl.hBenoît Thébaudeau
The EHCI definitions in i.MX31's imx-regs.h are MXC-generic, so move them to ehci-fsl.h so that all MXC SoCs can use them. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Marek Vasut <marex@denx.de> Cc: Stefano Babic <sbabic@denx.de>
2012-11-10arch-mx6: add mx6dl_pins.hTroy Kisky
Only the values used in the sabrelite board are added currently. Add more as other boards use them. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
2012-11-10imx-common: cpu: add imx_ddr_sizeTroy Kisky
Read memory setup registers to determine size of available ram. This routine works for mx53/mx6x I need this because when mx6solo called get_ram_size with a too large maximum size, the system hanged. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
2012-11-10mx6: soc: update get_cpu_rev and get_imx_type for mx6solo/sololiteTroy Kisky
Previously, the same value was returned for both mx6dl and mx6solo. Check number of processors to differeniate. Also, a freescale patch says that sololite has its cpu/rev stored at 0x280 instead of 0x260. I don't have a sololite to verify. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
2012-11-10Merge git://git.denx.de/u-bootStefano Babic
2012-11-05Merge branch 'master' of git://git.denx.de/u-boot-armTom Rini
2012-11-04include/linux/byteorder: import latest endian definitions from linuxKim Phillips
u-boot's byteorder headers did not contain endianness attributions for use with sparse, causing a lot of false positives. Import the kernel's latest definitions, and enable them by including compiler.h and types.h. They come with 'const' added for some swab functions, so fix those up, too: include/linux/byteorder/big_endian.h:46:2: warning: passing argument 1 of '__swab64p' discards 'const' qualifier from pointer target type [enabled by default] Also, note: u-boot's historic __BYTE_ORDER definition has been preserved (for the time being at least). We also remove ad-hoc barrier() definitions, since we're including compiler.h in files that hadn't in the past: macb.c:54:0: warning: "barrier" redefined [enabled by default] In addition, including compiler.h in byteorder changes the 'noinline' definition to expand to __attribute__((noinline)). This fixes arch/powerpc/lib/bootm.c: bootm.c:329:16: error: attribute '__attribute__': unknown attribute bootm.c:329:16: error: expected ')' before '__attribute__' bootm.c:329:25: error: expected identifier or '(' before ')' token powerpc sparse builds yield: include/common.h:356:22: error: marked inline, but without a definition the unknown-reason inlining without a definition is considered obsolete given it was part of the 2002 initial commit, and no arm version was 'fixed.' also fixed: ydirectenv.h:60:0: warning: "inline" redefined [enabled by default] and: Configuring for devconcenter - Board: intip, Options: DEVCONCENTER make[1]: *** [4xx_ibm_ddr2_autocalib.o] Error 1 make: *** [arch/powerpc/cpu/ppc4xx/libppc4xx.o] Error 2 powerpc-fsl-linux-size: './u-boot': No such file 4xx_ibm_ddr2_autocalib.c: In function 'DQS_autocalibration': include/asm/ppc4xx-sdram.h:1407:13: sorry, unimplemented: inlining failed in call to 'ppc4xx_ibm_ddr2_register_dump': function body not available 4xx_ibm_ddr2_autocalib.c:1243:32: sorry, unimplemented: called from here and: In file included from crc32.c:50:0: crc32table.h:4:1: warning: implicit declaration of function '___constant_swab32' [-Wimplicit-function-declaration] crc32table.h:4:1: error: initializer element is not constant crc32table.h:4:1: error: (near initialization for 'crc32table_le[0]') Signed-off-by: Kim Phillips <kim.phillips@freescale.com> [trini: Remove '#endif' in include/common.h around setenv portion] Signed-off-by: Tom Rini <trini@ti.com>
2012-11-04socfpga/spl: Remove malloc.hVikram Narayanan
Remove unused header Signed-off-by: Vikram Narayanan <vikram186@gmail.com>
2012-11-04socfpga/spl: Remove timer_init from spl_board_initVikram Narayanan
Timer is initialized already in board_init_r function in (common/spl/spl.c) No need to initialize it again Signed-off-by: Vikram Narayanan <vikram186@gmail.com> Cc: Dinh Nguyen <dinguyen@altera.com>
2012-11-03Merge remote-tracking branch 'u-boot-ti/master'Albert ARIBAUD
2012-10-30omap3: Rework board.c for !CONFIG_SYS_L2CACHE_OFFTom Rini
When CONFIG_SYS_L2CACHE_OFF is defined we end up with a few warnings currently. Re-order functions so that we don't have that anymore. Signed-off-by: Tom Rini <trini@ti.com>
2012-10-30arm bootm: Allow to pass board specified atagsPali Rohár
Board can implement function setup_board_tags which is used for adding atags Signed-off-by: Pali Rohár <pali.rohar@gmail.com>
2012-10-29arm720t: add back common.h includeAllen Martin
Add back common.h header that was removed in previous patch so that CONFIG_TEGRA can be evaluated correctly. Signed-off-by: Allen Martin <amartin@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
2012-10-29tegra20: initialize variable to avoid compiler warningAllen Martin
Initialize this variable to avoid a compiler warning about possible use of uninitialized variable with gcc 4.4.6. Signed-off-by: Allen Martin <amartin@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
2012-10-29tegra: move to common SPL frameworkAllen Martin
Change tegra SPL to use common SPL framework. Any tegra specific initialization is now done in spl_board_init() instead of board_init_f()/board_init_r(). Only one SPL boot target is supported on tegra, which is boot to RAM image. jump_to_image_no_args() must be overridden on tegra so the host CPU can be initialized. Signed-off-by: Allen Martin <amartin@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com> Tested-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
2012-10-29ARM: enhance u-boot.lds to detect over-sized SPLStephen Warren
Add an ASSERT() to u-boot.lds to detect an SPL that doesn't fit within SPL_TEXT_BASE..SPL_MAX_SIZE. Different .lds files implement this check in two possible ways: 1) An ASSERT() like this 2) Defining a MEMORY region of size SPL_MAX_SIZE, and re-directing all linker output into that region. Since u-boot.lds is used for both SPL and main U-Boot, this would entail only sometimes defining a MEMORY region, and only sometimes performing that redirection, and hence option (1) was deemed much simpler, and hence implemented. Note that this causes build failures at least for NVIDIA Tegra Seaboard and Ventana. However, these are legitimate; the SPL doesn't fit within the required space, and this does cause runtime issues. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Allen Martin <amartin@nvidia.com> Acked-by: Tom Rini <trini@ti.com> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
2012-10-27Merge remote-tracking branch 'u-boot-imx/master'Albert ARIBAUD
2012-10-26ARM: fix u-boot.lds for -ffunction-sections/-fdata-sectionsStephen Warren
When -ffunction-sections or -fdata-section are used, symbols are placed into sections such as .data.eserial1_device and .bss.serial_current. Update the linker script to explicitly include these. Without this change (at least with my gcc-4.5.3 built using crosstool-ng), I see that the sections do end up being included, but __bss_end__ gets set to the same value as __bss_start. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Allen Martin <amartin@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2012-10-26arm: ks8695: use defined constants for UARTYann Vernier
CONFIG_BAUDRATE and KS8695_UART_LINEC_WLEN8 used for UART registers
2012-10-26arm720: Remove CONFIG_ARM7_REVDMarek Vasut
This is a dead code, remove it. Signed-off-by: Marek Vasut <marex@denx.de>
2012-10-26arm720: Further clean up the arm720t directoryMarek Vasut
Clean up away old macros and such, so the file doesn't start piling up cruft. Signed-off-by: Marek Vasut <marex@denx.de> clean
2012-10-26stdio: Remove the CLPS7111 serial driverMarek Vasut
This driver is no longer used, remove it. Signed-off-by: Marek Vasut <marex@denx.de>
2012-10-26arm: Remove support for NETARMMarek Vasut
This stuff has been rotting in the tree for a while now. Remove it. Signed-off-by: Marek Vasut <marex@denx.de>
2012-10-26arm: Remove support for s3c4510Marek Vasut
This stuff has been rotting in the tree for a year now. Remove it. Signed-off-by: Marek Vasut <marex@denx.de>
2012-10-26arm: Remove support for lpc2292Marek Vasut
This stuff has been rotting in the tree for a year now. Remove it. Signed-off-by: Marek Vasut <marex@denx.de>
2012-10-26mx25: Place common functions into sys_proto.hFabio Estevam
imx-regs.h is meant to contain SoC register definitions. Common SoC funtions should go to sys_proto.h instead. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2012-10-26MX35: add support for woodburn boardStefano Babic
The woodburn board is based on the MX35 SOC. Support for both external (NOR) and internal (SD Card) boot mode are added. It uses the generic SPL framework to implement the internal boot mode. The following peripherals are supported: - Ethernet (FEC) - SD Card - NAND (512 MB) - NOR Flash In the internal boot mode, a simple imximage header is generated to set the address in internal RAM where the SOC must copy the SPL code. The initial setup is then demanded to the SPL itself. Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26ARM: Add SPL target to arm1136Stefano Babic
The patch adds SPL for the arm1136 architecture and inserts SPL (the produced binary) to clobber target in the main Makefile. Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26MX35: Add soc_boot_mode and soc_boot_device to MX35Stefano Babic
The functions are required to use the generic SPL Framework. Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26MX35: add LOW_LEVEL_SRAM_STACK to use SPL_FRAMEWORKStefano Babic
Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26ARM: Fix start.S when used with SPL in arm1136Stefano Babic
This patch modifies start.S for the arm1136 to make it conform to start.S in armv7 architecture, to make it usable if the SPL framework is used. Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26MX5: fix warning in clock.cStefano Babic
Patch fix warnings compiling with ELDK-4.2: clock.c: In function 'get_standard_pll_sel_clk': clock.c:341: warning: 'freq' may be used uninitialized in this function Reported-by : Marek Vasut <marex@denx.de> Signed-off-by: Stefano Babic <sbabic@denx.de>
2012-10-26Merge remote-tracking branch 'u-boot-atmel/master'Albert ARIBAUD
2012-10-26Merge remote-tracking branch 'u-boot-ti/master'Albert ARIBAUD
2012-10-25am33xx: Enable UART{1,2,3,4,5} clocksAndrew Bradford
If configured to use UART{1,2,3,4,5} such as on the Beaglebone RS232 cape or the am335x_evm daughterboard, enable the required clocks for the UART in use. Signed-off-by: Andrew Bradford <andrew@bradfordembedded.com>
2012-10-25am33xx/ddr_defs.h: rename DDR2/DDR3 defines to their actual part numbersPeter Korsgaard
So other parts can be added. Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
2012-10-25am33xx: support board specific ddr settingsPeter Korsgaard
Move the hardcoded ddr2/ddr3 settings for the ti boards to board code, so other boards can use different types/timings. Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com> [trini: Make apply with rtc32k_enable() in the file] Signed-off-by: Tom Rini <trini@ti.com>
2012-10-25am33xx: move generic parts of pinmux handling out from board/ti/am335xPeter Korsgaard
So they are available for other boards. Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>
2012-10-25am33xx/board: use cpu_mmc_init() for default mmc initializationPeter Korsgaard
So platforms can override it with board_mmc_init() if needed. Signed-off-by: Peter Korsgaard <peter.korsgaard@barco.com>