summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-08firmware: zynqmp: Add zynqmp-power supportIbai Erkiaga
zynqmp-power driver for ZynqMP to handle the communication with the PMU firmware. Firmware driver just probes subnodes and power driver handles communication with PMU using the IPI mailbox driver. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08mailbox: zynqmp: ipi mailbox driverIbai Erkiaga
ZynqMP mailbox driver implementing IPI communication with PMU. This would allow U-Boot SPL to communicate with PMUFW to request privileged operations. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08mailbox: allow subnode for mbox regsIbai Erkiaga
The following patch allows the mailbox node in DT to host subnodes with mailbox definitions. If the client phandle to the mailbox is not the mailbox driver node, just checks parents as well. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08mailbox: check ops prior callingIbai Erkiaga
Check if request and free operations are present prior calling to the functions. Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: versal: Enable clock driverMichal Simek
Enable clock driver for Versal. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Enable random mac generationMichal Simek
In case that mac address is not found it is generated randomly. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Remove additional headersMichal Simek
There were several changes in past in this file without removing headers (watchdog cleanup, soft reset, etc). That's why remove additional useless headers. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Setup initrd_high and fdt_high at run timeMichal Simek
Setup initrd_high and fdt_high to be placed in lowmem space for kernel to be able to reach it. Values are setup at run time to ensure that the same setting can be used on different memory setup. Do this setting only when variables are not Similar run time detection was done for Zynqmp and Versal. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Setup reasonable maximum bootm lenMichal Simek
We are far from 8MB default size. Setup 64MB for now. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Enable cache by defaultMichal Simek
The whole cache code needs to be redesign to read information about cache from DT instead of macro selection. Enable caches by default because systems have caches on by default for Linux. Also enable CMD_CACHE to be able to disable cache if there is any issue. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Switch to generic bootm implementationMichal Simek
There is no reason to use private code for standard bootm command. Current implementation is also broken and don't support image relocation properly. Switching to generic bootm implementation is fixing these issues. cmdline and bdt bootm subcommands are returning -1 because they are not implemented. Similar change was done long time ago by for example commit 2bb5b638791d ("MIPS: bootm: rework and fix broken bootm code") Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Define arch_lmb_reserveMichal Simek
arch_lmb_reserve() protects U-Boot relocated code with stack not to be used for image relocation. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Fix lmb memory initializationMichal Simek
Microblaze as Arm is using multiple memory banks which are read from DT that's why there is a need to initialized LMB based on bd->bi_dram[]. Without this fix memory base/size is all the time 0 and image relocation is not possible. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Move CONFIG_LMB from board file to config.hMichal Simek
It is common for the whole architecture that's why move it there. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08microblaze: Remove unused variable ram_baseMichal Simek
This variable is completely unused that's why remove it. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Define default SYS_PROMPTMichal Simek
All boards are using the same prompt that's why add it as default value to Kconfig to simplify defconfigs. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
2019-10-08ARM: zynq: Define default SYS_PROMPTMichal Simek
All boards are using the same prompt that's why add it as default value to Kconfig to simplify defconfigs. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08configs: apalis-tk1: Do not define CONFIG_SYS_BOOT_RAMDISK_HIGH againMichal Simek
CONFIG_SYS_BOOT_RAMDISK_HIGH is already defined in arch/arm/include/asm/config.h:10:#define CONFIG_SYS_BOOT_RAMDISK_HIGH that's why there is no reason to define it again in board file. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Add a2197 memory board revAMichal Simek
Similar to processor board but i2c structure is completely different. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Add System Controller for a2197-g/pMichal Simek
Similar SCs but different wiring. - dc_i2c is connected to X-PRC cards that's why label is required to have an option to hook up some devices. - Exactly identify i2c devices on x-prc boards. In case of missing i2c connection devices won't be accessible. - USB 0 should be device mode with super speed. - USB 1 should be host mode. - Fix i2c mux reset pin entry - commented, not verified. - Fix i2c1 eeprom compatible string - it is an ST 128Kbit device. Need to use atmel fallback. - Fix si570 I2C slave address and add corresponding part numbers. - Enable AMS for system monitoring. - phy reset property should be commented because it will throw a warning dump when called from context that can sleep. No support for phys property (zynqmp phy driver) with SGMII. Add is-internal-pcspma property required by uboot. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Signed-off-by: Harini Katakam <harini.katakam@xilinx.com>
2019-10-08arm64: zynqmp: Add generic a2197 system controller configMichal Simek
Add generic configuration for a2197-p/-m/-g boards. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08net: xilinx_axiemac: Fill the phy node pointer in phydevSiva Durga Prasad Paladugu
This patch assings the phynode pointer to the phydev node as it is needed later in the corresponding phy driver to read phy properties from DT. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08gpio: zynq: fix issue in set gpio output directionAshok Reddy Soma
This patch fixes zynq_gpio_direction() to call driver specific zynq_gpio_set_value function rather than top level gpio_set_value. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: versal: Remove unneeded configs for mini configurationsSiva Durga Prasad Paladugu
The PSCI_RESET and EXPERT are not needed for mini configurations so remove them to save space. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: versal: mini_emmc: Enable fatwrite supportSiva Durga Prasad Paladugu
This patch enable fatwrite support for mini emmc configurations. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
2019-10-08env: Kconfig: Add environment default offset in versalT Karthik Reddy
This patch adds default offset & sector size values for environment variables to save in qspi/ospi flash for versal. Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08drivers: usb: dwc3: setup phy before dwc3 core soft resetT Karthik Reddy
Phy setup should be done before dwc3 soft core reset as it is done in linux & this fixes unreliable detection of usb cable on host side. Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Enable 2 NAND chips support for zynqmp_mini_nandT Karthik Reddy
This patch enables 2 nand chips support for zynqmp mini nand Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08doc: README.xilinx: Add dt bindingsT Karthik Reddy
Devicetree bindings are already specified in Linux kernel documentation. Instead of maintaining same dt bindings in U-Boot doc specify path to dt bindings in Linux kernel & documenting specific changes that are in U-Boot. Signed-off-by: T Karthik Reddy <t.karthik.reddy@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Bin Meng <bmeng.cn@gmail.com>
2019-10-08mmc: zynq_sdhci: Remove check for DM_MMC configSiva Durga Prasad Paladugu
The zynq_sdhci drivers depends on DM_MMC in Kconfig so no need to check for DM_MMC in the driver so this patch removes it. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Switch spi-flash to jedec, spi-nor compatibleMichal Simek
Change has been done across the whole tree only zynqmp-mini-qspi hasn't been fixed. Origin changed done by commit ffd4c7c2ecb7 ("dts: switch spi-flash to jedec, spi-nor compatible") Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08net: phy: Add gmiitorgmii converter supportSiva Durga Prasad Paladugu
This patch adds support for gmiitorgmii converter. This converter sits between the MAC and the external phy MAC <==> GMII2RGMII <==> RGMII_PHY. The ethernet driver probes this bridge and this bridge driver probes real phy driver and invokes the real phy functionalities as requested. This bridge just needs to be configured based on real phy negotiated speed and duplex. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Remove all Xilinx private commandsMichal Simek
All platforms have been moved to distro boot that's why remove the rest of configurations to have unified boot flow. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Use {} around variables for qspi and nand boot cmdsMichal Simek
Follow conventions and used {} around variables. Fixes: 90e97ab31e02 ("arm: zynq: Define distro boot commnads for qspi, nand and nor") Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Fix NOR boot modeMichal Simek
There are two typos in this command that's why it couldn't work properly. This bootmode is almost unused from the beggining on this SoC. Fixes: 90e97ab31e02 ("arm: zynq: Define distro boot commnads for qspi, nand and nor") Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Enable USB1 as secondary boot deviceMichal Simek
Xilinx Zynq SoC has two usb controllers and both could be used as secondary boot method. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Specify MMC controller number for boot sequenceMichal Simek
Xilinx Zynq SoC has two sdhci controllers but boot is only possible from the first one. That's why there is a need to specify controller number. mmc1 is supposed to be secondary boot device and should be also listed in distribution boot. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08net: phy: Define init routine and register generic phy driverSiva Durga Prasad Paladugu
This patch define init routine for generic phy driver and registers it using phy_register as this generic phy driver also needs to be relocated incase of manual reloc. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: dts: Added alias for usb nodeVipul Kumar
This patch added alias for usb node in dts file. Signed-off-by: Vipul Kumar <vipul.kumar@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Align model name with DTMichal Simek
Use model property to distinguish different configurations. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: zynqmp: Add idcodes for new RFSoC silicons ZU48DR and ZU49DRSiva Durga Prasad Paladugu
Add zu48dr and zu49dr to the list of zynqmp devices. The zu48dr and zu49dr are the new RFSoC silicons with id values of 0x7b and 0x7e. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08arm64: versal: Fix for OCM overwriting issueAshok Reddy Soma
This patch reduces the console buffer size from 2048 to 1024, thus fixes OCM overwriting issue. Differences are in bss section as is shown from output: xilinx_versal_mini: all -2056 bss -2048 text -8 u-boot: add: 0/0, grow: 0/-3 bytes: 0/-2056 (-2056) function old new delta cli_simple_run_command 340 332 -8 static.lastcommand 2049 1025 -1024 console_buffer 2049 1025 -1024 Better would be to use PPU RAM but this change is also aligned with changes done in ZynqMP mini configurations. Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Increase input buffer console size to 2kMichal Simek
ZynqMP and Versal is using 2k that's why aligned all platform together to be able to use the same scripts. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Increase init ram size by 4KSiva Durga Prasad Paladugu
Increase init ram size by 4K such that more stack space will be available during initialization as the present stackspace is not sufficient if DEBUG option is enabled and causes system hang. Increasing init ram size provides sufficient stack space during init even if DEBUG enabled and solves the hang issue. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08ARM: zynq: Do not enable NETBSD support by defaultMichal Simek
This option is disable in Xilinx tree for quite a long time that's why let's disable it in mainline. If there is anybody who requires this options then it should be moved to Kconfig first and should be removed from this config. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08fpga: zynqmp: Fix second local variable declarationMichal Simek
No reason to define new_buf again. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08mmc: sdhci: Move ZYNQ_HISPD_BROKEN to KconfigSiva Durga Prasad Paladugu
This patch moves CONFIG_ZYNQ_HISPD_BROKEN to Kconfig Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08net: zynq_gem: Remove check for VersalSiva Durga Prasad Paladugu
This patch removes check for Versal platform in gem driver as it now supports clock setting through clock framework. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08clk: versal: Add clock driver supportSiva Durga Prasad Paladugu
This patch adds clock driver support for Versal platform. The clock driver queries and performs clock operations using PLM firmware by communicating with it using SMC calls. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-08net: zynq_gem: Add new versal compatible stringSiva Durga Prasad Paladugu
This patch adds new versal compatible string to GEM driver for Versal platform. Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>