summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-09-17x86: doc: Document some porting hints about Intel QuarkBin Meng
Document porting considerations for Intel Quark based board, including MRC parameters and PCIe initialization. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: galileo: Add PCIe root port IRQ routingBin Meng
Now we have enabled PCIe root port on Quark SoC, add its PIRQ routing information in the device tree as well. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: quark: Initialize thermal sensor properlyBin Meng
Thermal sensor on Quark SoC needs to be properly initialized per Quark firmware writer guide, otherwise when booting Linux kernel, it triggers system shutdown because of wrong temperature in the thermal sensor is detected by the kernel driver (see below): [ 5.119819] thermal_sys: Critical temperature reached(206 C),shutting down [ 5.128997] Failed to start orderly shutdown: forcing the issue [ 5.135495] Emergency Sync complete Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: quark: Lock HMBOUND register before jumping to kernelBin Meng
When Linux kernel boots, it hangs at: [ 0.829408] Intel Quark side-band driver registered This happens when Quark kernel Isolated Memory Region (IMR) driver tries to lock an IMR register to protect kernel's text and rodata sections. However in order to have IMR function correctly, HMBOUND register must be locked otherwise the system just hangs. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: quark: Convert to use clrbits, setbits, clrsetbits macrosBin Meng
Change existing codes to use clrbits, setbits, clrsetbits macros. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: quark: Add clrbits, setbits, clrsetbits macros for message port accessBin Meng
On Intel Quark, lots of registers on the message port need be programmed. Add handy clrbits, setbits, clrsetbits macros for message port access. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: galileo: Enable random mac address for QuarkBin Meng
Not like other Intel Ethernet controllers (e.g.: E1000), Intel Quark SoC integrated designware Ethernet controller does not have a chipset defined way to store/restore mac address. Enable random mac address so that we can use Ethernet even without 'ethaddr'. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: quark: Add PCIe/USB static register programming after memory initBin Meng
This adds static register programming for PCIe and USB after memory init as required by Quark firmware writer guide. Although not doing this did not cause any malfunction, just do it for safety. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17x86: Convert to use driver model eth on quark/galileoBin Meng
Convert to use DM version of Designware ethernet driver on Intel quark/galileo. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17net: designware: Add support to PCI designware devicesBin Meng
The Designware ethernet controller is also seen on PCI bus, e.g. on Intel Quark SoC. Add this support in the DM version driver. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-17dm: pci: Add an inline API to test if a device is on a PCI busBin Meng
Introduce device_is_on_pci_bus() which can be utilized by driver to test if a device is on a PCI bus. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
2015-09-16Merge git://git.denx.de/u-boot-fdtTom Rini
2015-09-15kbuild: fixdep: drop meaningless hash table initializationMasahiro Yamada
The clear_config() is called just once at the beginning of this program, but the global variable hashtab[] is already zero-filled at the start-up. [ Linux commit: d179e22762fd38414c4108acedd5feca4cf7e0d8 ] Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Michal Marek <mmarek@suse.com>
2015-09-15api_storage: Fix non-first storage device enumerationAndreas Färber
When enabling CONFIG_API and chain-loading GRUB2 on jetson-tk1, only the eMMC would show up as (hd0), but not the SD card, leading to GRUB not finding its configuration and modules, falling back to a rescue shell. This is because enum_ended would get set for !more after returning a cookie for the first MMC device in group 3. Fix this by properly setting the "more" argument also in the case of the first storage device of a group. Signed-off-by: Andreas Färber <afaerber@suse.de>
2015-09-15arm: Remove unused reference to nomadikStefan Roese
Commit 0abdd9d0 "arm: Remove nhk8815 boards and nomadik arch" missed one reference to this arch. Lets remove this as well. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Tom Rini <trini@konsulko.com>
2015-09-15arm: Remove unused ST-Ericsson u8500 archStefan Roese
This arch does not seem to be supported / used at all in the current U-Boot mainline source tree any more. So lets remove the core u8500 code and code that was only referenced by this platform. Please note that this patch also removes these config options: - CONFIG_PL011_SERIAL_RLCR - CONFIG_PL011_SERIAL_FLUSH_ON_INIT As they only seem to be referenced by u8500 based boards. Without any such board in the current code, these config option don't make sense any more. Lets remove them as well. If someone still wants to use this platform, then please send patches to re-enable support by adding at least one board that references this code. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: John Rigby <john.rigby@linaro.org> Cc: Simon Glass <sjg@chromium.org> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Cc: Tom Rini <trini@konsulko.com> Cc: Heiko Schocher <hs@denx.de> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Reviewed-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2015-09-15mtd: nand: fsmc: Fixes and cleanup for fsmc_nand_switch_ecc()Stefan Roese
This patch addresses some comments raised by Scott in the last versions. Here the changes in detail: - Removed __maybe_unused as its not needed - Added check for strength == 4 and error out for the unsupported ECC strength values - Don't set .caclulate, .correct, and .bytes for NAND_ECC_SOFT_BCH as this will be done in nand_scan_tail() - Set .caclulate back to fsmc_read_hwecc() in the HW case - Added comment that this function will only be called on SPEAr platforms, not supporting the BCH8 HW ECC (FSMC_VER8) Signed-off-by: Stefan Roese <sr@denx.de> Cc: Scott Wood <scottwood@freescale.com> Cc: Tom Rini <trini@konsulko.com> Acked-by: Scott Wood <scottwood@freescale.com>
2015-09-15env: import: hashtable: Free memory allocated before exiting from himport_r()Lukasz Majewski
ithout this patch memory is not released on early exit. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl>
2015-09-15env: import: hashtable: Prevent buffer overrun when importing environment ↵Lukasz Majewski
from file Lets consider following scenario: - One uses echo -n "key=value" to define environment variable in a file (single variable) - The file content is "key=value" without any terminating byte (e.g. 0x0a or 0x0d). - The file is loaded to u-boot non zero'ed RAM buffer (with load command). - Then "env import -t -r $loadaddr $filesize" is executed. - Due to lack of proper termination byte we have classical example of buffer overrun. This patch prevents from this by allocating one extra byte than size and explicitly null terminate it. There should be no change for normal env import operation after applying this patch. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl>
2015-09-15cli_simple.c: fix possible overflow when copying the stringImran Zaman
Bigger source buffer than dest buffer could overflow when copying strings. Source and destination buffer sizes are same now. Signed-off-by: Imran Zaman <imran.zaman@intel.com>
2015-09-15ti816x: Switch to SYS_GENERIC_BOARDTom Rini
Tested on my TI186x rev E. (PG2.0) and take over maintainership. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2015-09-15ti814x_evm: Switch to SYS_GENERIC_BOARDTom Rini
Take over maintainership as well. Not tested as PG2.0 (which I have) needs additional work over PG1.0 (which Matt has). Cc: Matt Porter <mporter@konsulko.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2015-09-15omap3_evm_common.h: Switch to SYS_GENERIC_BOARDTom Rini
Tested on my OMAP3 uEVM. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2015-09-15fdt: add new fdt address parsing functionsStephen Warren
fdtdec_get_addr_size() hard-codes the number of cells used to represent an address or size in DT. This is incorrect in many cases depending on the DT binding for a particular node or property (e.g. it is incorrect for the "reg" property). In most cases, DT parsing code must use the properties #address-cells and #size-cells to parse addres properties. This change splits up the implementation of fdtdec_get_addr_size() so that the core logic can be used for both hard-coded and non-hard-coded cases. Various wrapper functions are implemented that support cases where hard-coded cell counts should or should not be used, and where the client does and doesn't know the parent node ID that contains the properties #address-cells and #size-cells. dev_get_addr() is updated to use the new functions. Core functionality in fdtdec_get_addr_size_fixed() is widely tested via fdtdec_get_addr_size(). I tested fdtdec_get_addr_size_auto_noparent() and dev_get_addr() by manually modifying the Tegra I2C driver to invoke them. Much of the core implementation of fdtdec_get_addr_size_fixed(), fdtdec_get_addr_size_auto_parent(), and fdtdec_get_addr_size_auto_noparent() comes from Thierry Reding's previous commit "fdt: Fix fdtdec_get_addr_size() for 64-bit". Based-on-work-by: Thierry Reding <treding@nvidia.com> Cc: Thierry Reding <treding@nvidia.com> Cc: Simon Glass <sjg@chromium.org> Cc: Michal Suchanek <hramrach@gmail.com> Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Dropped #define DEBUG at the top of fdtdec.c: Signed-off-by: Simon Glass <sjg@chromium.org>
2015-09-13Merge branch 'rmobile' of git://git.denx.de/u-boot-shTom Rini
2015-09-13ARM: Kirkwood: fix IDE configuration on LaCie boardsSimon Guinot
On the LaCie boards netspace_max_v2 and net2big_v2, two internal hard drives are available. Additionally on the d2net_v2 board, an extra hard drive can be plugged via eSATA. This patch updates CONFIG_SYS_IDE_MAXBUS and CONFIG_SYS_IDE_MAXDEVICE accordingly for this boards. Signed-off-by: Simon Guinot <simon.guinot@sequanux.org>
2015-09-13arm: move edb93xx to generic board architectureSergey Kostanbaev
Use CONFIG_SYS_GENERIC_BOARD in EDB93XX board family
2015-09-13ARM: Kirkwood: enable generic board support for LaCie boardsSimon Guinot
This patch enables generic board support for the following Kirkwood-based LaCie boards: - Network Space v2 (Mini, Lite and Max). - Internet Space v2. - D2 Network v2. - 2Big Network v2. Signed-off-by: Simon Guinot <simon.guinot@sequanux.org> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2015-09-13udoo: Fix the error handling in board_eth_init()Fabio Estevam
We should not return 0 on failure, so return a negative error code instead. Also centralize the error path so that is easier to follow. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13tqma6_mba6: Fix the error handling in board_eth_init()Fabio Estevam
We should not return 0 on failure, so return a negative error code instead. Also centralize the error path so that is easier to follow. Cc: Markus Niebel <Markus.Niebel@tq-group.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13ot1200: Fix the error handling in board_eth_init()Fabio Estevam
We should not return 0 on failure, so return a negative error code instead. Also centralize the error path so that is easier to follow. Cc: Christian Gmeiner <christian.gmeiner@gmail.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13nitrogen6x: Fix the error handling in board_eth_init()Fabio Estevam
We should not return 0 on failure, so return a negative error code instead. Also centralize the error path so that is easier to follow. Cc: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Acked-by: Troy Kisky <troy.kisky@boundarydevices.com>
2015-09-13pcie_imx: Use 'ms' for millisecondsFabio Estevam
milliseconds should be written as 'ms' instead of 'mS'. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Tested-by: Marek Vasut <marex@denx.de>
2015-09-13mx6ul_14x14_evk: Use the default CONFIG_SYS_PBSIZEFabio Estevam
Entering the maximum number of characters defined by CONFIG_SYS_CBSIZE into the console and hitting enter afterwards, causes a hang in the system because CONFIG_SYS_PBSIZE is not capable of storing the extra characters of the error message: "Unknown command '' - try 'help'". Use the default CONFIG_SYS_PBSIZE definition from config_fallbacks.h to solve this problem. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13mx6ul_14x14_evk: Remove CONFIG_FEC_DMA_MINALIGNFabio Estevam
CONFIG_FEC_DMA_MINALIGN is not used anywhere, so let's remove it. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Reviewed-by: Peng Fan <Peng.Fan@freescale.com>
2015-09-13mx6ul_14x14_evk: Do not undef config optionsFabio Estevam
There is no need to undef the config options. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Reviewed-by: Peng Fan <Peng.Fan@freescale.com>
2015-09-13mx6ul_14x14_evk: Remove unused config optionFabio Estevam
CONFIG_ROM_UNIFIED_SECTIONS is not used anywhere, so let's remove it. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Reviewed-by: Peng Fan <Peng.Fan@freescale.com>
2015-09-13mx6ul_14x14_evk: Remove CONFIG_SYS_GENERIC_BOARDFabio Estevam
CONFIG_SYS_GENERIC_BOARD is selected by mx6_common.h, so there is no need to define it locally. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Reviewed-by: Peng Fan <Peng.Fan@freescale.com>
2015-09-13cgtqmx6eval: Remove CONFIG_CMD_FUSE optionFabio Estevam
CONFIG_CMD_FUSE and CONFIG_MXC_OCOTP are selected by mx6_common.h, so there is no need to define them locally. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13mx6sxsabresd: Remove CONFIG_SPL_FAT_SUPPORTFabio Estevam
If the SD card does not contain the u-boot.img then we get the following error: U-Boot SPL 2015.10-rc2-23947-g7ad5930 (Sep 08 2015 - 14:10:29) ** Partition 1 not valid on device 0 ** spl_register_fat_device: fat register err - -1 spl_load_image_fat: error reading image u-boot.img, err - -1 Remove CONFIG_SPL_FAT_SUPPORT and let CONFIG_SPL_MMC_SUPPORT do the job. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13mx6slevk: Remove CONFIG_SPL_FAT_SUPPORTFabio Estevam
If the SD card does not contain the u-boot.img then we get the following error: U-Boot SPL 2015.10-rc2-23947-g7ad5930 (Sep 08 2015 - 14:10:29) ** Partition 1 not valid on device 0 ** spl_register_fat_device: fat register err - -1 spl_load_image_fat: error reading image u-boot.img, err - -1 Remove CONFIG_SPL_FAT_SUPPORT and let CONFIG_SPL_MMC_SUPPORT do the job. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13mx6ul_14x14_evk: Add a README fileFabio Estevam
Add a README file to help users getting started with the board. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13mx6ul_14x14_evk: Remove CONFIG_SPL_FAT_SUPPORTFabio Estevam
If the SD card does not contain the u-boot.img then we get the following error: U-Boot SPL 2015.10-rc2-23947-g7ad5930 (Sep 08 2015 - 14:10:29) ** Partition 1 not valid on device 0 ** spl_register_fat_device: fat register err - -1 spl_load_image_fat: error reading image u-boot.img, err - -1 Remove CONFIG_SPL_FAT_SUPPORT and let CONFIG_SPL_MMC_SUPPORT do the job. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13imx-common: cpu: Do not print on invalid temperatureFabio Estevam
It is not very useful to have the message below on every boot (especially when we are using early silicon): U-Boot 2015.10-rc2-23945-g37cf215 (Sep 08 2015 - 14:12:14 -0300) CPU: Freescale i.MX6UL rev1.0 792 MHz (running at 396 MHz) CPU: Commercial temperature grade (0C to 95C)CPU: Thermal invalid data, fuse: 0x0 - invalid sensor device , so turn the error message into debug level. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13thermal: imx_thermal: Do not print on errorFabio Estevam
It is not very useful to have the message below on every boot (especially when we are using early silicon): U-Boot 2015.10-rc2-23945-g37cf215 (Sep 08 2015 - 14:12:14 -0300) CPU: Freescale i.MX6UL rev1.0 792 MHz (running at 396 MHz) CPU: Commercial temperature grade (0C to 95C)CPU: Thermal invalid data, fuse: 0x0 - invalid sensor device , so turn the error message into debug level. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
2015-09-13imx: mx6 discard 'select CPU_V7' for different targetsPeng Fan
Discard the 'select CPU_V7' from Kconfig in arch/arm/cpu/armv7/mx6 for different targets, because ARCH_MX6 selects CPU_V7. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Cc: Stefano Babic <sbabic@denx.de>
2015-09-13mx6: remove SYS_SOC from board KconfigPeng Fan
Remove duplicated SYS_SOC Kconfig entry from board Kconfig, because we have this entry in arch/arm/cpu/armv7/mx6/Kconfig. Signed-off-by: Peng Fan <Peng.Fan@freescale.com> Cc: Stefano Babic <sbabic@denx.de> Cc: Heiko Schocher <hs@denx.de> Cc: Christian Gmeiner <christian.gmeiner@gmail.com> Cc: Stefan Roese <sr@denx.de> Cc: Troy Kisky <troy.kisky@boundarydevices.com> Cc: Nikita Kiryanov <nikita@compulab.co.il> Cc: "Eric Bénard" <eric@eukrea.com> Cc: Fabio Estevam <fabio.estevam@freescale.com> Cc: Tim Harvey <tharvey@gateworks.com> Cc: Marek Vasut <marex@denx.de> Cc: Markus Niebel <Markus.Niebel@tq-group.com> Cc: Otavio Salvador <otavio@ossystems.com.br> Acked-by: Stefan Roese <sr@denx.de> Acked-by: Marek Vasut <marex@denx.de> Acked-by: Christian Gmeiner <christian.gmeiner@gmail.com> Acked-by: Markus Niebel <Markus.Niebel@tq-group.com> Acked-by: Troy Kisky <troy.kisky@boundarydevices.com> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
2015-09-13arm: mx6: cm-fx6: modify device tree for old revisions of utiliteNikita Kiryanov
Old revisions of Utilite (a miniature PC based on cm-fx6) do not have a card detect for mmc, and thus the kernel needs to be told that there's a persistent storage on usdhc3 to force it to probe the mmc card. Check the baseboard revision and modify the device tree accordingly if needed. Cc: Stefano Babic <sbabic@denx.de> Cc: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
2015-09-13compulab: eeprom: add support for obtaining product nameNikita Kiryanov
Introduce cl_eeprom_get_product_name() for obtaining product name from the eeprom. Cc: Stefano Babic <sbabic@denx.de> Cc: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il>
2015-09-13compulab: eeprom: propagate error value in read_mac_addr()Nikita Kiryanov
cl_eeprom_read_mac_addr() doesn't differentiate between success case and inability to access eeprom. Fix this by propagating the return value of cl_eeprom_setup(). Cc: Stefano Babic <sbabic@denx.de> Cc: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Nikita Kiryanov <nikita@compulab.co.il> Acked-by: Igor Grinberg <grinberg@compulab.co.il>