summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-24arm64: zynqmp: Switch spi-flash to jedec,spi-nor on m-a2197Michal Simek
Mainline has done this switch and there is no reason not to switch it too. Mainline U-Boot patch which has done that switch: "dts: switch spi-flash to jedec, spi-nor compatible" (sha1: ffd4c7c2ecb745586239eb98d5dc0fe5e6ebe3bd) Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Add label property to all ina226 on m-a2197-01Michal Simek
Label property is adding capability to distiguish chips from each other when iio framework is used. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Enable iio-hwmon for ina226 on m-a2197-01Michal Simek
ina226 hwmon driver is deprecated and it is recommended to use new iio based driver. The patch is enabling iio-hwmon driver to export functionality from IIO to hwmon interface to be able to use lm-sensors package. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Fix typo in zynqmp-p-a2197-00-revAMichal Simek
Trivial fix but not detected by checkpatch. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Added new tps53679 compatible string for a2197-0x boardsNishant Mittal
Added tps53679 compatible string to tps53681. They are both compatible to each other and tps53679 has Linux driver already. Signed-off-by: Nishant Mittal <nishant.mittal@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Fix i2c address of u70 on p-a2197-00 boardNishant Mittal
tps53681 is i2c address 0x60 not 0xc0. Signed-off-by: Nishant Mittal <nishant.mittal@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Add label property to all ina226 on g-a2197-00Michal Simek
Label property is adding capability to distiguish chips from each other when iio framework is used. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Enable iio-hwmon for ina226 on g-a2197-00Michal Simek
ina226 hwmon driver is deprecated and it is recommended to use new iio based driver. The patch is enabling iio-hwmon driver to export functionality from IIO to hwmon interface to be able to use lm-sensors package. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Use ethernet-phy as node name for ethernet physMichal Simek
Ethernet phys based on devicetree specification should be using ethernet-phy@ node name instead of pure phy@. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: zynqmp: Sync names for SC with VersalMichal Simek
ZynqMP based System controller is present on Versal boards. This patch is aligning names with Versal to follow the spec. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24ARM: zynq: Add missing pl353-smc nodeMichal Simek
DT binding was reviewed in Linux by commit b0b41af12a1b ("dt-bindings: memory: Add pl353 smc controller devicetree binding information") that's why this fragment can be also added to U-Boot repository. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24ARM: zynq: Move BOOTM_NETBSD to KconfigMichal Simek
The commit 4b0bcfa7c4ec ("Kconfig: Migrate CONFIG_BOOTM_* options") moved BOOTM_ options to Kconfig that's why align zynq defconfig with it. Disabling NETBSD was done by commit d6f48ea5ce18 ("ARM: zynq: Do not enable NETBSD support by default"). Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: versal: Enable GPIO command for VersalMichal Simek
Enable GPIO command for Xilinx Versal platform. Driver is updated that's why it can be used directly. Driver is enabled by default through Kconfig. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24gpio: zynq: Add gpio driver support for PMC gpioShubhrajyoti Datta
This patch adds support for gpio driver for pmc gpio. Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24gpio: zynq: Add gpio driver support for VersalAshok Reddy Soma
This patch adds support for gpio driver for versal platform Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24firmware: zynqmp: Clean up zynqmp_power_probeMichal Simek
Fix error debug messages to be more accurate and aligned with debug message style in the whole file. And do not initialize ret variable because it is initialized later on and it is just additional step. Fixes: 1327d1678bd2 ("firmware: zynqmp: Add zynqmp-power support") Reported-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
2019-10-24firmware: zynqmp: Report error when xilinx_pm_request called from EL3Michal Simek
Function should report error when called in EL3 context. Also report it as error instead 0 (success). Reported-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
2019-10-24arm64: zynqmp: Convert invoke_smc() to xilinx_pm_request()Michal Simek
Remove macros which use PM_SIP_SVC offset and convert invoke_smc() to xilinx_pm_request() which do calculation with PM_SIP_SVC already. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: versal: Rename versal_pm_request to xilinx_pm_requestMichal Simek
Use generic name instead of Versal specific because this should be also used on ZynqMP. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24arm64: xilinx: Move firmware functions from platform to driverMichal Simek
versal_pm_request() and invoke_smc() are almost the same. Only one difference is that versal_pm_request is adding PM_SIP_SVC offset to api_id. The patch is moving platform implementation to firmware driver code for synchronization. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Luca Ceresoli <luca@lucaceresoli.net>
2019-10-24arm64: versal: Clean pm_api_id usageMichal Simek
Copy enum values from platform code to firmware code. IDs are shared between ZynqMP and Versal. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2019-10-24Merge https://gitlab.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- Add support for HyperBus Memory Controller of TI's J721e and AM654 SoCs (Vignesh)
2019-10-24MAINTAINERS: add MICROCHIP_FLEXCOM to at91Eugen Hristev
Add microchip flexcom driver to at91. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24configs: sam9x60ek: enable microchip_flexcom, i2c and eepromEugen Hristev
enable driver model for i2c, eeprom for mac retrieval from eeprom i2c memory, and microchip_flexcom driver. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24board: sam9x60ek: add support for MAC address retrievalEugen Hristev
Retrieve mac address from i2c eeprom at boot time. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24ARM: dts: sam9x60ek: add i2c0 as flexcom0 subnode and eeprom memoryEugen Hristev
Add i2c0 bus as subnode to flx0. Add eeprom memory as slave device to i2c0. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24ARM: dts: sam9x60: add flx0 nodeEugen Hristev
Add node for Flexcom0. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24misc: microchip_flexcom: introduce microchip_flexcom driverEugen Hristev
The Microchip Flexcom is just a wrapper which embeds a SPI controller, an I2C controller and an USART. Only one function can be used at a time and is chosen at boot time according to the device tree. The bindings are kept as in Linux. The driver registers to MISC_UCLASS. Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com>
2019-10-24configs: sei610: khadas-vim3 : disable Gadget support for the DWC3Jean-Jacques Hiblot
Those platform use the DWC2 controller for the gadget support and the DWC3 for host-only operations. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24ARM: DTS: keystone: complete the description of the USB PHY devicesJean-Jacques Hiblot
As the PHY driver now handles the transitions of USB power domain, we must add this information in the node of each PHY. Also, the phy are expected in the "phys" property, not "usb-phys". Also add the aliases for the USB ports on boards with more than a single port. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24configs: k2g_evm_defconfig: disable XHCI_DWC3 and enable KEYSTONE_USB_PHYJean-Jacques Hiblot
KEYSTONE_USB_PHY is now required for proper USB operations. XHCI_DWC3 can be disabled as the xhci-dwc3 is not used anymore USB_DWC3_GADGET can also be removed, it is now selected automatically. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24phy: keystone-usb: handle the transition of the USB power domainJean-Jacques Hiblot
There is no proper power domain support for the keystone platforms. However we need to turn off the USB domains before jumping to linux or it fail to boot (observed with k2e and k2l platforms). This can be done in the PHY driver as it is dedicated only to the keystone platforms and matches the required on/off sequence. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24ARM: keystone: Do not enable the USB power domains at the board levelJean-Jacques Hiblot
This breaks linux boot sequence. Observed on k2e and k2l platforms. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24ARM: keystone: increase PSC timeoutJean-Jacques Hiblot
Turning off the USB clocks may take longer than 100us. Increase the timeout to 100ms. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3: Kconfig: get rid of obsolete mode selectionJean-Jacques Hiblot
The mode selection for the DWC3 is kind of obsolete. The driver does not have to be host only or gadget only. This choice is confusing. All the remaining callers of dwc3_uboot_init() explicitly set dr_mode before calling the function, so none rely on a default behavior. Remove the choice menu and keep only the USB_DWC3_GADGET option. Enable it by default if USB_GADGET and USB_DWC3 are enabled. It must be disabled for the evb-rk3328 as it uses DWC2 for the gadget and DWC3 for the host. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3: Add dwc3_of_parse() to get quirks information from DTJean-Jacques Hiblot
Add a new function that read quirk and configuration information from the DT. The goal is to allow platforms using their own version of DWC3 driver to migrate to the generic DWC3 driver. The function is adapted from the function dwc3_get_properties() in the linux dwc3 driver introduced in commit c5ac6116db35d. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3-generic: if no max speed is specified in DT, assume super speedJean-Jacques Hiblot
There is no need to fail if the maximum speed is not specified. If the speed is not specified, do the same as linux and assume super speed. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3-generic: add a new host driver that uses the dwc3 coreJean-Jacques Hiblot
Currently the host driver used by dwc3-generic is "xhci-dwc3". This is a functional driver but it doesn't use the dwc3 core and, in particular, it lacks some bits that may be important. For example on the k2 platforms, it is important that the phy are properly suspended when the USB is not used anymore. The dwc3 core also has a partial support for quirks. The new driver can be used as a drop-in replacement for "xhci-dwc3". In terms of implementation, it may seem strange that 2 private structures dwc3_generic_host_priv and dwc3_generic_priv) are used. The reason for this is simply that the xhci layer expects a struct xhci_ctrl at the beginning of the private data and it seemed wasteful to include it also for the peripheral case. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3-generic: factorize codeJean-Jacques Hiblot
Factor code for re-usability. This is another step toward adding host support. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3-generic: use platdataJean-Jacques Hiblot
Separate platform data from the private data. This is one step toward adding host support. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3: always use the inlined version of dwc3_host_init/dwc3_host_exitJean-Jacques Hiblot
No one is actually implementing those functions. We could remove calls to these altogether, but it does not really hurt to keep the empty inlined version at the moment and it satisfies a symmetry with the gadget mode. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: xhci: move xhci.h to include usbJean-Jacques Hiblot
The xhci.h header file is currently located under drivers/usb/xhci Move it to the include/usb folder to make it available to drivers that are not under drivers/usb/xhci Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: dwc3: switch to peripheral mode when exitingJean-Jacques Hiblot
This allow the phy to enter idle and then suspend. the K2 platforms require the PHY to be suspended before the USB domain clock can be turned off. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24usb: host: remove the xhci-zynqmp driverJean-Jacques Hiblot
This driver is not used anymore. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-10-24configs: j721e_evm_a72_defconfig: Add HBMC related configsVignesh Raghavendra
Enable HBMC and HyperFlash in A72 SPL and A72 U-Boot Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>
2019-10-24configs: j721e_evm.h: Define CONFIG_SYS_MAX_FLASH_BANKS_DETECTVignesh Raghavendra
Define CONFIG_SYS_MAX_FLASH_BANKS_DETECT so that number of flash banks are automatically detected by CFI flash driver Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>
2019-10-24arm: dts: k3-j721e-som-p0: Add HyperFlash nodeVignesh Raghavendra
J721e SoM as a 64MB HyperFlash on board. Add pinmux and DT node for the same. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>
2019-10-24arm: dts: k3-j721e-mcu-wakeup: Add HyperBus Controller nodeVignesh Raghavendra
Add DT node for HyperBus Memory Controller in the FSS. On J721e, its not possible to use OSPI0 and HBMC simultaneously as they are muxed within the Flash Subsystem hence disable HBMC by default as keep OSPI enabled. Bootloader will fixup DT when it detects HyperFlash instead of OSPI. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>
2019-10-24mtd: Add TI HyperBus Memory Controller driverVignesh Raghavendra
AM654/J721e has HyperBus Memory Controller that supports HyperFlash and HyperRAM devices. It provides a memory mapped interface to interact with these devices. Add a driver to support the same. Driver calibrates the controller, setups up for MMIO access and probes HyperFlash child node. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>
2019-10-24mtd: cfi_flash: Use CONFIG_SYS_MONITOR_BASE only when definedVignesh Raghavendra
Make use of CONFIG_SYS_MONITOR_BASE only when available to avoid build error when CONFIG_SYS_MONITOR_BASE is not defined. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Reviewed-by: Stefan Roese <sr@denx.de>