Tom Rini [Mon, 7 Dec 2015 13:13:02 +0000 (08:13 -0500)]
Merge branch 'zynq' of git://denx.de/git/u-boot-microblaze
Michal Simek [Tue, 1 Dec 2015 07:37:16 +0000 (08:37 +0100)]
dm: core: Enable SPL_SIMPLE_BUS by default
This option is needed for all SoCs which have nodes on bus. Without
enabling this drivers are not found and probed.
Issue was found on Zynq MMC probe.
Enable this option by default.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Fri, 4 Dec 2015 10:42:01 +0000 (11:42 +0100)]
dm: cmd: Relocate subcommands when MANUAL_RELOC
Subcommands contain pointers to functions which are not updated when
MANUAL_RELOC is enabled. This patch fix it.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Fri, 4 Dec 2015 15:56:57 +0000 (16:56 +0100)]
i2c: cmd: Relocate subcommands when MANUAL_RELOC
Subcommands contain pointers to functions which are not updated when
MANUAL_RELOC is enabled. This patch fix it.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Wed, 2 Dec 2015 11:57:11 +0000 (12:57 +0100)]
serial: zynq: Remove duplicated header
debug_uart.h is included twice.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Tue, 1 Dec 2015 13:29:34 +0000 (14:29 +0100)]
serial: zynq: Fix incorrect reference to s5p driver
Remove this c&p error from s5p driver.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Mon, 30 Nov 2015 15:13:03 +0000 (16:13 +0100)]
zynq: sdhci: Move driver to DM
Move driver to DM
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Michal Simek [Mon, 30 Nov 2015 15:07:07 +0000 (16:07 +0100)]
zynq: sdhci: Remove zynq_sdhci_of_init()
Prepare for using DM.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Siva Durga Prasad Paladugu [Wed, 25 Nov 2015 06:21:37 +0000 (11:51 +0530)]
zynq: sdhci: Calculate minimum frequency based on max frequency
Calculate the minimum sd clock based on max clock. This will
be done by add_sdhci() if we pass minimum clock as zero.
It also does based on SD host contoller version.
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Fri, 20 Nov 2015 09:11:03 +0000 (10:11 +0100)]
ARM: zynq: Remove unused SERIAL macros for serial_zynq
Remove unused macros when driver was moved to DM.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Tue, 1 Dec 2015 08:03:43 +0000 (09:03 +0100)]
ARM: zynq: Extend malloc size
SPL DM MMC FAT requires more malloc space(3k fat buffers + dm)
that it is available now. Extend SPL malloc space.
Current OCM layout:
0xffff0000 - 0xfff2000 - Full malloc space
0xffff2000 - 0xffff300 - Stack location
0xfffff300 - CONFIG_SYS_MALLOC_F_LEN - Early malloc space
0xfffffd00 - sizeof(GD) - GD
0xfffffe00 - 0xffffffff - SoC specific boot code
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 23 Nov 2015 15:27:38 +0000 (16:27 +0100)]
ARM: zynq: Fix location of stack and malloc areas
The patch
"board_init: Change the logic to setup malloc_base"
(sha1:
9ac4fc82071ce346e3885118242ff45d22f69b82)
breaks SPL for Zynq because it puts early alloc area on the stack which
caused that stack was decreased by CONFIG_SYS_MALLOC_F_LEN (0x400)
and there was not enough space for regular stack.
This patch changes memory layout to better utilize the last 64k OCM
block.
0xffff0000 - 0xfff1000 - Full malloc space
0xffff1000 - 0xffff300 - Stack location
0xfffff300 - CONFIG_SYS_MALLOC_F_LEN - Early malloc space
0xfffffd00 - sizeof(GD) - GD
0xfffffe00 - 0xffffffff - SoC specific boot code
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Tested-by: Moritz Fischer <moritz.fischer@ettus.com>
Michal Simek [Tue, 1 Dec 2015 07:41:17 +0000 (08:41 +0100)]
ARM: zynq: Enable debug console for zc702
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Fri, 20 Nov 2015 09:13:25 +0000 (10:13 +0100)]
ARM64: zynqmp: Enable FIT config option via Kconfig
Remove configuration options from board file.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Thu, 24 Sep 2015 18:13:45 +0000 (20:13 +0200)]
net: gem: Enable CTRL+C in wait_for_bit
Enable to break waiting loop at any time.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Michal Simek [Mon, 30 Nov 2015 13:34:52 +0000 (14:34 +0100)]
net: gem: Move gem to Kconfig
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 13:17:50 +0000 (14:17 +0100)]
net: gem: Read information about interface from DT
Do not set interface via configs. Read information from DT.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 13:14:56 +0000 (14:14 +0100)]
net: gem: Move driver to DM
- Enable DM_ETH by default for Zynq and ZynqMP
- Remove board_eth_init code
- Change miiphy_read function to return value instead of error code
based on DM requirement
- Do not enable EMIO DT support by default
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Michal Simek [Mon, 30 Nov 2015 13:14:37 +0000 (14:14 +0100)]
net: gem: Fix miiphy_read name
Sync it with write function.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 13:00:20 +0000 (14:00 +0100)]
net: gem: Remove zynq_gem_of_init()
This function was used for OF init before DM.
Remove this function as the part of move to DM.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 12:58:36 +0000 (13:58 +0100)]
net: gem: Enable MDIO bus earlier
Enable access to MDIO before zynq_gem_init is called.
It enables read information about phy earlier.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 30 Nov 2015 13:03:37 +0000 (14:03 +0100)]
net: gem: Check if priv->phydev is valid
Check return value.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 12:54:43 +0000 (13:54 +0100)]
net: gem: Extract phy init code
Move phy init code out of zynq_gem_init. DM drivers are normally calling
this code from probe function.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 30 Nov 2015 12:44:49 +0000 (13:44 +0100)]
net: gem: Remove phydev variable
Resort code to use priv->phydev variable directly.
It will simplify move to DM.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 30 Nov 2015 09:24:15 +0000 (10:24 +0100)]
net: gem: Change mii function not to use eth_device structure
Next step to move driver to driver model. Do not use eth_device
structure. Use private structure instead.
Add iobase to private structure to store gem iobase.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 30 Nov 2015 09:09:43 +0000 (10:09 +0100)]
net: gem: Change mdio_wait prototype to pass regs
Pass regs instead of dev because this will be chagned by
driver model.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Michal Simek [Mon, 30 Nov 2015 12:38:32 +0000 (13:38 +0100)]
net: gem: Do not continue if phy is not found
Add return value for phy detection algorithm to stop init function when
phy is not found.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 14:46:12 +0000 (15:46 +0100)]
ARM: zynq: Remove CONFIG_API
CONFIG_API is causing compilation error when DM_ETH is enabled because
eth_get_dev() is not available.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Michal Simek [Mon, 30 Nov 2015 10:23:32 +0000 (11:23 +0100)]
ARM: zynq: Remove PHYLIB from config to defconfig
Move PHYLIB from board config to defconfig
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Jagan Teki <jteki@openedev.com>
Tom Rini [Mon, 7 Dec 2015 02:53:18 +0000 (21:53 -0500)]
Merge git://git.denx.de/u-boot-nios
Tom Rini [Mon, 7 Dec 2015 02:52:40 +0000 (21:52 -0500)]
Merge git://git.denx.de/u-boot-usb
Marek Vasut [Mon, 30 Nov 2015 19:40:07 +0000 (20:40 +0100)]
arm: socfpga: Enable CONFIG_DM_MMC
Enable driver model MMC support on SoCFPGA.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Chin Liang See <clsee@altera.com>
Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Marek Vasut [Mon, 30 Nov 2015 19:41:04 +0000 (20:41 +0100)]
mmc: dwmmc: socfpga: Convert to DM
Convert the SoCFPGA shim for registering the DWMMC driver to DM.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Chin Liang See <clsee@altera.com>
Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Marek Vasut [Mon, 30 Nov 2015 19:38:45 +0000 (20:38 +0100)]
arm: socfpga: Remove cpu_mmc_init()
This function triggers the registration of the dwmmc driver on SoCFPGA,
but this is not needed in case the driver is correctly probed from DT.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Chin Liang See <clsee@altera.com>
Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Stefan Roese [Wed, 18 Nov 2015 10:06:09 +0000 (11:06 +0100)]
arm: socfpga: Add SoCFPGA SR1500 board
The SR1500 board is a CycloneV based board, similar to the EBV
SoCrates, equipped with the following devices:
- SPI NOR
- eMMC
- Ethernet
Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Marek Vasut <marex@denx.de>
Cc: Pavel Machek <pavel@denx.de>
Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
Acked-by: Pavel Machek <pavel@denx.de>
Marek Vasut [Wed, 2 Dec 2015 14:28:26 +0000 (15:28 +0100)]
usb: xhci: zynqmp: Removing unused function usb_phy_reset
This patch removes unsued function usb_phy_reset, rather common function
dwc3_phy_reset is used.
Signed-off-by: Marek Vasut <marex@denx.de>
Rajesh Bhagat [Wed, 2 Dec 2015 06:14:28 +0000 (11:44 +0530)]
usb: xhci: fsl: Removing unused function usb_phy_reset
This patch removes unsued function usb_phy_reset, rather common function
dwc3_phy_reset is used.
Signed-off-by: Rajesh Bhagat <rajesh.bhagat@freescale.com>
Rajesh Bhagat [Wed, 2 Dec 2015 06:14:27 +0000 (11:44 +0530)]
usb: xhci: dwc3: Adding reset delay requirement as per dwc3 databook
As per dwc3 databook, delay is required before taking the core out of reset.
This delay is required so that the PHY are stable, and then we can take core
out of reset.
Reference is taken from linux dwc3 code, file: drivers/usb/dwc3/core.c.
Signed-off-by: Sriram Dash <sriram.dash@freescale.com>
Signed-off-by: Rajesh Bhagat <rajesh.bhagat@freescale.com>
Alexey Brodkin [Wed, 2 Dec 2015 09:32:02 +0000 (12:32 +0300)]
usb: add support for generic EHCI devices
This driver is meant to be used with any EHCI-compatible host
controller in case if there's no need for platform-specific
glue such as setup of controller or PHY's power mode via
GPIOs etc.
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Stephen Warren <swarren@nvidia.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Marek Vasut <marex@denx.de>
Marek Vasut [Mon, 30 Nov 2015 17:15:33 +0000 (18:15 +0100)]
sunxi: usb: Rename the sunxi usb driver DM entry
The DM entry should be unique, otherwise it will collide with other
drivers. Fix this by assigning the driver a more unique name than
usb_ehci.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Ian Campbell <ijc@hellion.org.uk>
Cc: Simon Glass <sjg@chromium.org>
Marek Vasut [Mon, 30 Nov 2015 17:10:09 +0000 (18:10 +0100)]
usb: zynqmp: Fix build warnings
The driver does "return 0" in function with void type.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Rajesh Bhagat [Mon, 30 Nov 2015 07:01:34 +0000 (12:31 +0530)]
drivers:usb:fsl: Add T4080 as affected soc for Erratum
A007792 sw workaround
Apply Erratum
A007792 sw workaround for T4080
Signed-off-by: Sriram Dash <sriram.dash@freescale.com>
Signed-off-by: Rajesh Bhagat <rajesh.bhagat@freescale.com>
Signed-off-by: Ramneek Mehresh <ramneek.mehresh@freescale.com>
Felipe Balbi [Thu, 1 Oct 2015 19:22:18 +0000 (14:22 -0500)]
usb: dwc3: fix build warnings
fix the following build warnings:
drivers/usb/dwc3/core.c: In function ‘dwc3_uboot_init’:
drivers/usb/dwc3/core.c:625:6: warning: ‘dev’ is used uninitialized in this function [-Wuninitialized]
mem = devm_kzalloc(dev, sizeof(*dwc) + DWC3_ALIGN_MASK, GFP_KERNEL);
^
drivers/usb/dwc3/dwc3-omap.c: In function ‘dwc3_omap_uboot_init’:
drivers/usb/dwc3/dwc3-omap.c:380:7: warning: ‘dev’ is used uninitialized in this function [-Wuninitialized]
omap = devm_kzalloc(dev, sizeof(*omap), GFP_KERNEL);
Signed-off-by: Felipe Balbi <balbi@ti.com>
Felipe Balbi [Thu, 1 Oct 2015 19:22:17 +0000 (14:22 -0500)]
usb: host: xhci-omap: fix build break
Fix the following build break:
drivers/usb/host/xhci-omap.c:35:5: error: ‘board_usb_init’ aliased to external symbol ‘__board_usb_init’
int board_usb_init(int index, enum usb_init_type init)
^
Signed-off-by: Felipe Balbi <balbi@ti.com>
Siva Durga Prasad Paladugu [Mon, 16 Nov 2015 11:19:24 +0000 (16:49 +0530)]
usb: zynqmp: Enable USB XHCI support
Enable USB XHCI support for ZynqMP
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Siva Durga Prasad Paladugu [Mon, 16 Nov 2015 11:19:23 +0000 (16:49 +0530)]
usb: zynqmp: Add XHCI driver support
Added USB XHCI driver support for zynqmp.
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Tom Rini [Sun, 6 Dec 2015 16:09:59 +0000 (11:09 -0500)]
am33xx: Update serial pdata
We now want to make sure that we have the platform data for NS16550 when
we do not have OF_CONTROL set.
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Thomas Chou [Tue, 1 Dec 2015 08:18:20 +0000 (16:18 +0800)]
altera_qspi: fix erase and write error code
Fix erase and write error code, which should be "protected".
From the "Embedded Peripherals IP User Guide" of Altera,
The "Illegal write" flag indicates that a write instruction is
targeting a protected sector on the flash memory. This bit is
set to indicate that the IP has cancelled a write instruction.
The "Illegal erase" flag indicates that an erase instruction has
been set to a protected sector on the flash memory. This bit is
set to indicate that the IP has cancelled the erase instruction.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Chin Liang See <clsee@altera.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Thomas Chou [Tue, 1 Dec 2015 09:00:22 +0000 (17:00 +0800)]
altera_qspi: add lock unlock ops
Add lock() and unlock() mtd ops to altera_qspi.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Chin Liang See <clsee@altera.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Simon Glass [Fri, 4 Dec 2015 15:58:39 +0000 (08:58 -0700)]
dm: tegra: Provide serial platform data for SPL
At present an incorrect #if term is preventing this data from being compiled
in. All tegra boards use driver model for serial, so we can just drop this.
Fixes: fde7e18938d8 ("dm: tegra: pci: Move CONFIG_PCI_TEGRA to Kconfig")
Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Simon Glass [Fri, 4 Dec 2015 15:58:38 +0000 (08:58 -0700)]
dm: serial: ns16550: Add pre-reloc flag to the driver
For platforms that don't use device tree in SPL the only way to mark this
driver as 'required by relocation' is with the DM_FLAG_PRE_RELOC flag. Add
this to ensure that the driver is bound.
Fixes: fde7e18938d8 ("dm: tegra: pci: Move CONFIG_PCI_TEGRA to Kconfig")
Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Simon Glass [Fri, 4 Dec 2015 15:58:37 +0000 (08:58 -0700)]
tegra: Remove merge markers in some Kconfig files
These were added by mistake in commit
fde7e189. They cause a warning when
configuring the boards. Remove them.
Fixes: fde7e18938d8 ("dm: tegra: pci: Move CONFIG_PCI_TEGRA to Kconfig")
Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Reported-by: Kevin Hilman <khilman@linaro.org>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Stephen Warren [Sat, 5 Dec 2015 05:07:46 +0000 (22:07 -0700)]
rpi: add support for Raspberry Pi Zero
For U-Boot's purposes, at present all we care about is ensuring there's
a model table entry.
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Stephen Warren [Sat, 5 Dec 2015 05:07:45 +0000 (22:07 -0700)]
rpi: fix revision scheme parsing
The RPi has two different schemes for encoding board revision values.
When adding RPi 2 support, I thought that the conflicting type field
values were to be interpreted based on bcm2835-vs-bcm2836. In fact, the
scheme bit determines the encoding. The RPi Zero uses the bcm2835 yet
uses the new encoding scheme. Fix the code to cater for this correctly.
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Stephen Warren [Sat, 5 Dec 2015 05:07:44 +0000 (22:07 -0700)]
rpi: get rid of BCM2835_BOARD_REV_* macros
There are two numbering schemes for the RPi revision values; old and new
scheme. The values within each scheme overlap. Hence, it doesn't make
sense to have absolute/global names for the revision IDs. Get rid of the
names and just use the raw revision/type values to set up the array of
per-revision data.
This change makes most sense when coupled with the next change. However,
it's split out so that the mechanical cut/paste is separate from the
logic changes for easier review and problem bisection.
Signed-off-by: Stephen Warren <swarren@wwwdotorg.org>
Philippe De Swert [Thu, 3 Dec 2015 22:11:23 +0000 (00:11 +0200)]
mkimage : Fix generating multi and script images
Seems
92a655c3 broke creating multi and script type images.
Since the file1:file2:file3 string does not get split up,
it fails on trying to open an non-existing file.
mkimage -A arm -O linux -T multi -C none -d zImage:splash.bmp:device.dtb uimage
tools/mkimage: Can't open zImage:splash.bmp:device.dtb: No such file or directory
Since the sizes of the different parts seem to get added in the actual
routine that handles multi and script type images, we can probably skip the
bit of the code that causes the failure for that type of images.
Signed-off-by: Philippe De Swert <philippedeswert@gmail.com>
Siva Durga Prasad Paladugu [Thu, 3 Dec 2015 14:46:03 +0000 (15:46 +0100)]
common: board: Dont relocate FDT incase of CONFIG_OF_EMBED
Don't relocate fdt in case of CONFIG_OF EMBED as the fdt is
already embedded with u-boot image.
Update fdt_blob after relocation as the fdt will be copied
during u-boot relocation.
Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Reviewed-by: Alexey Brodkin <abrodkin@synopsys.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Tested-by: Bin Meng <bmeng.cn@gmail.com> (QEMU x86)
Tested-by: Thomas Chou <thomas@wytron.com.tw> (Nios2)
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Acked-by: Simon Glass <sjg@chromium.org>
Simon Glass [Wed, 2 Dec 2015 17:59:13 +0000 (10:59 -0700)]
spl: mmc: Unify non/driver model spl_mmc_find_device()
It is risky to have two different functions with much the same code. Future
authors may update one but not the other. It is hard to see which parts are
the same and which are different.
Unify the functions and drop the differences that are not really needed.
Note that one puts() becomes printf() as Tom mentioned that this does not
affect image size:
https://patchwork.ozlabs.org/patch/537276/
Note: It would be better to have an empty printf() and avoid the #ifdef for
CONFIG_SPL_LIBCOMMON_SUPPORT.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Simon Glass [Wed, 2 Dec 2015 17:59:12 +0000 (10:59 -0700)]
spl: mmc: Rename 'mmc' variable to 'mmcp'
The 'p' suffix makes it more obvious that we are dealing with a pointer
to a (pointer) value that will be returned to its caller.
Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Nikita Kiryanov <nikita@compulab.co.il>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Simon Glass [Wed, 2 Dec 2015 17:59:11 +0000 (10:59 -0700)]
spl: mmc: Fix compiler warning with CONFIG_DM_MMC
Since commit
4188ba3 we get the following warning on rockchip boards:
common/spl/spl_mmc.c:31:24: warning: ‘mmc’ may be used uninitialized in this function [-Wmaybe-uninitialized]
count = mmc->block_dev.block_read(0, sector, 1, header);
^
common/spl/spl_mmc.c:251:14: note: ‘mmc’ was declared here
struct mmc *mmc;
Correct this by move the variable init earlier.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Nikita Kiryanov <nikita@compulab.co.il>
Nishanth Menon [Tue, 1 Dec 2015 04:05:58 +0000 (22:05 -0600)]
drivers: remoteproc: rproc-uclass: Fix check for NULL pointers
Neither uc_pdata->name nor check_name are supposed to be NULL in
_rproc_name_is_unique(). if uc_pdata->name is NULL, we are not
intialized yet, however if check_data is NULL, we do not have
proper data. Further, if either were NULL, strlen will crap out
while attempting to derefence NULL.
Instead, just check if either of these are NULL and bail out.
This should also fix the following coverity scan warnings:
*** CID 132281: Null pointer dereferences (FORWARD_NULL)
/drivers/remoteproc/rproc-uclass.c: 73 in _rproc_name_is_unique()
Reported-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Kamil Lulko [Sun, 29 Nov 2015 10:50:53 +0000 (11:50 +0100)]
Change e-mail address of Kamil Lulko
Signed-off-by: Kamil Lulko <kamil.lulko@gmail.com>
Thomas Chou [Sun, 29 Nov 2015 06:01:03 +0000 (14:01 +0800)]
ns16550: change reg-shift property default to zero
Change reg-shift property default to zero. When the integer property
is missing, it should be taken as zero. This is consistent to Linux
drivers/tty/serial/of_serial.c.
The x86 and most powerpc use reg-shift of 0. Most others use reg-shift
of 2. While reg-shift of 1 is rarely used.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Mugunthan V N <mugunthanvnm@ti.com>
Acked-by: Simon Glass <sjg@chromium.org>
Tom Rini [Sat, 28 Nov 2015 13:04:43 +0000 (08:04 -0500)]
arch/arm/cpu/arm920t/ep93xx/led.c: Mark inline functions as static inline
With gcc-5.x we get warning about inline non-static functions referring to
static elements.
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Peng Fan [Fri, 27 Nov 2015 02:12:02 +0000 (10:12 +0800)]
common: cli_hush: avoid memory leak
Need to free memory avoid memory leak, when error.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Stefan Roese [Thu, 26 Nov 2015 12:38:15 +0000 (13:38 +0100)]
common/Makefile: Compile fdt_support is enabled in SPL
When CONFIG_SPL_OF_TRANSLATE is enabled fdt_support.c needs to get
compiled. Otherwise fdt_translate_address() is missing which is needed
in dev_get_addr().
Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Simon Glass <sjg@chromium.org>
Acked-by: Simon Glass <sjg@chromium.org>
Mugunthan V N [Thu, 26 Nov 2015 11:55:42 +0000 (17:25 +0530)]
defconfig: dra74_evm: enable serial driver model
Enable serial driver model for dra74_evm as ns16550 supports
driver model.
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Mugunthan V N [Thu, 26 Nov 2015 11:55:41 +0000 (17:25 +0530)]
arm: dts: dra7-evm: add chosen node to specify serial console device
Introduce chosen node and specify uart0 to be used as serial console.
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Mugunthan V N [Thu, 26 Nov 2015 09:19:10 +0000 (14:49 +0530)]
arm: dts: omap: add reg-shift to serial device tree node
With the commit '
c7b9686d5d48 ("ns16550: unify serial_omap")' all
TI platforms are broken with DM/DT boot as ns16550 driver expects
reg-shift from DT which is not populated for TI platforms.
Earlier it worked as it was hard coded to 2 in serial-omap
driver. So adding the reg-shift to serial nodes for dra7, am4372
and am33xx dtsi files. Tested this patch on am437x-sk-evm,
am437x-gp-evm, am335x-boneblack, dra74x-evm and dra72x-evm.
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Peng Fan [Thu, 26 Nov 2015 02:26:59 +0000 (10:26 +0800)]
common: miiphyutil: avoid memory leak
The following code will alloc memory for new_dev and ldev:
"
new_dev = mdio_alloc();
ldev = malloc(sizeof(*ldev));
"
Either new_dev or ldev is NULL, directly return, but this may leak memory.
So before return, using free(ldev) and mdio_free(new_dev) to avoid
leaking memory, also free can handle NULL pointer.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Peng Fan [Wed, 25 Nov 2015 09:16:21 +0000 (17:16 +0800)]
common: mmc: unsigned char compared against 0
"enable" is unsigned char type and its value will not be
negative, so discard "enable < 0".
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Diego Santa Cruz <Diego.SantaCruz@spinetix.com>
Cc: Pantelis Antoniou <pantelis.antoniou@konsulko.com>
Cc: Andrew Gabbasov <andrew_gabbasov@mentor.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Marek Vasut [Tue, 24 Nov 2015 23:37:44 +0000 (00:37 +0100)]
eeprom: Zap CONFIG_SYS_I2C_MULTI_EEPROMS
This symbol is no longer used anywhere, remove it.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Heiko Schocher <hs@denx.de>
Cc: Tom Rini <trini@konsulko.com>
Acked-by: Heiko Schocher <hs@denx.de>
Vagrant Cascadian [Tue, 24 Nov 2015 22:46:24 +0000 (14:46 -0800)]
Fix typo: firstly -> first.
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Acked-by: Marek Vasut <marex@denx.de>
Vagrant Cascadian [Tue, 24 Nov 2015 22:45:02 +0000 (14:45 -0800)]
Fix typo: commmand -> command.
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Reviewed-by: Joe Hershberger <joe.hershberger@ni.com>
Wolfgang Denk [Tue, 24 Nov 2015 13:03:00 +0000 (14:03 +0100)]
mpc8xx: remove stale "lwmon" files
Commit
acc2372d "mpc8xx: remove lwmon board support" removed support
for the MPC823 based "lwmon" board, but left some board specific POST
files. This patch cleans up and removes the now unused files.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Peng Fan [Tue, 24 Nov 2015 09:03:47 +0000 (17:03 +0800)]
common: miiphyutil: no need to check name of mii_dev
The entry name of mii_dev is an array not pointer, so
no need to check.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Peng Fan [Tue, 24 Nov 2015 08:54:22 +0000 (16:54 +0800)]
common: image-fdt: correct fdt_blob for IMAGE_FORMAT_LEGACY
If condition of "(load == image_start || load == image_data)" is true,
should use "fdt_addr = load;", but not "fdt_blob = (char *)image_data;",
or fdt_blob will be overridden by "fdt_blob = map_sysmem(fdt_addr, 0);"
at the end of the switch case.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Max Krummenacher <max.krummenacher@toradex.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Suriyan Ramasami <suriyan.r@gmail.com>
Cc: Paul Kocialkowski <contact@paulk.fr>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Peng Fan [Tue, 24 Nov 2015 08:54:21 +0000 (16:54 +0800)]
common: cli_hush: avoid dead code
Condition "(value == NULL && ++value == NULL)" actully will
always return false.
Instead, use condition "(value == NULL || *(value + 1) == 0)" to detect
such expression "c=". To "c=", *(value + 1) is 0, so directly return -1,
but not continue.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Rabin Vincent <rabin@rab.in>
Cc: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Peng Fan [Tue, 24 Nov 2015 08:54:20 +0000 (16:54 +0800)]
common: bootm: check return value of strict_strtoul
Before continue, check return value of strict_strtoul.
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Simon Glass <sjg@chromium.org>
Cc: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: York Sun <yorksun@freescale.com>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Tom Rini [Fri, 4 Dec 2015 22:50:34 +0000 (17:50 -0500)]
Merge branch 'master' of git.denx.de/u-boot-sparc
Tom Rini [Fri, 4 Dec 2015 13:21:28 +0000 (08:21 -0500)]
Merge branch 'master' of git://denx.de/git/u-boot-imx
Francois Retief [Sat, 21 Nov 2015 21:15:07 +0000 (23:15 +0200)]
sparc: Remove non-generic board init files: board.c, time.c
Remove the board.c and time.c files and all associated non-generic board
initialization code.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Fri, 22 Jan 2010 11:02:40 +0000 (12:02 +0100)]
sparc: leon3: Added busy wait function, made wait_ms() work when IRQ is disabled
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Daniel Hellstrom [Fri, 22 Jan 2010 12:25:03 +0000 (13:25 +0100)]
sparc: leon3: Added CPU count and frequency detection.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Daniel Hellstrom [Fri, 22 Jan 2010 12:50:22 +0000 (13:50 +0100)]
sparc: Removed USB stop from linux bootm, arch-independent bootm stop USB
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Francois Retief [Mon, 27 Oct 2014 13:56:01 +0000 (15:56 +0200)]
sparc: Use microseconds instead of ticks for timeout
We now use the generic delay method which specifies the timeout as
microseconds instead of ticks.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 14:49:02 +0000 (16:49 +0200)]
sparc: Add CONFIG_DISPLAY_BOARDINFO variable to all LEON boards
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Mon, 23 Nov 2015 11:05:44 +0000 (13:05 +0200)]
sparc: Update PROM initialization code for generic board
Fixed the prom_relocate() function in start.S file by reserving memory in
the board_init_f sequence and saving the offset to the __prom_start_reloc
variable. This value is used as the destination when relocating the PROM.
Add the prom_init() function to the end of the board_init_r sequence.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 13:18:22 +0000 (15:18 +0200)]
sparc: Update cpu_init.c to use generic timer infrastructure
Introduce the CONFIG_SYS_TIMER_* macros in include/asm/config.h to make use
of the generic timer infrastructure in lib/time.c.
Created a timer_init() function to initialize the timer hardware and update
the #ifdef in board_init_f to allow this function to be called during the
start-up sequence.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Sat, 21 Nov 2015 11:25:41 +0000 (13:25 +0200)]
sparc: leon2: Updates for generic board initialization
Reworked the LEON2 start.S code to call board_init_f function at startup.
Also implemented the relocate_code function in assembly to relocate the
monitor and setup the stack pointer before calling relocated board_init_r.
Add the CONFIG_SYS_GENERIC_BOARD variable to all the LEON2 boards.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 22:02:48 +0000 (00:02 +0200)]
sparc: leon3: Updates for generic board initialization
Reworked the LEON3 start.S code to call board_init_f function at startup.
Also implemented the relocate_code function in assembly to relocate the
monitor and setup the stack pointer before calling relocated board_init_r.
Add the CONFIG_SYS_GENERIC_BOARD variable to all the LEON3 boards.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Wed, 22 Sep 2010 15:42:29 +0000 (17:42 +0200)]
sparc: leon3: Clear all unused GPTIMER registers.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Francois Retief [Thu, 29 Oct 2015 10:58:52 +0000 (12:58 +0200)]
sparc: leon3: Move ambapp_bus_init() call to arch_cpu_init() function
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 13:48:41 +0000 (15:48 +0200)]
sparc: leon3: Move snoop detection from startup.S to arch_cpu_init()
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Wed, 28 Oct 2015 12:29:32 +0000 (14:29 +0200)]
sparc: Initial ground work for generic board initialization
Initial ground work in preperation for generic board initialization
code for the SPARC architecture.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Sat, 21 Nov 2015 15:07:48 +0000 (17:07 +0200)]
sparc: Fix whitespace in cpu/leon2/cpu_init.c
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Francois Retief [Fri, 30 Oct 2015 11:23:41 +0000 (13:23 +0200)]
sparc: leon3: Updated serial driver to use CONFIG_CONS_INDEX
Updated the LEON3 serial driver to make use of the CONFIG_CONS_INDEX
option to select which serial port the console will use.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Fri, 22 Jan 2010 10:49:04 +0000 (11:49 +0100)]
sparc: Serial baud rate register support multiple buses with different frequency
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Francois Retief [Mon, 23 Nov 2015 07:49:57 +0000 (09:49 +0200)]
sparc: leon3: Clear GD_FLAG_SERIAL_READY flag on AMBA failure
Clear the GD_FLG_SERIAL_READY flag on AMBA P&P lookup failure so that the
panic function can use DEBUG_UART driver. drivers/serial/serial.c set this
flag before calling this function, preventing DEBUG_UART code from running.
Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Daniel Hellstrom [Fri, 22 Jan 2010 10:57:49 +0000 (11:57 +0100)]
sparc: Added function that checks if IRQ is on or off
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>