21 Jan, 2020
6 commits
-
Clearfog Base carrier uses serdes lane #5 as USB host. Use EEPROM stored
device identification to configure the serdes accordingly when
available.Reviewed-by: Stefan Roese
Signed-off-by: Baruch Siach -
Select the serdes configuration table based on the platform identity
read from EEPROM TLV data. Clearfog GTR needs a slightly different
serdes configuration.Reviewed-by: Stefan Roese
Signed-off-by: Baruch Siach -
Set the kernel device-tree file (fdtfile environment variable) based on
run-time detection of the platform.Reviewed-by: Stefan Roese
Signed-off-by: Baruch Siach -
Use the data from EEPROM TLV to display the board identity.
Reviewed-by: Stefan Roese
Signed-off-by: Baruch Siach -
Read RAM die capacity from the EEPROM TLV.
Follow the ONIE standard that defines the Vendor Extension entry type
for vendor specific data. We have no Private Enterprise Number at the
moment as the standard requires. Use the dummy all 0xff value for now.Signed-off-by: Baruch Siach
Reviewed-by: Stefan Roese -
Enabled both DDR clock signals to support Clearfog variants (currently,
Clearfog GTR) that need both clocks.Reviewed-by: Stefan Roese
Signed-off-by: Baruch Siach
16 Jan, 2020
1 commit
-
SPL now automatically selects the correct U-Boot image offset for both
eMMC and SD card. No need to tweak
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR anymore.Signed-off-by: Baruch Siach
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
07 Jan, 2020
1 commit
-
Make first step in DT/DM migration. Enable OF_CONTROL only for the main
U-Boot image for now.Remove mmc_init_main() because board_mmc_init() is not called when
DM_MMC is enabled.DM_MMC requires DM_GPIO for card-detect to work. That in turn makes gpio
request mandatory. Add code to request/free gpios in platform code.MMC devices are now numbered according to DT. The SD card is 1, and eMMC
is 2. Account for that in board_mmc_get_env_dev(), BOOT_TARGET_DEVICES,
and has_emmc().DM_MMC requires BLK. However, the (BLK && !DM_USB) combination disables
USB_STORAGE. Enable DM_USB to preserve USB functionality. Add also
DM_REGULATORS for the USB power controller. This allows us to drop
board_ehci_hcd_init() and setup_usb().Runtime selection of DT is necessary because of the i.MX6QD vs i.MX6SDL
incompatibility. DT selection does not rely on GPIOs, since DM_GPIO
depends on DT. Instead, we take one "fully featured" DT of each variant.
That should be enough to boot from both SD card and eMMC.Since we don't select the exact DT, override the generic
show_board_info() that shows the selected DT 'model' field.Signed-off-by: Baruch Siach
Reviewed-by: Fabio Estevam
06 Dec, 2019
1 commit
-
Add Baruch Siach as a mx6cuboxi maintainer.
Signed-off-by: Fabio Estevam
Acked-by: Baruch Siach
03 Dec, 2019
1 commit
-
A number of board function belong in init.h with the others. Move them.
Signed-off-by: Simon Glass
Reviewed-by: Tom Rini
12 Aug, 2019
1 commit
-
Move env_set() over to the new header file.
Acked-by: Joe Hershberger
Signed-off-by: Simon Glass
11 Jul, 2019
1 commit
-
Document the main U-Boot image offset when booting from SATA disk on the
Clearfog board.Signed-off-by: Baruch Siach
Reviewed-by: Chris Packham
Signed-off-by: Stefan Roese
23 Jun, 2019
1 commit
-
Converted to use fsl_esdhc_imx for i.MX platforms.
Signed-off-by: Yangbo Lu
Tested-by: Steffen Dirkwinkel
Reviewed-by: Peng Fan
Reviewed-by: Lukasz Majewski
Reviewed-by: Martyn Welch
Acked-by: Jason Liu
12 Apr, 2019
1 commit
-
Document build and install of U-Boot image on Clearfog with eMMC.
Signed-off-by: Baruch Siach
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
21 Jan, 2019
1 commit
-
These macros are not used anywhere in the boards code.
Cc: Chris Packham
Cc: Dirk Eibach
Cc: Mario Six
Cc: Dennis Gilmore
Signed-off-by: Baruch Siach
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
08 Dec, 2018
1 commit
-
This syncs drivers/ddr/marvell/a38x/ with the mv_ddr-armada-18.09 branch
of https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git.
Specifically this syncs with commit 99d772547314 ("Bump mv_ddr to
release armada-18.09.2").The complete log of changes is best obtained from the mv-ddr-marvell.git
repository but some relevant highlights are:ddr3: add missing txsdll parameter
ddr3: fix tfaw timimg parameter
ddr3: fix trrd timimg parameter
merge ddr3 topology header file with mv_ddr_topology one
mv_ddr: a38x: fix zero memory size scrubbing issueThe upstream code is incorporated omitting the portions not relevant to
Armada-38x and DDR3. After that a semi-automated step is used to drop
unused features with unifdeffind drivers/ddr/marvell/a38x/ -name '*.[ch]' | \
xargs unifdef -m -UMV_DDR -UMV_DDR_ATF -UCONFIG_DDR4 \
-UCONFIG_APN806 -UCONFIG_MC_STATIC \
-UCONFIG_MC_STATIC_PRINT -UCONFIG_PHY_STATIC \
-UCONFIG_64BIT -UCONFIG_A3700 -UA3900 -UA80X0 \
-UA70X0Signed-off-by: Chris Packham
Reviewed-by: Stefan Roese
Tested-by: Baruch Siach
Signed-off-by: Stefan Roese
21 Nov, 2018
1 commit
-
- Clearfog GT-8K support added by Baruch / Raheeb
- const and sizes cleanup (also in MIPS) from Baruch
- Minor cleanup to db-88f6820 from Chris
06 Aug, 2018
1 commit
-
Move the gdsys Controlcenter DC specific build time kwbimage.cfg
generation code into the mach-mvebu/ directory to be shared by all 32bit
mvebu platforms.Remove board specific kwbimage.cfg files, and use the generated one
instead. These files are all identical, with two exceptions. Clearfog
and Helios4 use the sdio boot device, whereas all others use spi. Update
the defconfigs for the exceptional boards to generate the same
kwbimage.cfg as before.Signed-off-by: Baruch Siach
Signed-off-by: Stefan Roese
23 Jul, 2018
2 commits
-
Previously we had just made broad assumptions with which of our
boards had an eMMC or not even though this is a manufacturing time
assembly option. This takes the guessing away and actually checks for
the existence of an eMMC and sets up the has_emmc environment variable.Signed-off-by: Jon Nettleton
Signed-off-by: Baruch Siach -
The HB2 boards as well as rev 1.5 soms support eMMC
booting as well as SDHC. Add the infrastructure to support
booting these devices.Signed-off-by: Jon Nettleton
Signed-off-by: Baruch Siach
18 Jun, 2018
2 commits
-
The soms with 4GB ddr have a rowaddr of 16 not 15, this allows
the detection mechanism to properly identify them as 4GB.
However these soms can be populated with whatever amount of
memory the customer requests therefor we need a ram stride test.
We can not use the get_ram_size() function because not all 4GB's
of DDR is addressable on a 32-bit architecture. Therefore instead
we use a memory stride of 128MB's and look for the address that
the memory wraps. This function is used for all som types to
catch most memory configurations.This is a revised version of Rabeeh Khoury's original code.
Signed-off-by: Jon Nettleton
Signed-off-by: Rabeeh Khoury
Signed-off-by: Baruch Siach
Reviewed-by: Fabio Estevam -
In order to properly detect the board the checks need to be done
in a specific order. Move these tests back into a single enum
function that will always return the proper the board it is checking.This also adds the best test we have for detecting the rev 1.5 som,
and it simplifies the device-tree filename building.Signed-off-by: Jon Nettleton
Signed-off-by: Baruch Siach
Reviewed-by: Fabio Estevam
05 Jun, 2018
1 commit
-
This switches the clearfog boards to use DM based gpio and i2c
drivers. The io expanders are configured via their device-tree
entries.Signed-off-by: Jon Nettleton
[baruch: add DT i2c aliases]
Signed-off-by: Baruch Siach
Reviewed-by: Chris Packham
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
14 May, 2018
2 commits
-
This restores support for configuring the timing mode based on the
ddr_topology. This was originally implemented in commit 90bcc3d38d2b
("driver/ddr: Add support for setting timing in hws_topology_map") but
was removed as part of the upstream sync.Signed-off-by: Chris Packham
Signed-off-by: Stefan Roese -
This syncs drivers/ddr/marvell/a38x/ with the mv_ddr-armada-17.10 branch
of https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git.The upstream code is incorporated omitting the ddr4 and apn806 and
folding the nested a38x directory up one level. After that a
semi-automated step is used to drop unused features with unifdeffind drivers/ddr/marvell/a38x/ -name '*.[ch]' | \
xargs unifdef -m -UMV_DDR -UMV_DDR_ATF -UCONFIG_DDR4 \
-UCONFIG_APN806 -UCONFIG_MC_STATIC \
-UCONFIG_MC_STATIC_PRINT -UCONFIG_PHY_STATIC \
-UCONFIG_64BITINTER_REGS_BASE is updated to be defined as SOC_REGS_PHY_BASE.
Some now empty files are removed and the ternary license is replaced
with a SPDX GPL-2.0+ identifier.Signed-off-by: Chris Packham
Signed-off-by: Stefan Roese
07 May, 2018
1 commit
-
When U-Boot started using SPDX tags we were among the early adopters and
there weren't a lot of other examples to borrow from. So we picked the
area of the file that usually had a full license text and replaced it
with an appropriate SPDX-License-Identifier: entry. Since then, the
Linux Kernel has adopted SPDX tags and they place it as the very first
line in a file (except where shebangs are used, then it's second line)
and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibility
and in part for other minor reasons, switch over to that style.This commit changes all instances where we have a single declared
license in the tag as both the before and after are identical in tag
contents. There's also a few places where I found we did not have a tag
and have introduced one.Signed-off-by: Tom Rini
15 Apr, 2018
1 commit
-
These changes bring mainline back into line with the configurations
that were originally set in our stable BSP.Signed-off-by: Jon Nettleton
Signed-off-by: Fabio Estevam
09 Jan, 2018
1 commit
-
Signed-off-by: Florian Klink
Signed-off-by: Stefan Roese
30 Nov, 2017
1 commit
-
The order of members in struct hws_topology_map is cas_wl, cas_l. The
comments in the original db-88f6820-gp.c had this wrong and have been
copied to other Armada-385 based boards. Practically this hasn't made a
difference since all these boards set both cas_wl and cas_l to 0
(autodetect) but if there were ever a board that did need to set these
explicitly they would run into unexpected issued.Update the comments to reflect the correct order of structure members.
Reported-by: Tobi Wulff
Signed-off-by: Chris Packham
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
12 Oct, 2017
1 commit
-
There is no need call setup_display() from SPL code, so move it to
board_init(), which executes only in U-Boot proper.Reported-by: Stefano Babic
Signed-off-by: Fabio Estevam
Reviewed-by: Stefano Babic
26 Sep, 2017
1 commit
-
Signed-off-by: Baruch Siach
Signed-off-by: Stefan Roese
20 Sep, 2017
1 commit
-
The hummingboard2 is slightly different to the cubox i and to the
hummingboard. The GPIO pin info to probe came from solidruns
for of u-boot on github.
https://github.com/SolidRun/u-boot-imx6/blob/imx6/board/solidrun/mx6_cubox-i/mx6_cubox-i.c#L569-L589
I have tested on a hummingboard-edge witha imx6 solo and 512mb of
ram.Signed-off-by: Dennis Gilmore
28 Aug, 2017
1 commit
-
Since the gpr_init() function is common for boards using MX6S, MX6DL, MX6D,
MX6Q and MX6QP processors move it to the soc.c file.Signed-off-by: Breno Lima
Acked-by: Stefano Babic
Reviewed-by: Lukasz Majewski
Reviewed-by: Fabio Estevam
16 Aug, 2017
1 commit
-
We are now using an env_ prefix for environment functions. Rename setenv()
for consistency. Also add function comments in common.h.Suggested-by: Wolfgang Denk
Signed-off-by: Simon Glass
18 Jul, 2017
1 commit
12 Jul, 2017
4 commits
-
Change is consistent with other SOCs and it is in preparation
for adding SOMs. SOC's related files are moved from cpu/ to
mach-imx/.This change is also coherent with the structure in kernel.
Signed-off-by: Stefano Babic
CC: Fabio Estevam
CC: Akshay Bhat
CC: Ken Lin
CC: Marek Vasut
CC: Heiko Schocher
CC: "Sébastien Szymanski"
CC: Christian Gmeiner
CC: Stefan Roese
CC: Patrick Bruenn
CC: Troy Kisky
CC: Nikita Kiryanov
CC: Otavio Salvador
CC: "Eric Bénard"
CC: Jagan Teki
CC: Ye Li
CC: Peng Fan
CC: Adrian Alonso
CC: Alison Wang
CC: Tim Harvey
CC: Martin Donnelly
CC: Marcin Niestroj
CC: Lukasz Majewski
CC: Adam Ford
CC: "Albert ARIBAUD (3ADEV)"
CC: Boris Brezillon
CC: Soeren Moch
CC: Richard Hu
CC: Wig Cheng
CC: Vanessa Maegima
CC: Max Krummenacher
CC: Stefan Agner
CC: Markus Niebel
CC: Breno Lima
CC: Francesco Montefoschi
CC: Jaehoon Chung
CC: Scott Wood
CC: Joe Hershberger
CC: Anatolij Gustschin
CC: Simon Glass
CC: "Andrew F. Davis"
CC: "Łukasz Majewski"
CC: Patrice Chotard
CC: Nobuhiro Iwamatsu
CC: Hans de Goede
CC: Masahiro Yamada
CC: Stephen Warren
CC: Andre Przywara
CC: "Álvaro Fernández Rojas"
CC: York Sun
CC: Xiaoliang Yang
CC: Chen-Yu Tsai
CC: George McCollister
CC: Sven Ebenfeld
CC: Filip Brozovic
CC: Petr Kulhavy
CC: Eric Nelson
CC: Bai Ping
CC: Anson Huang
CC: Sanchayan Maity
CC: Lokesh Vutla
CC: Patrick Delaunay
CC: Gary Bisson
CC: Alexander Graf
CC: u-boot@lists.denx.de
Reviewed-by: Fabio Estevam
Reviewed-by: Christian Gmeiner -
The Cubox-i and Hummingboard series of devices have an option of
SATA on board, and depending on how the fuses are blown even the
option to boot SPL from SATA. So enable support for it so it can
be used to boot the OS from if people desire.Cc: Fabio Estevam
Signed-off-by: Peter Robinson
Acked-by: Fabio Estevam -
The clearfog uses Armada 388.
Cc: Stefan Roese
Signed-off-by: Baruch Siach
Signed-off-by: Stefan Roese -
The DDR3 training code for Marvell A38X currently computes 1t timing
when given board topology map of the Turris Omnia, but Omnia needs 2t.This patch adds support for enforcing the 2t timing in struct
hws_topology_map, through a new enum hws_timing, which can assume
following values:
HWS_TIM_DEFAULT - default behaviour, compute whether to enable 2t
from the number of CSs
HWS_TIM_1T - enforce 1t
HWS_TIM_2T - enforce 2tThis patch also sets all the board topology maps (db-88f6820-amc,
db-88f6820-gp, controlcenterdc and clearfog) to have timing set to
HWS_TIM_DEFAULT.Signed-off-by: Marek Behun
Reviewed-by: Stefan Roese
Signed-off-by: Stefan Roese
31 May, 2017
1 commit
-
Use GPIO19 which is wired to the uSOM phy reset signal in order to reset
the uSOM's 1512 Gigabit Ethernet phy.This GPIO is valid on ClearFog rev 2.1 and newer.
Taken from SolidRun's specialised u-boot, see
https://github.com/SolidRun/u-boot-armada38x/commit/f906e3df172e07ac82cdd87b278d7896949262eaSigned-off-by: Patrick Wildt
Signed-off-by: Stefan Roese