01 Jun, 2017
8 commits
-
The intention with block devices is that the device number (devnum field
in its descriptor) matches the alias of its parent device. For example,
with:aliases {
mmc0 = "/sdhci@700b0600";
mmc1 = "/sdhci@700b0400";
}we expect that the block devices for mmc0 and mmc1 would have device
numbers of 0 and 1 respectively.Unfortunately this does not currently always happen. If there is another
MMC device earlier in the driver model data structures its block device
will be created first. It will therefore get device number 0 and mmc0
will therefore miss out. In this case the MMC device will have sequence
number 0 but its block device will not.To avoid this, allow a device to request a device number and bump any
existing device number that is using it. This all happens during the
binding phase so it is safe to change these numbers around. This allows
device numbers to match the aliases in all circumstances.Add a test to verify the behaviour.
Signed-off-by: Simon Glass
-
At present devices use a simple integer offset to record the device tree
node associated with the device. In preparation for supporting a live
device tree, which uses a node pointer instead, refactor existing code to
access this field through an inline function.Signed-off-by: Simon Glass
-
It is good practice to include common.h as the first header. This ensures
that required features like the DECLARE_GLOBAL_DATA_PTR macro,
configuration options and common types are available.Fix up some files which currently don't do this. This is necessary because
driver model will soon start using global data and configuration in the
dm/read.h header file, included via dm.h. The gd->fdt_blob value will be
used to access the device tree and CONFIG options will be used to
determine whether to support inline functions in the header file.Signed-off-by: Simon Glass
-
These support the flat device tree. We want to use the dev_read_..()
prefix for functions that support both flat tree and live tree. So rename
the existing functions to avoid confusion.In the end we will have:
1. dev_read_addr...() - works on devices, supports flat/live tree
2. devfdt_get_addr...() - current functions, flat tree only
3. of_get_address() etc. - new functions, live tree onlyAll drivers will be written to use 1. That function will in turn call
either 2 or 3 depending on whether the flat or live tree is in use.Note this involves changing some dead code - the imx_lpi2c.c file.
Signed-off-by: Simon Glass
-
This header includes things that are needed to make driver build. Adjust
existing users to include that always, even if other dm/ includes are
presentSigned-off-by: Simon Glass
-
Please pull another update for Broadcom MIPS.
This contains new SoC's, new boards and new drivers and some bugfixes. -
Mostly including the Armada 37xx pinctrl / gpio driver.
-
Currently these (board agnostic) commands cannot be selected using
menuconfig and friends. Fix this the obvious way. As part of this,
don't muddle the meaning of CONFIG_HASH_VERIFY to mean both 'hash -v'
and "we have a hashing command" as this makes the Kconfig logic odd.Signed-off-by: Daniel Thompson
[trini: Re-apply, add imply for a few cases, run moveconfig.py, also
migrate CRC32_VERIFY]
Signed-off-by: Tom Rini
31 May, 2017
18 commits
-
Instead of having a peripheral clock of 50 MHz like the BCM63xx family, it
has a 48 MHz clock.
This fixes uart baud rate calculation for BCM3380.Signed-off-by: Álvaro Fernández Rojas
-
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver allows rebooting the SoC by calling wdt_expire_now op.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver allows rebooting the SoC by calling wdt_expire_now op.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver allows rebooting the SoC by calling wdt_expire_now op.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver controls the watchdog present on this SoC.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver controls the watchdog present on this SoC.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
This driver controls the watchdog present on this SoC.
Signed-off-by: Álvaro Fernández Rojas
Reviewed-by: Simon Glass -
The dram_init and dram_init_banksize functions were using a board
specific implementation for decoding the memory banks from the fdt.
This change makes the dram_init* functions use a generic implementation
of decoding and populating memory bank and size data.Signed-off-by: Stefan Roese
Cc: Nathan Rossi
Cc: Nadav Haklai
Cc: Kostya Porotchkin
Signed-off-by: Stefan Roese -
This patch enables the mvpp2 port 0 usage on the Armada 7k DB by setting
the correct PHY type (KR / SFI) for the COMPHY driver and enabling the
ethernet0 device node in the dts.Signed-off-by: Stefan Roese
Cc: Stefan Chulski
Cc: Kostya Porotchkin
Cc: Nadav Haklai -
Start to populate the device tree of the Armada 37xx with the pincontrol
configuration used on the board providing a dts.Signed-off-by: Gregory CLEMENT
Signed-off-by: Stefan Roese
Cc: Gregory CLEMENT
Cc: Konstantin Porotchkin
Cc: Nadav Haklai -
Add the nodes for the two pin controller present in the Armada 37xx SoCs.
Initially the node was named gpio1 using the same name that for the
register range in the datasheet. However renaming it pinctr_nb (nb for
North Bridge) makes more sens.Minor changes for U-Boot because of the slightly different dts version
done by Stefan Roese.Signed-off-by: Gregory CLEMENT
Signed-off-by: Stefan Roese
Cc: Gregory CLEMENT
Cc: Konstantin Porotchkin
Cc: Nadav Haklai
26 May, 2017
2 commits
-
Move FTMAC100 to where it should be, alphabetically in
drivers/net/KconfigSigned-off-by: Tom Rini
Conflicts:
drivers/net/Kconfig
24 May, 2017
7 commits
-
This patch adjusts memory map for images on LS2080ARDB and
LS2080AQDS NOR flash as belowImage Flash Offset
RCW+PBI 0x00000000
Boot firmware (U-Boot) 0x00100000
Boot firmware Environment 0x00300000
PPA firmware 0x00400000
PHY firmware 0x00980000
DPAA2 MC 0x00A00000
DPAA2 DPL 0x00D00000
DPAA2 DPC 0x00E00000
Kernel.itb 0x01000000Signed-off-by: Santan Kumar
Signed-off-by: Priyanka Jain
Reviewed-by: York Sun -
This patch is to adjust the memory mapping for FLash/SD card on
LS1043AQDS and LS1043ARDB, such as PPA firmware load address, FMAN
firmware load address, QE firmware load address, U-Boot start address
on serial flash and environment address.Signed-off-by: Alison Wang
Reviewed-by: York Sun -
LS2081ARDB board is similar to LS2080ARDB board with few differences
It hosts LS2081A SoC
Default boot source is QSPI-boot
It does not have IFC interface
RTC and QSPI flash device are different
It provides QIXIS access via I2CSigned-off-by: Priyanka Jain
Signed-off-by: Santan Kumar
Reviewed-by: York Sun -
The QorIQ LS2081A SoC has eight 64-bit ARM v8 Cortex A72 cores and
is built on layerscape architecture. It is 40-pin derivative of
LS2084A (non-AIOP personality of LS2088A). So feature-wise it is
same as LS2084A. LS2041A is a 4-core personality of LS2081A.Signed-off-by: Priyanka Jain
Signed-off-by: Santan Kumar
Reviewed-by: York Sun -
QSPI-boot is supported on LS2088ARDB RevF board with LS2088A SoC.
LS2088ARDB RevF Board has limitation that QIXIS can not be accessed.
CONFIG_FSL_QIXIS is not enabled.Signed-off-by: Priyanka Jain
Signed-off-by: Suresh Gupta
Reviewed-by: York Sun -
LS2080ARDB/LS2088ARDB RevF board has smart voltage translator
which needs to be programmed to enable high speed SD interface
by setting GPIO4_10 output to zero.Signed-off-by: Priyanka Jain
Signed-off-by: Santan Kumar
Reviewed-by: York Sun
23 May, 2017
5 commits
-
Support Andestech eth ftmac100 device tree flow on AG101P/AE3XX platform.
Verification:
Boot linux kernel via dhcp and bootm ok.NDS32 # setenv bootm_size 0x2000000;setenv fdt_high 0x1f00000;
NDS32 # dhcp 0x600000 10.0.4.97:boomimage-310y-ae300-spi.bin
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
DHCP client bound to address 10.0.4.178 (4899 ms)
Using mac@e0100000 device
TFTP from server 10.0.4.97; our IP address is 10.0.4.178
Filename 'boomimage-310y-ae300-spi.bin'.
Load address: 0x600000
Loading: #################################################################
#################################################################
#################################################################
...
...
###################################
233.4 KiB/s
done
Bytes transferred = 13872076 (d3abcc hex)
NDS32 # dhcp 0x2000000 10.0.4.97:ae300.dtb
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
DHCP client bound to address 10.0.4.178 (4592 ms)
Using mac@e0100000 device
TFTP from server 10.0.4.97; our IP address is 10.0.4.178
Filename 'ae300.dtb'.
Load address: 0x2000000
Loading: #
82 KiB/s
done
Bytes transferred = 2378 (94a hex)
NDS32 # bootm 0x600000 - 0x2000000
Image Name:
Created: 2017-03-22 6:52:03 UTC
Image Type: NDS32 Linux Kernel Image (uncompressed)
Data Size: 13872012 Bytes = 13.2 MiB
Load Address: 0000c000
Entry Point: 0000c000
Verifying Checksum ... OK
Booting using the fdt blob at 0x2000000
Loading Kernel Image ... OK
Loading Device Tree to 01efc000, end 01eff949 ... OK
Linux version 3.10.102-20375-gb0034c1-dirty (rick@app09)
(gcc version 4.9.3 (2016-07-06_nds32le-linux-glibc-v3_experimental) )
#293 PREEMPT Wed Mar 22 14:49:28 CST 2017
CPU: NDS32 N13, AndesCore ID(wb), CPU_VER 0x0d11103f(id 13, rev 17, cfg 4159)
...
...
Signed-off-by: rick -
trini: Make Kconfig SPL_xxx entires only show if SPL, so that we don't
get Kconfig errors on platforms without SPL, ie sandbox (without SPL).Signed-off-by: Tom Rini
-
Enable this option by default on sandbox to increase build coverage.
Signed-off-by: Simon Glass
-
This converts the following to Kconfig:
CONFIG_CMD_LZMADECSigned-off-by: Simon Glass