summaryrefslogtreecommitdiffstats
path: root/board/keymile
Commit message (Collapse)AuthorAgeFilesLines
* km/ivm: allow to set locally administred MAC addressesHolger Brunck2017-07-221-3/+21
| | | | | | | | | | It is possible to flag MAC addresses as locally administred. In this case they don't need to be unique. This is only allowed for interfaces which have no connection to the outside. For the TEGR1 board we use this feature. Cc: Heiko Schocher <hs@denx.de> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* km/ivm: always set ethaddr after reading IVMHolger Brunck2017-07-221-6/+3
| | | | | | | | | If we rebrand the IVM and ethaddr was set previously we need to change ethaddr. Otherwise we end up with a wrong MAC adress for the ethernet interface. Cc: Heiko Schocher <hs@denx.de> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* km/common: remove unused function declarationsHolger Brunck2017-07-101-9/+0
| | | | | | Cc: Wolfgang Denk <wd@denx.de> Cc: Heiko Schocher <hs@denx.de> Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
* km/common: remove unused codeHolger Brunck2017-07-061-3/+0
| | | | | | | | | The 82xx board mgcoge3ne was removed from the codebase, so this is dead code. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Cc: Heiko Schocher <hs@denx.de> Reviewed-by: Heiko Schocher <hs@denx.de>
* powerpc, 8260: remove support for mpc8260Heiko Schocher2017-06-124-490/+0
| | | | | | | | | There was for long time no activity in the 8260 area. We need to go further and convert to Kconfig, but it turned out, nobody is interested anymore in 8260, so remove it. Signed-off-by: Heiko Schocher <hs@denx.de>
* i2c: keymile: Drop use of CONFIG_I2C_HARDSimon Glass2017-05-152-9/+0
| | | | | | Drop use of this long-deprecated option. Signed-off-by: Simon Glass <sjg@chromium.org>
* board_f: Rename initdram() to dram_init()Simon Glass2017-04-133-3/+3
| | | | | | | | | This allows us to use the same DRAM init function on all archs. Add a dummy function for arc, which does not use DRAM init here. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Dummy function on nios2] Signed-off-by: Tom Rini <trini@konsulko.com>
* board_f: Drop return value from initdram()Simon Glass2017-04-053-7/+19
| | | | | | | | | At present we cannot use this function as an init sequence call without a wrapper, since it returns the RAM size. Adjust it to set the RAM size in global_data instead, and return 0 on success. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
* board_f: Drop board_type parameter from initdram()Simon Glass2017-04-053-3/+3
| | | | | | | | | It looks like only cm5200 and tqm8xx use this feature, so we don't really need it in generic code. Drop it and have the users access gd->board_type directly. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
* usb: fsl: Rename fdt_fixup_dr_usbSriram Dash2016-09-271-1/+1
| | | | | | | | The function fdt_fixup_dr_usb is specific to fsl/nxp. So, make the function name explicit and rename fdt_fixup_dr_usb into fsl_fdt_fixup_dr_usb. Signed-off-by: Sriram Dash <sriram.dash@nxp.com>
* treewide: replace #include <asm/errno.h> with <linux/errno.h>Masahiro Yamada2016-09-232-2/+2
| | | | | | | | | | | Now, arch/${ARCH}/include/asm/errno.h and include/linux/errno.h have the same content. (both just wrap <asm-generic/errno.h>) Replace all include directives for <asm/errno.h> with <linux/errno.h>. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> [trini: Fixup include/clk.] Signed-off-by: Tom Rini <trini@konsulko.com>
* Various, unrelated tree-wide typo fixes.Robert P. J. Day2016-07-162-2/+2
| | | | | | | | | | | | | | | | | | | Fix a number of typos, including: * "compatble" -> "compatible" * "eanbeld" -> "enabled" * "envrionment" -> "environment" * "FTD" -> "FDT" (for "flattened device tree") * "ommitted" -> "omitted" * "overriden" -> "overridden" * "partiton" -> "partition" * "propogate" -> "propagate" * "resourse" -> "resource" * "rest in piece" -> "rest in peace" * "suport" -> "support" * "varible" -> "variable" Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
* dm: fsl_i2c: Rename I2C register structuremario.six@gdsys.cc2016-05-171-13/+15
| | | | Signed-off-by: Mario Six <mario.six@gdsys.cc>
* Use correct spelling of "U-Boot"Bin Meng2016-02-061-1/+1
| | | | | | | | | | Correct spelling of "U-Boot" shall be used in all written text (documentation, comments in source files etc.). Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Heiko Schocher <hs@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Minkyu Kang <mk7.kang@samsung.com>
* Fix GCC format-security errors and convert sprintfs.Ben Whitten2016-01-141-2/+2
| | | | | | | | | | | With format-security errors turned on, GCC picks up the use of sprintf with a format parameter not being a string literal. Simple uses of sprintf are also converted to use strcpy. Signed-off-by: Ben Whitten <ben.whitten@gmail.com> Acked-by: Wolfgang Denk <wd@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
* km/powerpc: fix ft_board_setup prototype for km82xx & km83xxValentin Longchamp2015-11-182-2/+2
| | | | Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* powerpc/83xx: add support for kmtegr1 boardValentin Longchamp2015-11-181-0/+1
| | | | | | | | | This board uses the same CPU (8309) as VECT1. The memory however is different since it has NAND Flash, the NOR Flash partitioning is different and of course the FPGAs as well. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com>
* board/keymile/km82xx: setting dip_switch 3 and 4 will run bootloaderBagavathiannan Palanisamy2015-11-181-2/+2
| | | | | | | | | | Setting dip_switch 3 and 4 also will run bootloader in COGE3 and COGE6 It is required remove local mgmt IP address, when DIP Switch PIN3 is enabled. DIP Switch 4 also enabled to avoid u-boot update in future for DIP switch enhancements. Signed-off-by: Bagavathiannan Palanisamy <Bagavathiannan.Palanisamy@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* km/powerpc82xx: remove unused functionHolger Brunck2015-11-181-16/+0
| | | | | | | | commit 0a4f88b98 removed the usage of our setports function, but the function itself were not removed. So toss it it's dead code. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* km/powerpc: remove unneeded definesHolger Brunck2015-11-182-9/+3
| | | | | | | | We use CONFIG_OF_LIBFDT and CONFIG_OF_BOARD_SETUP on all our powerpc targets, so there is no need to check these defines within our C code. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* powerpc/82xx/km: add testpin detection for mgcoge3neHolger Brunck2015-11-183-1/+15
| | | | | | | | | On mgcoge3ne we also want to start the test application if the testpin is asserted. But we don't have a full POST test support yet. So simply add a function to read the testpin value. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* powerpc/82xx: make set/get_pin for km82xx more flexibleHolger Brunck2015-11-181-12/+12
| | | | | | | | | The get_pin and set_pin funciton was only used for pins on Port D and therefore the value was hard coded in the function. Enhance this with a parameter, that we are able to use this functions for other ports too. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* powerpc/83xx: add support for kmtepr2 boardChristoph Dietrich2015-11-181-0/+1
| | | | | | | | This board is similar to TUXX1, but it has differend FPGAs. Signed-off-by: Christoph Dietrich <christoph.dietrich@keymile.com> Signed-off-by: Andreas Huber <andreas.huber@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* km/scripts: search for kernel/DTBs at serverip:/PRODUCTNAME via TFTP in ↵Tobias Müller2015-11-181-3/+3
| | | | | | | | | | | develop mode Search for the kernel and DTBs in a folder named PRODUCTNAME (found in the IVM) at the TFTP server instead of the u-boot boardname. Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* km/scripts: load fdt_bid_kwkey.dtb when working with tftpHolger Brunck2015-11-181-1/+1
| | | | | | | | | | | | When loading the dtb file via tftp we should load the one which matches boardId and hwKey and not a common one for the boardname. We have boards were different hwKeys are used and then we may load an incorrect dtb file. If no fdt_bid_kwkey.dtb file is not a fallback to boardname.dtb is used. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* arm/km_kirkwood: fix the #ifdef for KM_COGE5UN dip switchValentin Longchamp2015-11-181-1/+1
| | | | | | | There was a small typo for KM_COGE5UN that resulted in the dip switch not to behave as expected. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* arm/mgcoge3un: check dip_switch at startupHolger Brunck2015-11-181-4/+7
| | | | | | | | | | | | Similar to kmcoge5un we need to check the dip switch at startup connected to the kirkwood at MPP43. If it's set we need to set the actual_bank to zero to boot from SW bank zero. Additional to kmcoge5un we need to check also the pin in misc_init to decide wether we wait for the ne to start or not. If the dip_switch is set we don't wait and continue immediately. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* arm/km: Fix LED configuration for 88E1118R PHY (PIGGY3)Tobias Müller2015-11-181-0/+55
| | | | | | | | | | Configure PHY LED register for Marvell 88E1118R PHY used on PIGGY3 to match with printed descriptions on PCB Signed-off-by: Tobias Müller <Tobias.Mueller@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> [trini: Fix typo, CRTL_PAGE -> CTRL_PAGE] Signed-off-by: Tom Rini <trini@konsulko.com>
* KM/IVM: remove ivm_read_eeprom(void)Valentin Longchamp2015-02-166-26/+6
| | | | | | | | | | This is not used anymore since the procedure was split into a simple read function and a later alaysis. The ivm_read_eeprom name is now used for the previous ivm_simple_read_eeprom function. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* 82xx/km82xx: read the IVM eeprom earlierValentin Longchamp2015-02-161-1/+9
| | | | | | | | | | This allows to define the ethaddr env variable according to the the IVM content by reading the IVM in misc_init_r. Later, when HUSH is available the content read earlier is analyzed to populate some non env variables. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* 83xx/km83xx: read the IVM eeprom earlierValentin Longchamp2015-02-161-1/+4
| | | | | | | | | | This allows to define the ethaddr env variable according to the the IVM content by reading the IVM in misc_init_r. Later, when HUSH is available the content read earlier is analyzed to populate some non env variables. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* 85xx/kmp204x: read the IVM eeprom earlierValentin Longchamp2015-02-161-1/+4
| | | | | | | | | | This allows to define the ethaddr env variable according to the the IVM content by reading the IVM in misc_init_r. Later, when HUSH is available the content read earlier is analyzed to populate some non env variables. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* kirkwood/km_arm: read the IVM eeprom earlierValentin Longchamp2015-02-161-1/+5
| | | | | | | | | | This allows to define the ethaddr env variable according to the the IVM content by reading the IVM in misc_init_r. Later, when HUSH is available the content read earlier is analyzed to populate some non env variables. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* KM/IVM: split the IVM reading and parsing in 2 partsValentin Longchamp2015-02-162-25/+63
| | | | | | | | | | | | | | This allows to first read the IVM content (earlier in the boot sequence) and define the ethaddr env variable thanks to the ivm_read_eepromi(). Later, the IVM content can be parsed and used to define some hush variables, when the hush subsystem is available thanks to ivm_analyze_eeprom(). To avoid the HW read to happen twice, the buffer passed to ivm_read_eeprom() has to be reused by ivm_analyze_eeprom (and thus allocated before calling ivm_read_eeprom()). Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* km/km82xx: remove CONFIG_SYS_RAMBOOTHolger Brunck2014-12-051-2/+0
| | | | | | | | | | | | This define is never set in our setup, so we can remove it safely. The former code causes cppcheck to complain about: [board/keymile/km82xx/km82xx.c:311]: (error) Uninitialized variable: psize Signed-off-by: Holger Brunck <holger.brunck@keymile.com> cc: Valentin Longchamp <valentin.longchamp@keymile.com> cc: Wolfgang Denk <wd@denx.de> Reviewed-by: York Sun <yorksun@freescale.com>
* fdt: Allow ft_board_setup() to report failureSimon Glass2014-11-213-3/+9
| | | | | | | | | | | | | | | | | | This function can fail if the device tree runs out of space. Rather than silently booting with an incomplete device tree, allow the failure to be detected. Unfortunately this involves changing a lot of places in the code. I have not changed behvaiour to return an error where one is not currently returned, to avoid unexpected breakage. Eventually it would be nice to allow boards to register functions to be called to update the device tree. This would avoid all the many functions to do this. However it's not clear yet if this should be done using driver model or with a linker list. This work is left for later. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
* cppcheck cleanup: fix nullPointer errorsWolfgang Denk2014-11-071-0/+1
| | | | | | | | | | | There are a number of places where U-Boot intentionally and legally accesses physical address 0x0000, for example when installing exception vectors on systems where these are located in low memory. Add "cppcheck-suppress nullPointer" comments to silence cppcheck where this is intentional and legal. Signed-off-by: Wolfgang Denk <wd@denx.de>
* arm: kirkwood: Change naming of dram functions from km_foo() to mvebu_foo()Stefan Roese2014-10-231-2/+2
| | | | | | | | | | | | Additionally the SDRAM address decoding register address is not hard coded in the C code any more. A define is introduced for this base address. This makes is possible to use those gpio functions from other MVEBU SoC's as well. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org> Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
* arm: marvell: Extract kirkwood gpio functions into new common file gpio.cStefan Roese2014-10-231-2/+2
| | | | | | | | This makes is possible to use those gpio functions from other MVEBU SoC's as well. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org> Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
* arm: marvell: Move arch/kirkwood.h to arch/soc.hStefan Roese2014-10-231-1/+1
| | | | | | | | | This move makes is possible to use this header not only from kirkwood platforms but from all Marvell mvebu platforms. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org> Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
* kconfig: remove redundant "string" type in arch and board KconfigsMasahiro Yamada2014-09-134-18/+0
| | | | | | | | | | | | | | | | | | Now the types of CONFIG_SYS_{ARCH, CPU, SOC, VENDOR, BOARD, CONFIG_NAME} are specified in arch/Kconfig. We can delete the ones in arch and board Kconfig files. This commit can be easily reproduced by the following command: find . -name Kconfig -a ! -path ./arch/Kconfig | xargs sed -i -e ' /config[[:space:]]SYS_\(ARCH\|CPU\|SOC\|\VENDOR\|BOARD\|CONFIG_NAME\)/ { N s/\n[[:space:]]*string// } ' Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
* kirkwood: kconfig: refactor Kconfig and defconfigMasahiro Yamada2014-08-301-8/+0
| | | | | | | | | | | | Becuase the board select menu in arch/arm/Kconfig is too big, move the KirkWood board select menu to kirkwood/Kconfig. Consolidate also common settings (CONFIG_SYS_CPU="arm926ejs" and CONFIG_SYS_SOC="kirkwood"). Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Prafulla Wadasdkar <prafulla@marvell.com> Cc: Luka Perkov <luka@openwrt.org>
* kmp204x: reset the Zarlink clocking chips at power up onlyValentin Longchamp2014-08-201-4/+4
| | | | | | | | | | | | | | There is the requirement on the chassis's backplane that when the clocks have been enabled, they then should not disappear. Resetting the Zarlink clocking chips at unit reset violates this requirement because the backplane clocks are not supplied during the reset time. To avoid this side effect, both the Zarlink clocking chips are reset only at power up. Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
* Merge branch 'master' of git://git.denx.de/u-boot-mpc85xxTom Rini2014-08-063-0/+54
|\
| * kmp204x: prepare to use CPU watchdogBoschung, Rainer2014-08-011-0/+3
| | | | | | | | | | | | | | | | | | This patch configures the qrio to trigger a core reset on a CPU reset request. Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: York Sun <yorksun@freescale.com>
| * kmp204x/qrio: support for setting the CPU reset request modeBoschung, Rainer2014-08-012-0/+22
| | | | | | | | | | | | | | | | | | To acheive this, the qrio_uprstreq() function that sets the UPRSTREQN flag in the qrio RESCNF reg is added. Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: York Sun <yorksun@freescale.com>
| * kmp204x: set CPU watchdog reset reason flagBoschung, Rainer2014-08-011-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | Check the core timer status register (TSR) for watchdog reset, and and set the QRIO's reset reason flag REASON1[0] accordingly. This allows the appliction SW to identify the cpu watchdog as a reset reason, by setting the REASON1[0] flag in the QRIO. Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: York Sun <yorksun@freescale.com>
| * kmp204x/qrio: prepare support for the CPU watchdog reset reasonBoschung, Rainer2014-08-012-0/+17
| | | | | | | | | | | | | | | | | | To achieve this, the qrio_cpuwd_flag() function that sets the CPU watchdog flag in the REASON1 reg is added. Signed-off-by: Rainer Boschung <rainer.boschung@keymile.com> Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com> Reviewed-by: York Sun <yorksun@freescale.com>
* | Add board MAINTAINERS filesMasahiro Yamada2014-07-304-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have switched to Kconfig and the boards.cfg file is going to be removed. We have to retrieve the board status and maintainers information from it. The MAINTAINERS format as in Linux Kernel would be nice because we can crib the scripts/get_maintainer.pl script. After some discussion, we chose to put a MAINTAINERS file under each board directory, not the top-level one because we want to collect relevant information for a board into a single place. TODO: Modify get_maintainer.pl to scan multiple MAINTAINERS files. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Suggested-by: Tom Rini <trini@ti.com> Acked-by: Simon Glass <sjg@chromium.org>
* | kconfig: add board Kconfig and defconfig filesMasahiro Yamada2014-07-304-0/+100
|/ | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds: - arch/${ARCH}/Kconfig provide a menu to select target boards - board/${VENDOR}/${BOARD}/Kconfig or board/${BOARD}/Kconfig set CONFIG macros to the appropriate values for each board - configs/${TARGET_BOARD}_defconfig default setting of each board (This commit was automatically generated by a conversion script based on boards.cfg) In Linux Kernel, defconfig files are located under arch/${ARCH}/configs/ directory. It works in Linux Kernel since ARCH is always given from the command line for cross compile. But in U-Boot, ARCH is not given from the command line. Which means we cannot know ARCH until the board configuration is done. That is why all the "*_defconfig" files should be gathered into a single directory ./configs/. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Simon Glass <sjg@chromium.org>