summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-11-30nds32: ftsdc010: Fix SD detech fail on AE3XX.Rick Chen
AE3XX can not support SD high-speed mode. SW can work-around by removing HS capibility. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30nds32: ftsdc010: fix wait status error coding.Rick Chen
Bit of DATA_END and DATA_CRC_OK shall be checked for returning pass or fail of a request. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30nds32: board: Support ftsdc010 DM.Rick Chen
AG101P/AE3XX enable ftsdc010 dm flow. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30nds32: dts: Support ftsdc010 DM.Rick Chen
Add dts to support ftsdc010 dm flow on AG101P/AE3XX platform. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30nds32: ftsdc010: Support ftsdc010 DM.Rick Chen
ftsdc010 support device tree flow. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30nds32: mmc: Support ftsdc010 DM.Rick Chen
Add nds32_mmc to support ftsdc010 dm flow. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30dt-bindings: spi: Add andestech atcspi200 spi binding docRick Chen
Add a document to describe Andestech atcspi200 spi and binding information. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30cosmetic: atcspi200: Rename function name as atcspi200Rick Chen
Integrate function and struct name from ae3xx to atcspi200 will be more reasonable. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30spi: nds_ae3xx: Rename nds_ae3xx_spi as atcspi200_spiRick Chen
atcspi200 is Andestech spi ip which is embedded in AE3XX and AE250 platforms. So rename as atcspi200 will be more reasonable to be used in different platforms. Signed-off-by: Rick Chen <rick@andestech.com>
2017-11-30atcpit100: timer: Remove arch dependency.Rick Chen
ATCPIT100 is often used in AE3XX platform which is based on NDS32 architecture recently. But in the future Andestech will have AE250 platform which is embeded ATCPIT100 timer based on RISCV architecture. Signed-off-by: Rick Chen <rick@andestech.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-30dt-bindings: timer: Add andestech atcpit100 timerRick Chen
Add a document to describe Andestech atcpit100 timer and binding information. Signed-off-by: rick <rick@andestech.com> Signed-off-by: Rick Chen <rickchen36@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-30cosmetic: atcpit100_timer: Use device api to get platdataRick Chen
Use dev_get_platdata to get private platdata. Signed-off-by: rick <rick@andestech.com> Signed-off-by: Rick Chen <rickchen36@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-30cosmetic: atcpit100_timer: Rename function name as atcpit100Rick Chen
Integrate function and struct name as atcpit100 will be more reasonable. Signed-off-by: rick <rick@andestech.com> Signed-off-by: Rick Chen <rickchen36@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-30ae3xx: timer: Rename AE3XX to ATCPIT100Rick Chen
ATCPIT100 is Andestech timer IP which is embeded in AE3XX and AE250 boards. So rename AE3XX to ATCPIT100 will be more make sence. Signed-off-by: rick <rick@andestech.com> Signed-off-by: Rick Chen <rickchen36@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-30ae3xx: timer: Fix ae3xx timer work abnormal in 64 bit.Rick Chen
It will be work fine with unsigned long declaretion in timer register struct when system is 32 bit. But it will not work well when system is 64 bit. Replace it by u32 and verify both ok in 32/64 bit. Signed-off-by: Rick Chen <rick@andestech.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-11-29Merge tag 'xilinx-for-v2018.01' of git://www.denx.de/git/u-boot-microblazeTom Rini
Xilinx changes for v2018.1 Zynq: - Add support for Syzygy and cc108 boards - Add support for mini u-boot configurations (cse) - dts updates - config/defconfig updates in connection to Kconfig changes - Fix psu_init handling ZynqMP: - SPL fixes - Remove slcr.c - Fixing r5 startup sequence - Add support for external pmufw - Add support for new ZynqMP chips - dts updates - Add support for zcu102 rev1.0 board Drivers: - nand: Support external timing setting and board init - ahci: Fix wording - axi_emac: Wait for bit, non processor mode, readl/write conversion - zynq_gem: Fix SGMII/PCS support
2017-11-29net: xilinx_axi_emac: Use readl and writel for io opsSiva Durga Prasad Paladugu
This patch uses readl and writel instead of in_be32 and out_be32 for io ops as these internally uses readl, writel for microblaze and for Zynq, ZynqMP there is no need of endianness conversion and readl, writel should work straightaway. This patch starts supporting the driver for Zynq and ZynqMP platforms. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29net: zynq_gem: Dont enable SGMII and PCS selectionSiva Durga Prasad Paladugu
Dont enable SGMII and PCS selection if internal PCS/PMA is not used, by getting the info about internal/external PCS/PMA usage from dt property "is-internal-phy". Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Change Zynq/ZynqMP Kconfig descriptionMichal Simek
Use more accurate description for Xilinx Zynq and ZynqMP based platforms. With using driver model there shouldn't be a need to create separate Kconfig config options. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29tools: zynqmpimage: adjust ug1085 reference to v1.4 of the documentJean-Francois Dagenais
The chapter in which the table explaining the image format changed chapter as the document evolved. This should help people track the info down faster. Signed-off-by: Jean-Francois Dagenais <jeff.dagenais@gmail.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29mtd: nand: zynq: Add support for the NAND lock/unlock operationJoe Hershberger
Zynq NAND driver is not support for NAND lock or unlock operation. Hence, accidentally write into the critical NAND region might cause data corruption to occur. This commit is to add NAND lock/unlock command into NAND SMC register set for NAND lock/unlock operaion. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Keng Soon Cheah <keng.soon.cheah@ni.com> Cc: Chen Yee Chew <chen.yee.chew@ni.com> Cc: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Cc: Michal Simek <michal.simek@xilinx.com> Cc: Scott Wood <oss@buserror.net> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29mtd: zynq: nand: Move board_nand_init() function to board.cWilson Lee
Putting board_nand_init() function inside NAND driver was not appropriate due to it doesn't allow board vendor to customise their NAND initialization code such as adding NAND lock/unlock code. This commit was to move the board_nand_init() function from NAND driver to board.c file. This allow customization of board_nand_init() function. Signed-off-by: Wilson Lee <wilson.lee@ni.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Keng Soon Cheah <keng.soon.cheah@ni.com> Cc: Chen Yee Chew <chen.yee.chew@ni.com> Cc: Albert Aribaud <albert.u.boot@aribaud.net> Cc: Michal Simek <michal.simek@xilinx.com> Cc: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Cc: Scott Wood <oss@buserror.net> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Add ps7_init for cc108Michal Simek
After some generic cleanup adding ps7_init* to repository is not big pain now. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Show information about silicon versionMichal Simek
Show information about silicon in bootlog. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Do not show information from checkboard twiceMichal Simek
There is no reason to show information about board twice. Remove boardinfo late calls. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Use unsigned type with comparison with ARRAY_SIZEMichal Simek
Sparse is return warning about this: arch/arm/mach-zynq/slcr.c: In function 'zynq_slcr_get_mio_pin_status': arch/arm/mach-zynq/slcr.c:185:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (i = 0; i < ARRAY_SIZE(mio_periphs); i++) { ^ Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Convert all board to use arch ps7_init codeMichal Simek
Use generic implementation. It will also reduce config data size for converted boards. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Add support for EMIT_WRITE operationMichal Simek
Add proper support for EMIT_WRITE operation which is write only. Do not use EMIT_MASKWRITE which is read-modify-write. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Add ps7GetSiliconVersion() to ps7_spl_initMichal Simek
Unfortunately camelcase is coming from ps7_init* format. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Move common ps7_init* initialization to arch codeMichal Simek
This patch is based on work done in topic board where the first address word also storing operation which should be done. This is reducing size of configuration data. This patch is not breaking an option to copy default ps7_init_gpl* files from hdf file but it is doing preparation for ps7_init* consolidation. The patch is also marking ps7_config as weak function. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Get rid of ps7_reset_apu() for syzygy boardMichal Simek
There is no reason to call separate function. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Move ps7_* to separate fileMichal Simek
Extract ps7_* from spl code to prepare for extension. And also return value. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Remove ps7_debug codeMichal Simek
SPL is not calling this code that's why it is dead code and can be removed. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Enable debug uart on zc706Michal Simek
Enable debug uart by default. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29arm: zynq: Add missing ps7_post_config declarationMichal Simek
Add missing declaration to header. Warning log: arch/arm/mach-zynq/spl.c:94:12: warning: symbol 'ps7_post_config' was not declared. Should it be static? Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-11-29net: xilinx_axi_emac: Add support for non processor modeSiva Durga Prasad Paladugu
Add support for non processor mode, this mode doesn't have access to some of the registers and hence this patch bypasses it and also length has to be calculated from status instead of app4 in this mode. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
2017-11-28Merge git://git.denx.de/u-boot-mipsTom Rini
2017-11-28Merge git://git.denx.de/u-boot-uniphierTom Rini
2017-11-28boston: Add u-boot.mcs make targetPaul Burton
U-Boot is generally flashed to a MIPS Boston development board by means of a .mcs file which Xilinx Vivado software can write to the flash present on the board. As such we'd generally want to produce an mcs file when building U-Boot to target the Boston board. Introduce a make target for u-boot.mcs which generates it using the srec_cat tool available from the SRecord project, and build it by default when srec_cat is present. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28boston: Set CONFIG_SYS_LOAD_ADDR to 0x88000000Paul Burton
Generally we load Linux kernels on Boston boards in the form of FIT images containing a compressed kernel binary. Linux is linked at 0x80100000 and so we need to decompress the kernel binary to that address, however this is our default load address which means that unless explicitly avoided we hit a decompression error as the uncompressed kernel binary overwrites its compressed version from the FIT image. Avoid this by adjusting CONFIG_SYS_LOAD_ADDR to 0x88000000 (or 0xffffffff88000000 for MIPS64 builds) which avoids the address overlap between compressed & uncompressed kernel binaries. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28MIPS: Break out of cache loops for unimplemented cachesPaul Burton
If we run on a CPU which doesn't implement a particular cache then we would previously get stuck in an infinite loop, executing a cache op on the first "line" of the missing cache & then incrementing the address by 0. This was being avoided for the L2 caches, but not for the L1s. Fix this by generalising the check for a zero line size & avoiding the cache op loop when this is the case. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28MIPS: Clear instruction hazards in flush_cache()Paul Burton
When writing code, for example during relocation, we ensure that the icache has a coherent view of the new instructions with a call to flush_cache(). This handles the bulk of the work to ensure the new instructions will execute as expected, however it does not ensure that the CPU pipeline doesn't already contain instructions taken from a stale view of the affected memory. This could theoretically be a problem for relocation, but in practice typically isn't because we sync caches for enough code after the entry point of the newly written code that by the time the CPU pipeline might possibly fetch any of it we'll have long ago written it back & invalidated any stale icache entries. This is however a problem for shorter regions of code. In preparation for later patches which write shorter segments of code, ensure any instruction hazards are cleared by flush_cache() by introducing & using a new instruction_hazard_barrier() function which makes use of the jr.hb instruction to clear the hazard. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28MIPS: Ensure cache ops complete in cache maintenance functionsPaul Burton
A typical use of cache maintenance functions is to force writeback of data which a device is about to read using DMA - for example a descriptor or command structure. Such users of cache maintenance functions require that operations on the cache have completed before they proceed to instruct a device to read memory. This requires that we place a completion barrier (ie. sync instruction) between the cache ops and whatever write informs the device to perform DMA. Whilst strictly speaking this isn't all users of the cache maintenance functions & we could instead place the barriers in the drivers that require them, it would be much more invasive to do so than to just have the barrier be the default by placing it in the cache functions themselves. The cost is low enough that it shouldn't matter to us in any rare cases that we use the cache functions when not performing DMA. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28Update Paul Burton's email addressPaul Burton
MIPS is no longer a part of Imagination Technologies, and as such my @imgtec.com email address will soon cease to function. This patch updates occurrances of it with my new @mips.com email address, and adds an entry in .mailmap such that git (& tools such as get_maintainer.pl when examining history) will use the new address. Signed-off-by: Paul Burton <paul.burton@mips.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: u-boot@lists.denx.de
2017-11-28MIPS: Drop unused PTR_COUNT_SHIFT from u-boot.ldsPaul Burton
The u-boot.lds linker script for MIPS defines a PTR_COUNT_SHIFT macro to 2 or 3 for 32 bit or 64 bit builds respectively. This macro is never actually used though, so remove the dead code. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2017-11-28boston: Remove unused label in lowlevel_displayPaul Burton
The lowlevel_display() function includes a "1:" label which is never used. Remove it. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2017-11-28boston: Drop unused return valuePaul Burton
The boston lowlevel_init() function zeroes the return register v0, despite the function not being expected to return a value & that value never being used. Remove the redundant assignment to v0. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2017-11-29ARM: uniphier: remove unused NAND CONFIG optionsMasahiro Yamada
The Denali NAND driver does not use these options any more. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-11-29ARM: dts: uniphier: Sync with Linux 4.15-rc1Masahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-11-29gpio: uniphier: import dt-binginds header from LinuxMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>