mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-08-16 04:07:00 +02:00
- Espressobin: Simplify DT handling of board variants (Pali) - Add Luka Perkov to maintainers of Puzzle-M801 (Luka) - Armada 38x: Enable board specific USB2 high-speed impedance threshold configuration (Joshua)
This commit is contained in:
commit
ec79f5ce22
@ -204,7 +204,6 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \
|
|||||||
dtb-$(CONFIG_ARCH_MVEBU) += \
|
dtb-$(CONFIG_ARCH_MVEBU) += \
|
||||||
armada-3720-db.dtb \
|
armada-3720-db.dtb \
|
||||||
armada-3720-espressobin.dtb \
|
armada-3720-espressobin.dtb \
|
||||||
armada-3720-espressobin-emmc.dtb \
|
|
||||||
armada-3720-turris-mox.dtb \
|
armada-3720-turris-mox.dtb \
|
||||||
armada-3720-uDPU.dtb \
|
armada-3720-uDPU.dtb \
|
||||||
armada-375-db.dtb \
|
armada-375-db.dtb \
|
||||||
|
@ -1,44 +0,0 @@
|
|||||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
||||||
/*
|
|
||||||
* Device Tree file for Globalscale Marvell ESPRESSOBin Board with eMMC
|
|
||||||
* Copyright (C) 2018 Marvell
|
|
||||||
*
|
|
||||||
* Romain Perier <romain.perier@free-electrons.com>
|
|
||||||
* Konstantin Porotchkin <kostap@marvell.com>
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
/*
|
|
||||||
* Schematic available at http://espressobin.net/wp-content/uploads/2017/08/ESPRESSObin_V5_Schematics.pdf
|
|
||||||
*/
|
|
||||||
|
|
||||||
/dts-v1/;
|
|
||||||
|
|
||||||
#include "armada-3720-espressobin.dtsi"
|
|
||||||
|
|
||||||
/ {
|
|
||||||
model = "Globalscale Marvell ESPRESSOBin Board (eMMC)";
|
|
||||||
compatible = "globalscale,espressobin-emmc", "globalscale,espressobin",
|
|
||||||
"marvell,armada3720", "marvell,armada3710";
|
|
||||||
};
|
|
||||||
|
|
||||||
/* U11 */
|
|
||||||
&sdhci1 {
|
|
||||||
non-removable;
|
|
||||||
bus-width = <8>;
|
|
||||||
mmc-ddr-1_8v;
|
|
||||||
mmc-hs400-1_8v;
|
|
||||||
marvell,xenon-emmc;
|
|
||||||
marvell,xenon-tun-count = <9>;
|
|
||||||
marvell,pad-type = "fixed-1-8v";
|
|
||||||
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&mmc_pins>;
|
|
||||||
status = "okay";
|
|
||||||
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <0>;
|
|
||||||
mmccard: mmccard@0 {
|
|
||||||
compatible = "mmc-card";
|
|
||||||
reg = <0>;
|
|
||||||
};
|
|
||||||
};
|
|
@ -1,20 +1,192 @@
|
|||||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
||||||
/*
|
/*
|
||||||
* Device Tree file for Globalscale Marvell ESPRESSOBin Board
|
* Device Tree file for Marvell Armada 3720 community board
|
||||||
|
* (ESPRESSOBin)
|
||||||
* Copyright (C) 2016 Marvell
|
* Copyright (C) 2016 Marvell
|
||||||
*
|
*
|
||||||
* Romain Perier <romain.perier@free-electrons.com>
|
* Gregory CLEMENT <gregory.clement@free-electrons.com>
|
||||||
|
* Konstantin Porotchkin <kostap@marvell.com>
|
||||||
*
|
*
|
||||||
*/
|
* This file is dual-licensed: you can use it either under the terms
|
||||||
/*
|
* of the GPL or the X11 license, at your option. Note that this dual
|
||||||
* Schematic available at http://espressobin.net/wp-content/uploads/2017/08/ESPRESSObin_V5_Schematics.pdf
|
* licensing only applies to this file, and not this project as a
|
||||||
|
* whole.
|
||||||
|
*
|
||||||
|
* a) This file is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 2 of the
|
||||||
|
* License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This file is distributed in the hope that it will be useful
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* Or, alternatively
|
||||||
|
*
|
||||||
|
* b) Permission is hereby granted, free of charge, to any person
|
||||||
|
* obtaining a copy of this software and associated documentation
|
||||||
|
* files (the "Software"), to deal in the Software without
|
||||||
|
* restriction, including without limitation the rights to use
|
||||||
|
* copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
* sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following
|
||||||
|
* conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be
|
||||||
|
* included in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
|
||||||
|
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||||
|
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||||
|
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
|
||||||
|
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
|
* OTHER DEALINGS IN THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/dts-v1/;
|
/dts-v1/;
|
||||||
|
|
||||||
#include "armada-3720-espressobin.dtsi"
|
#include "armada-372x.dtsi"
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "Globalscale Marvell ESPRESSOBin Board";
|
model = "Globalscale Marvell ESPRESSOBin Board";
|
||||||
compatible = "globalscale,espressobin", "marvell,armada3720", "marvell,armada3710";
|
compatible = "globalscale,espressobin", "marvell,armada3720", "marvell,armada3710";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
stdout-path = "serial0:115200n8";
|
||||||
|
};
|
||||||
|
|
||||||
|
aliases {
|
||||||
|
ethernet0 = ð0;
|
||||||
|
i2c0 = &i2c0;
|
||||||
|
spi0 = &spi0;
|
||||||
|
};
|
||||||
|
|
||||||
|
memory {
|
||||||
|
device_type = "memory";
|
||||||
|
reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
|
||||||
|
};
|
||||||
|
|
||||||
|
vcc_sd_reg0: regulator@0 {
|
||||||
|
compatible = "regulator-gpio";
|
||||||
|
regulator-name = "vcc_sd0";
|
||||||
|
regulator-min-microvolt = <1800000>;
|
||||||
|
regulator-max-microvolt = <3300000>;
|
||||||
|
regulator-type = "voltage";
|
||||||
|
states = <1800000 0x1
|
||||||
|
3300000 0x0>;
|
||||||
|
gpios = <&gpionb 4 GPIO_ACTIVE_HIGH>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&comphy {
|
||||||
|
max-lanes = <3>;
|
||||||
|
phy0 {
|
||||||
|
phy-type = <PHY_TYPE_USB3_HOST0>;
|
||||||
|
phy-speed = <PHY_SPEED_5G>;
|
||||||
|
};
|
||||||
|
|
||||||
|
phy1 {
|
||||||
|
phy-type = <PHY_TYPE_PEX0>;
|
||||||
|
phy-speed = <PHY_SPEED_2_5G>;
|
||||||
|
};
|
||||||
|
|
||||||
|
phy2 {
|
||||||
|
phy-type = <PHY_TYPE_SATA0>;
|
||||||
|
phy-speed = <PHY_SPEED_5G>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
ð0 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
|
||||||
|
phy-mode = "rgmii";
|
||||||
|
phy_addr = <0x1>;
|
||||||
|
fixed-link {
|
||||||
|
speed = <1000>;
|
||||||
|
full-duplex;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&i2c0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&i2c1_pins>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
/* CON3 */
|
||||||
|
&sata {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&sdhci0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&sdio_pins>;
|
||||||
|
bus-width = <4>;
|
||||||
|
cd-gpios = <&gpionb 3 GPIO_ACTIVE_LOW>;
|
||||||
|
vqmmc-supply = <&vcc_sd_reg0>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
/* U11 */
|
||||||
|
&sdhci1 {
|
||||||
|
non-removable;
|
||||||
|
bus-width = <8>;
|
||||||
|
mmc-ddr-1_8v;
|
||||||
|
mmc-hs400-1_8v;
|
||||||
|
marvell,xenon-emmc;
|
||||||
|
marvell,xenon-tun-count = <9>;
|
||||||
|
marvell,pad-type = "fixed-1-8v";
|
||||||
|
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&mmc_pins>;
|
||||||
|
status = "okay";
|
||||||
|
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <0>;
|
||||||
|
mmccard: mmccard@0 {
|
||||||
|
compatible = "mmc-card";
|
||||||
|
reg = <0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
&spi0 {
|
||||||
|
status = "okay";
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&spi_quad_pins>;
|
||||||
|
|
||||||
|
spi-flash@0 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "st,m25p128", "jedec,spi-nor";
|
||||||
|
reg = <0>; /* Chip select 0 */
|
||||||
|
spi-max-frequency = <50000000>;
|
||||||
|
m25p,fast-read;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Exported on the micro USB connector CON32 through an FTDI */
|
||||||
|
&uart0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&uart1_pins>;
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
/* CON29 */
|
||||||
|
&usb2 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
/* CON31 */
|
||||||
|
&usb3 {
|
||||||
|
status = "okay";
|
||||||
|
};
|
||||||
|
|
||||||
|
&pcie0 {
|
||||||
|
pinctrl-names = "default";
|
||||||
|
pinctrl-0 = <&pcie_pins>;
|
||||||
|
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
|
||||||
|
status = "okay";
|
||||||
};
|
};
|
||||||
|
@ -1,167 +0,0 @@
|
|||||||
/*
|
|
||||||
* Device Tree file for Marvell Armada 3720 community board
|
|
||||||
* (ESPRESSOBin)
|
|
||||||
* Copyright (C) 2016 Marvell
|
|
||||||
*
|
|
||||||
* Gregory CLEMENT <gregory.clement@free-electrons.com>
|
|
||||||
* Konstantin Porotchkin <kostap@marvell.com>
|
|
||||||
*
|
|
||||||
* This file is dual-licensed: you can use it either under the terms
|
|
||||||
* of the GPL or the X11 license, at your option. Note that this dual
|
|
||||||
* licensing only applies to this file, and not this project as a
|
|
||||||
* whole.
|
|
||||||
*
|
|
||||||
* a) This file is free software; you can redistribute it and/or
|
|
||||||
* modify it under the terms of the GNU General Public License as
|
|
||||||
* published by the Free Software Foundation; either version 2 of the
|
|
||||||
* License, or (at your option) any later version.
|
|
||||||
*
|
|
||||||
* This file is distributed in the hope that it will be useful
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
* GNU General Public License for more details.
|
|
||||||
*
|
|
||||||
* Or, alternatively
|
|
||||||
*
|
|
||||||
* b) Permission is hereby granted, free of charge, to any person
|
|
||||||
* obtaining a copy of this software and associated documentation
|
|
||||||
* files (the "Software"), to deal in the Software without
|
|
||||||
* restriction, including without limitation the rights to use
|
|
||||||
* copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the
|
|
||||||
* Software is furnished to do so, subject to the following
|
|
||||||
* conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be
|
|
||||||
* included in all copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/dts-v1/;
|
|
||||||
|
|
||||||
#include "armada-372x.dtsi"
|
|
||||||
|
|
||||||
/ {
|
|
||||||
chosen {
|
|
||||||
stdout-path = "serial0:115200n8";
|
|
||||||
};
|
|
||||||
|
|
||||||
aliases {
|
|
||||||
ethernet0 = ð0;
|
|
||||||
i2c0 = &i2c0;
|
|
||||||
spi0 = &spi0;
|
|
||||||
};
|
|
||||||
|
|
||||||
memory {
|
|
||||||
device_type = "memory";
|
|
||||||
reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
|
|
||||||
};
|
|
||||||
|
|
||||||
vcc_sd_reg0: regulator@0 {
|
|
||||||
compatible = "regulator-gpio";
|
|
||||||
regulator-name = "vcc_sd0";
|
|
||||||
regulator-min-microvolt = <1800000>;
|
|
||||||
regulator-max-microvolt = <3300000>;
|
|
||||||
regulator-type = "voltage";
|
|
||||||
states = <1800000 0x1
|
|
||||||
3300000 0x0>;
|
|
||||||
gpios = <&gpionb 4 GPIO_ACTIVE_HIGH>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&comphy {
|
|
||||||
max-lanes = <3>;
|
|
||||||
phy0 {
|
|
||||||
phy-type = <PHY_TYPE_USB3_HOST0>;
|
|
||||||
phy-speed = <PHY_SPEED_5G>;
|
|
||||||
};
|
|
||||||
|
|
||||||
phy1 {
|
|
||||||
phy-type = <PHY_TYPE_PEX0>;
|
|
||||||
phy-speed = <PHY_SPEED_2_5G>;
|
|
||||||
};
|
|
||||||
|
|
||||||
phy2 {
|
|
||||||
phy-type = <PHY_TYPE_SATA0>;
|
|
||||||
phy-speed = <PHY_SPEED_5G>;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
ð0 {
|
|
||||||
status = "okay";
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&rgmii_pins>, <&smi_pins>;
|
|
||||||
phy-mode = "rgmii";
|
|
||||||
phy_addr = <0x1>;
|
|
||||||
fixed-link {
|
|
||||||
speed = <1000>;
|
|
||||||
full-duplex;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
&i2c0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&i2c1_pins>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
/* CON3 */
|
|
||||||
&sata {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&sdhci0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&sdio_pins>;
|
|
||||||
bus-width = <4>;
|
|
||||||
cd-gpios = <&gpionb 3 GPIO_ACTIVE_LOW>;
|
|
||||||
vqmmc-supply = <&vcc_sd_reg0>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&spi0 {
|
|
||||||
status = "okay";
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&spi_quad_pins>;
|
|
||||||
|
|
||||||
spi-flash@0 {
|
|
||||||
#address-cells = <1>;
|
|
||||||
#size-cells = <1>;
|
|
||||||
compatible = "st,m25p128", "jedec,spi-nor";
|
|
||||||
reg = <0>; /* Chip select 0 */
|
|
||||||
spi-max-frequency = <50000000>;
|
|
||||||
m25p,fast-read;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
/* Exported on the micro USB connector CON32 through an FTDI */
|
|
||||||
&uart0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&uart1_pins>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
/* CON29 */
|
|
||||||
&usb2 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
/* CON31 */
|
|
||||||
&usb3 {
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
||||||
|
|
||||||
&pcie0 {
|
|
||||||
pinctrl-names = "default";
|
|
||||||
pinctrl-0 = <&pcie_pins>;
|
|
||||||
reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
|
|
||||||
status = "okay";
|
|
||||||
};
|
|
@ -30,6 +30,12 @@ config ARMADA_38X
|
|||||||
select ARMADA_32BIT
|
select ARMADA_32BIT
|
||||||
select HAVE_MVEBU_EFUSE
|
select HAVE_MVEBU_EFUSE
|
||||||
|
|
||||||
|
config ARMADA_38X_HS_IMPEDANCE_THRESH
|
||||||
|
hex "Armada 38x USB 2.0 High-Speed Impedance Threshold (0x0 - 0x7)"
|
||||||
|
depends on ARMADA_38X
|
||||||
|
default 0x6
|
||||||
|
range 0x0 0x7
|
||||||
|
|
||||||
config ARMADA_XP
|
config ARMADA_XP
|
||||||
bool
|
bool
|
||||||
select ARMADA_32BIT
|
select ARMADA_32BIT
|
||||||
|
@ -677,9 +677,9 @@ struct op_params usb2_power_up_params[] = {
|
|||||||
{0xc200c, 0x0 /*NA*/, 0xf000, {0x1000}, 0, 0},
|
{0xc200c, 0x0 /*NA*/, 0xf000, {0x1000}, 0, 0},
|
||||||
{0xc400c, 0x0 /*NA*/, 0xf000, {0x1000}, 0, 0},
|
{0xc400c, 0x0 /*NA*/, 0xf000, {0x1000}, 0, 0},
|
||||||
/* Change the High speed impedance threshold */
|
/* Change the High speed impedance threshold */
|
||||||
{0xc0008, 0x0 /*NA*/, 0x700, {0x600}, 0, 0},
|
{0xc0008, 0x0 /*NA*/, 0x700, {CONFIG_ARMADA_38X_HS_IMPEDANCE_THRESH << 8}, 0, 0},
|
||||||
{0xc2008, 0x0 /*NA*/, 0x700, {0x600}, 0, 0},
|
{0xc2008, 0x0 /*NA*/, 0x700, {CONFIG_ARMADA_38X_HS_IMPEDANCE_THRESH << 8}, 0, 0},
|
||||||
{0xc4008, 0x0 /*NA*/, 0x700, {0x600}, 0, 0},
|
{0xc4008, 0x0 /*NA*/, 0x700, {CONFIG_ARMADA_38X_HS_IMPEDANCE_THRESH << 8}, 0, 0},
|
||||||
/* Change the squelch level of the receiver to meet the receiver electrical measurements (squelch and receiver sensitivity tests) */
|
/* Change the squelch level of the receiver to meet the receiver electrical measurements (squelch and receiver sensitivity tests) */
|
||||||
{0xc0014, 0x0 /*NA*/, 0xf, {0x8}, 0, 0},
|
{0xc0014, 0x0 /*NA*/, 0xf, {0x8}, 0, 0},
|
||||||
{0xc2014, 0x0 /*NA*/, 0xf, {0x8}, 0, 0},
|
{0xc2014, 0x0 /*NA*/, 0xf, {0x8}, 0, 0},
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
#include <env.h>
|
#include <env.h>
|
||||||
#include <i2c.h>
|
#include <i2c.h>
|
||||||
#include <init.h>
|
#include <init.h>
|
||||||
|
#include <mmc.h>
|
||||||
#include <phy.h>
|
#include <phy.h>
|
||||||
#include <asm/io.h>
|
#include <asm/io.h>
|
||||||
#include <asm/arch/cpu.h>
|
#include <asm/arch/cpu.h>
|
||||||
@ -83,6 +84,7 @@ int board_init(void)
|
|||||||
#ifdef CONFIG_BOARD_LATE_INIT
|
#ifdef CONFIG_BOARD_LATE_INIT
|
||||||
int board_late_init(void)
|
int board_late_init(void)
|
||||||
{
|
{
|
||||||
|
struct mmc *mmc_dev;
|
||||||
bool ddr4, emmc;
|
bool ddr4, emmc;
|
||||||
|
|
||||||
if (env_get("fdtfile"))
|
if (env_get("fdtfile"))
|
||||||
@ -95,7 +97,9 @@ int board_late_init(void)
|
|||||||
ddr4 = ((readl(A3700_CH0_MC_CTRL2_REG) >> A3700_MC_CTRL2_SDRAM_TYPE_OFFS)
|
ddr4 = ((readl(A3700_CH0_MC_CTRL2_REG) >> A3700_MC_CTRL2_SDRAM_TYPE_OFFS)
|
||||||
& A3700_MC_CTRL2_SDRAM_TYPE_MASK) == A3700_MC_CTRL2_SDRAM_TYPE_DDR4;
|
& A3700_MC_CTRL2_SDRAM_TYPE_MASK) == A3700_MC_CTRL2_SDRAM_TYPE_DDR4;
|
||||||
|
|
||||||
emmc = of_machine_is_compatible("globalscale,espressobin-emmc");
|
/* eMMC is mmc dev num 1 */
|
||||||
|
mmc_dev = find_mmc_device(1);
|
||||||
|
emmc = (mmc_dev && mmc_init(mmc_dev) == 0);
|
||||||
|
|
||||||
if (ddr4 && emmc)
|
if (ddr4 && emmc)
|
||||||
env_set("fdtfile", "marvell/armada-3720-espressobin-v7-emmc.dtb");
|
env_set("fdtfile", "marvell/armada-3720-espressobin-v7-emmc.dtb");
|
||||||
|
@ -13,6 +13,7 @@ F: configs/mvebu_mcbin-88f8040_defconfig
|
|||||||
|
|
||||||
Puzzle-M801 BOARD
|
Puzzle-M801 BOARD
|
||||||
M: Luka Kovacic <luka.kovacic@sartura.hr>
|
M: Luka Kovacic <luka.kovacic@sartura.hr>
|
||||||
|
M: Luka Perkov <luka.perkov@sartura.hr>
|
||||||
S: Maintained
|
S: Maintained
|
||||||
F: configs/mvebu_puzzle-m801-88f8040_defconfig
|
F: configs/mvebu_puzzle-m801-88f8040_defconfig
|
||||||
F: arch/arm/dts/armada-8040-puzzle-m801.dts
|
F: arch/arm/dts/armada-8040-puzzle-m801.dts
|
||||||
|
@ -43,11 +43,8 @@ Build Procedure
|
|||||||
In order to prevent this, the required device-tree MUST be set during compilation.
|
In order to prevent this, the required device-tree MUST be set during compilation.
|
||||||
All device-tree files are located in ./arch/arm/dts/ folder.
|
All device-tree files are located in ./arch/arm/dts/ folder.
|
||||||
|
|
||||||
For the EspressoBin board with populated eMMC device use
|
For other DB boards (MacchiatoBin, EspressoBin and 3700 DB board) compile u-boot with
|
||||||
# make DEVICE_TREE=armada-3720-espressobin-emmc
|
just default device-tree from defconfig using:
|
||||||
|
|
||||||
For other DB boards (MacchiatoBin, EspressoBin without soldered eMMC and 3700 DB board)
|
|
||||||
compile u-boot with just default device-tree from defconfig using:
|
|
||||||
|
|
||||||
# make
|
# make
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user