summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-05-09power: twl4030: Move CONFIG_TWL4030_POWER to KconfigAdam Ford
As requested, I added the CONFIG_TWL4030_POWER to Kconfig and made it the implied default when selecting OMAP34XX as a platform. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09power: twl4030: Add CONFIG_CMD_POWEROFF supportAdam Ford
With the addition of twl4030_power_off(), let's allow the 'poweroff' command to run this function when CONFIG_CMD_POWEROFF is enabled. Tested on a DM3730 with twl4030 PMIC. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2017-05-09omap3_logic: Add Device Tree Support and more DM driversAdam Ford
This patch also removes all the excessive code for NS16550 intiailization as the device tree can do that now. This also adds DM_I2C and DM_MMC since the overlying drivers have the built-in support already. The corresponding include/config/omap3_logic.h also reduced in size due to the new device tree support. Signed-off-by: Adam Ford <aford173@gmail.com> Changes in V2: Retain Auto-detect ability between SOM-LV and Torpedo Split this off from the device sub submissions
2017-05-09ARM: DTS: Add Logic PD DM3730 Torpedo Device TreeAdam Ford
Previous commit has this combined with SOM-LV. This commit has only the Torpedo Device Tree. The device trees were sync'd with 4.9.y stable with two changes: disable mmc2 and stdout-path = &uart1. Both of those two changes will be submitted to the linux-omap list Signed-off-by: Adam Ford <aford173@gmail.com> Changes in V2: Split device tree from other board
2017-05-09ARM: DTS: Add Logic PD DM3730 SOM-LV initial supportAdam Ford
This adds the device tree. Previous commit added both boards at the same time. Signed-off-by: Adam Ford <aford173@gmail.com> Changes in V2: Split the SOM-LV from Torpedo
2017-05-09OMAP3: Add SMSC9221 device tree for omap devices connected on GPMC.Adam Ford
Some OMAP3 devices support an SMSC ethernet PHY connected to the GPMC bus. This copies this device tree from Linux 4.9.y stable Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-05-09omap3: Copy twl4030 device tree from Linux 4.9.y stableAdam Ford
Many OMAP3 boards use a TWL4030 PMIC. This brings in the related device tree information for common TWL4030 and TWL4030 with OMAP3. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-05-09ARM: OMAP: I2C: Support New read, write and probe functions for OMAP3Adam Ford
New i2c_read, i2c_write and i2c_probe functions, tested on OMAP4 (4430/60/70), OMAP5 (5430) and AM335X (3359) were added in 960187ffa125( "ARM: OMAP: I2C: New read, write and probe functions") but not tested on OMAP3. This patch will allow the updated drivers using device tree and DM_I2C to operate on OMAP3. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-05-09omap3630: Copy Device tree from Linux 4.9.y stableAdam Ford
Add device tree support to allow for CONFIG_OF_CONTROL in OMAP3630 boards. DM3730 can use this same device tree. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-05-09omap3: Copy Device tree from Linux 4.9.y stableAdam Ford
Add device tree support to allow for CONFIG_OF_CONTROL in OMAP3 boards. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-05-09omap_hsmmc: update struct hsmmc to accommodate omap3 from DTAdam Ford
This patch changes the way DM_MMC calculates offset to the base register of MMC. Previously this was through an #ifdef but that wasn't necessary for OMAP3. This patch will now add in the offset to the base address based on the .compatible flags. Signed-off-by: Adam Ford <aford173@gmail.com> V2: Remove ifdef completely and reference offset from the omap_hsmmc_ids table. V1: Change ifdef to ignore OMAP3 Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09Allow boards to initialize the DT at runtime.Alex Deymo
In some boards like the Raspberry Pi the initial bootloader will pass a DT to the kernel. When using U-Boot as such kernel, the board code in U-Boot should be able to provide U-Boot with this, already assembled device tree blob. This patch introduces a new config option CONFIG_OF_BOARD to use instead of CONFIG_OF_EMBED or CONFIG_OF_SEPARATE which will initialize the DT from a board-specific funtion instead of bundling one with U-Boot or as a separated file. This allows boards like the Raspberry Pi to reuse the device tree passed from the bootcode.bin and start.elf firmware files, including the run-time selected device tree overlays. Signed-off-by: Alex Deymo <deymo@google.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09bcm2835_wdt: support for the BCM2835/2836 watchdogPaolo Pisati
Signed-off-by: Paolo Pisati <p.pisati@gmail.com>
2017-05-09arm: rpi: Add a TODO to move all messages into the msg handlerSimon Glass
The board code should all move into msg.c for consistency. Add a TODO for this. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09dm: video: arm: rpi: Convert to use driver model for videoSimon Glass
Adjust the video driver to work with driver model and move over existing baords. There is no need to keep the old code. We can also drop setting of CONFIG_FB_ADDR since driver model doesn't have this problem. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-05-09dm: video: Add driver-model support to lcd_simplefbSimon Glass
Allow this to work with CONFIG_DM_VIDEO enabled. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-05-09dm: video: Refactor lcd_simplefb to prepare for driver modelSimon Glass
Adjust this function so that we can convert it to support CONFIG_DM_VIDEO without a lot of code duplication. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-05-09video: arm: rpi: Move the video settings out of the driverSimon Glass
Add a function to set the video parameters to the msg handler and remove it from the video driver. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-05-09video: arm: rpi: Move the video query out of the driverSimon Glass
Add a function to get the video size to the msg handler and remove it from the video driver. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-05-09dm: arm: rpi: Drop CONFIG_OF_EMBEDSimon Glass
We should not use an embedded device tree on a production board. There does not seem to be any reason for it in commit 7670909. So drop this. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09dm: mmc: rpi: Convert Raspberry Pi to driver model for MMCSimon Glass
Convert the bcm2835 SDHCI driver over to support CONFIG_DM_MMC and move all boards over. There is no need to keep the old code since there are no other users. Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09arm: rpi: Add a function to obtain the MMC clockSimon Glass
Move this code into the new message handler file. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09arm: rpi: Add a file to handle messagesSimon Glass
The bcm283x chips provide a way for the ARM core to communicate with the graphics processor, which is in charge of many things. This is handled by way of a message prototcol. At present the code for sending message (and receiving a reply) is spread around U-Boot, primarily in the board file. This means that sending a message from a driver requires duplicating the code. Create a new message implementation with a function to support powering on a subsystem as a starting point. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09dm: arm: rpi: Use driver model for EthernetSimon Glass
Enable CONFIG_DM_ETH so that driver model is used for the USB Ethernet device. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09dm: arm: rpi: Move to driver model for USBSimon Glass
Start using driver model for USB on the Raspberry Pi. The dwc2 supports this now so this is just a config change. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09arm: rpi: Drop CONFIG_CONS_INDEXSimon Glass
This is not needed now that serial uses driver model. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09arm: rpi: Drop the GPIO device addressesSimon Glass
We can rely on the device tree to provide this information. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09string: Use memcpy() within memmove() when we canSimon Glass
A common use of memmove() can be handled by memcpy(). Also memcpy() includes an optimisation for large sizes: it copies a word at a time. So we can get a speed-up by calling memcpy() to handle our move in this case. Update memmove() to call memcpy() if the destination is before the source. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-05-09net: smsc95xx: Correct free_pkt() implementationSimon Glass
On further review this returns the wrong packet length from the driver. It may not be noticed since protocols will take care of it. Fix it by subtracting the header length from the packet length returned. Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09Merge git://git.denx.de/u-boot-dmTom Rini
2017-05-09Merge git://www.denx.de/git/u-boot-marvellTom Rini
2017-05-09defconfig: dra7xx_evm: enable CONFIG_BLK and disk driver model for SCSIJean-Jacques Hiblot
Enable disk driver model for dra7xx_evm as dwc_ahci supports driver model. As a consequence we must also enable CONFIG_BLK and CONFIG_DM_USB. Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Dropped CONFIG_SPL_PHY=y in sandbox_spl to fix build error: Signed-off-by: Simon Glass <sjg@chromium.org>
2017-05-09drivers: block: dwc_ahci: Implement a driver for Synopsys DWC sata deviceJean-Jacques Hiblot
Implement a sata driver for Synopsys DWC sata device based on U-boot driver model. Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09dra7: dtsi: mark ocp2scp bus compatible with "simple-bus"Jean-Jacques Hiblot
This is needed to probe devices under that bus such as the SATA PHY. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09drivers: phy: add PIPE3 phy driverJean-Jacques Hiblot
This phy is found on omap platforms with sata capabilities. Except for the part related to the DM and the PHY framework, the code is basically a copy paste from arch/arm/mach-omap2/pipe3-phy.c Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09dm: test: Add tests for the generic PHY uclassJean-Jacques Hiblot
Those tests check: - the ability for a phy-user to get a phy based on its name or its index - the ability of a phy device (provider) to manage multiple ports - the ability to perform operations on the phy (init,deinit,on,off) - the behavior of the uclass when optional operations are not implemented Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09drivers: phy: add generic PHY frameworkJean-Jacques Hiblot
The PHY framework provides a set of APIs to control a PHY. This API is derived from the linux version of the generic PHY framework. Currently the API supports init(), deinit(), power_on, power_off() and reset(). The framework provides a way to get a reference to a phy from the device-tree. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09scsi: dm: split scsi_scan()Jean-Jacques Hiblot
The DM version of scsi_scan() is becoming a bit long, it can be split: scsi_scan() iterates over the IDs and LUNs and for each id/lun pair calls do_scsi_scan_one() to do the work of: - detecting an attached drive - creating the associated block device if a drive is found. Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9263ek: Enable early debug UARTWenyou Yang
Enable the early debug UART to debug problems when an ICE or other debug mechanism is not available. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9263ek: Clean up codeWenyou Yang
Because the introduction of the pinctrl and clk drivers and the device tree files, remove unneeded hard coded related code from the board file. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09configs: at91sam9263ek: Update for DT and DM supportWenyou Yang
Update the configuration files to support the device tree and driver model. The device clock and pins configuration are handled by the clock and the pinctrl drivers respectively. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9rlek: Enable early debug UARTWenyou Yang
Enable the early debug UART to debug problems when an ICE or other debug mechanism is not available. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9rlek: Clean up codeWenyou Yang
Since the introduction of the pinctrl and clk drivers and the device tree files, remove unneeded hard coded related code from the board file. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09configs: at91sam9rlek: Update for DT and DM supportWenyou Yang
Update the configuration files to support the device tree and driver model. The device clock and pins configuration are handled by the clock and the pinctrl drivers respectively. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9260ek/9g20ek: Enable early debug UARTWenyou Yang
Enable the early debug UART to debug problems when an ICE or other debug mechanism is not available. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9260ek: Clean up codeWenyou Yang
Since the introduction of the pinctrl and clk drivers and the device tree files, remove unneeded hard coded related code from the board file. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09configs: at91sam9260ek/9g20ek: Update for DT and DMWenyou Yang
Update the configuration files to support the device tree and driver model. The device clock and pins configuration are handled by the clock and the pinctrl drivers respectively. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9m10g45ek: Enable early debug UARTWenyou Yang
Enable the early debug UART to debug problems when an ICE or other debug mechanism is not available. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09board: at91sam9m10g45ek: Clean up codeWenyou Yang
Since the introduction of the pinctrl and clk drivers and the device tree files, remove unneeded hard coded related code from the board file. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2017-05-09configs: at91sam9m10g45ek: Update to support DM/DTWenyou Yang
Update the configuration files to support the device tree and driver model. The device clock and pins configuration are handled by the clock and the pinctrl drivers respectively. Because the limitation of internal SRAM size, the SPL with driver model can't be supported, disable the SPL option. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org>