mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-27 17:18:59 +00:00
584d7c53bd
This commit introduces new subtarget for Marvell EBU Armada Cortex A53 processor based devices. The first device is Globalscale ESPRESSObin. Some hardware specs: SoC: Marvell Armada 3700LP (88F3720) dual core ARM Cortex A53 processor up to 1.2GHz RAM: 512MB, 1GB or 2GB DDR3 Storage: SATA interface µSD card slot with footprint for an optional 4GB EMMC 4MB SPI NOR flash for bootloader Ethernet: Topaz Networking Switch (88E6341) with 3x GbE ports Connectors: USB 3.0 USB 2.0 µUSB port connected to PL2303SA (USB to serial bridge controller) for UART access Expansion: 2x 46-pin GPIO headers for accessories and shields with I2C, GPIOs, PWM, UART, SPI, MMC, etc MiniPCIe slot Misc: Reset button, JTAG interface Currently booting only from µSD card is supported. The boards depending on date of dispatch can come with various U-Boot versions. For the newest version 2017.03-armada-17.10 no manual intervention should be needed to boot OpenWrt image. For the older ones it's necessary to modify default U-Boot environment: 1. Interrupt boot process to run U-Boot command line, 2. Run following commands: (for version 2017.03-armada-17.06 and 2017.03-armada-17.08) setenv bootcmd "load mmc 0:1 0x4d00000 boot.scr; source 0x4d00000" saveenv (for version 2015.01-armada-17.02 and 2015.01-armada-17.04) setenv bootargs "console=ttyMV0,115200 root=/dev/mmcblk0p2 rw rootwait" setenv bootcmd "ext4load mmc 0:1 ${fdt_addr} armada-3720-espressobin.dtb; ext4load mmc 0:1 ${kernel_addr} Image; booti ${kernel_addr} - ${fdt_addr}" saveenv 3. Poweroff, insert SD card with OpenWrt image, boot and enjoy. Signed-off-by: Tomasz Maciej Nowak <tomek_n@o2.pl>
79 lines
2.6 KiB
Diff
79 lines
2.6 KiB
Diff
From adf4e289dd7f801c3fe12e0e6b491e11e548cd3d Mon Sep 17 00:00:00 2001
|
|
From: Gregory CLEMENT <gregory.clement@free-electrons.com>
|
|
Date: Thu, 30 Nov 2017 14:40:27 +0100
|
|
Subject: clk: mvebu: armada-37xx-periph: cosmetic changes
|
|
|
|
This patches fixes few cosmetic issues such as alignment, blank lines
|
|
and required space.
|
|
|
|
Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
|
|
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
|
|
---
|
|
drivers/clk/mvebu/armada-37xx-periph.c | 17 +++++++++--------
|
|
1 file changed, 9 insertions(+), 8 deletions(-)
|
|
|
|
--- a/drivers/clk/mvebu/armada-37xx-periph.c
|
|
+++ b/drivers/clk/mvebu/armada-37xx-periph.c
|
|
@@ -79,6 +79,7 @@ static const struct clk_div_table clk_ta
|
|
{ .val = 1, .div = 4, },
|
|
{ .val = 0, .div = 0, }, /* last entry */
|
|
};
|
|
+
|
|
static const struct clk_ops clk_double_div_ops;
|
|
|
|
#define PERIPH_GATE(_name, _bit) \
|
|
@@ -217,7 +218,7 @@ PERIPH_CLK_FULL(counter, 23, 20, DIV_SEL
|
|
PERIPH_CLK_FULL_DD(eip97, 24, 24, DIV_SEL2, DIV_SEL2, 22, 19);
|
|
PERIPH_CLK_MUX_DIV(cpu, 22, DIV_SEL0, 28, clk_table6);
|
|
|
|
-static struct clk_periph_data data_nb[] ={
|
|
+static struct clk_periph_data data_nb[] = {
|
|
REF_CLK_FULL_DD(mmc),
|
|
REF_CLK_FULL_DD(sata_host),
|
|
REF_CLK_FULL_DD(sec_at),
|
|
@@ -281,7 +282,7 @@ static unsigned int get_div(void __iomem
|
|
}
|
|
|
|
static unsigned long clk_double_div_recalc_rate(struct clk_hw *hw,
|
|
- unsigned long parent_rate)
|
|
+ unsigned long parent_rate)
|
|
{
|
|
struct clk_double_div *double_div = to_clk_double_div(hw);
|
|
unsigned int div;
|
|
@@ -303,6 +304,7 @@ static const struct of_device_id armada_
|
|
.data = data_sb, },
|
|
{ }
|
|
};
|
|
+
|
|
static int armada_3700_add_composite_clk(const struct clk_periph_data *data,
|
|
void __iomem *reg, spinlock_t *lock,
|
|
struct device *dev, struct clk_hw **hw)
|
|
@@ -355,9 +357,9 @@ static int armada_3700_add_composite_clk
|
|
}
|
|
|
|
*hw = clk_hw_register_composite(dev, data->name, data->parent_names,
|
|
- data->num_parents, mux_hw,
|
|
- mux_ops, rate_hw, rate_ops,
|
|
- gate_hw, gate_ops, CLK_IGNORE_UNUSED);
|
|
+ data->num_parents, mux_hw,
|
|
+ mux_ops, rate_hw, rate_ops,
|
|
+ gate_hw, gate_ops, CLK_IGNORE_UNUSED);
|
|
|
|
if (IS_ERR(*hw))
|
|
return PTR_ERR(*hw);
|
|
@@ -406,12 +408,11 @@ static int armada_3700_periph_clock_prob
|
|
if (armada_3700_add_composite_clk(&data[i], reg,
|
|
&driver_data->lock, dev, hw))
|
|
dev_err(dev, "Can't register periph clock %s\n",
|
|
- data[i].name);
|
|
-
|
|
+ data[i].name);
|
|
}
|
|
|
|
ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get,
|
|
- driver_data->hw_data);
|
|
+ driver_data->hw_data);
|
|
if (ret) {
|
|
for (i = 0; i < num_periph; i++)
|
|
clk_hw_unregister(driver_data->hw_data->hws[i]);
|