From: Faiz Abbas <faiz_abbas@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 07/11] board: ti: am335x: Add platdata for cpsw in SPL
Date: Mon, 18 Mar 2019 13:54:37 +0530 [thread overview]
Message-ID: <20190318082441.16635-8-faiz_abbas@ti.com> (raw)
In-Reply-To: <20190318082441.16635-1-faiz_abbas@ti.com>
The SPL image overflows when cpsw dt nodes are added and SPL_OF_CONTROL
is enabled. Use static platdata instead to save space.
Signed-off-by: Faiz Abbas <faiz_abbas@ti.com>
---
board/ti/am335x/board.c | 49 +++++++++++++++++++++++++++++++++++++++++
drivers/net/ti/cpsw.c | 18 ---------------
include/cpsw.h | 17 ++++++++++++++
3 files changed, 66 insertions(+), 18 deletions(-)
diff --git a/board/ti/am335x/board.c b/board/ti/am335x/board.c
index d67f94ad47..b811fb088b 100644
--- a/board/ti/am335x/board.c
+++ b/board/ti/am335x/board.c
@@ -875,6 +875,55 @@ int board_late_init(void)
}
#endif
+/* CPSW platdata */
+#if !CONFIG_IS_ENABLED(OF_CONTROL)
+struct cpsw_slave_data slave_data[] = {
+ {
+ .slave_reg_ofs = CPSW_SLAVE0_OFFSET,
+ .sliver_reg_ofs = CPSW_SLIVER0_OFFSET,
+ .phy_addr = 0,
+ },
+ {
+ .slave_reg_ofs = CPSW_SLAVE1_OFFSET,
+ .sliver_reg_ofs = CPSW_SLIVER1_OFFSET,
+ .phy_addr = 1,
+ },
+};
+
+struct cpsw_platform_data am335_eth_data = {
+ .cpsw_base = CPSW_BASE,
+ .version = CPSW_CTRL_VERSION_2,
+ .bd_ram_ofs = CPSW_BD_OFFSET,
+ .ale_reg_ofs = CPSW_ALE_OFFSET,
+ .cpdma_reg_ofs = CPSW_CPDMA_OFFSET,
+ .mdio_div = CPSW_MDIO_DIV,
+ .host_port_reg_ofs = CPSW_HOST_PORT_OFFSET,
+ .channels = 8,
+ .slaves = 2,
+ .slave_data = slave_data,
+ .ale_entries = 1024,
+ .bd_ram_ofs = 0x2000,
+ .mac_control = 0x20,
+ .active_slave = 0,
+ .mdio_base = 0x4a101000,
+ .gmii_sel = 0x44e10650,
+ .phy_sel_compat = "ti,am3352-cpsw-phy-sel",
+ .syscon_addr = 0x44e10630,
+ .macid_sel_compat = "cpsw,am33xx",
+};
+
+struct eth_pdata cpsw_pdata = {
+ .iobase = 0x4a100000,
+ .phy_interface = 0,
+ .priv_pdata = &am335_eth_data,
+};
+
+U_BOOT_DEVICE(am335x_eth) = {
+ .name = "eth_cpsw",
+ .platdata = &cpsw_pdata,
+};
+#endif
+
#ifndef CONFIG_DM_ETH
#if (defined(CONFIG_DRIVER_TI_CPSW) && !defined(CONFIG_SPL_BUILD)) || \
diff --git a/drivers/net/ti/cpsw.c b/drivers/net/ti/cpsw.c
index e16c270985..20ddb44dd8 100644
--- a/drivers/net/ti/cpsw.c
+++ b/drivers/net/ti/cpsw.c
@@ -33,24 +33,6 @@ DECLARE_GLOBAL_DATA_PTR;
#define GIGABITEN BIT(7)
#define FULLDUPLEXEN BIT(0)
#define MIIEN BIT(15)
-
-/* reg offset */
-#define CPSW_HOST_PORT_OFFSET 0x108
-#define CPSW_SLAVE0_OFFSET 0x208
-#define CPSW_SLAVE1_OFFSET 0x308
-#define CPSW_SLAVE_SIZE 0x100
-#define CPSW_CPDMA_OFFSET 0x800
-#define CPSW_HW_STATS 0x900
-#define CPSW_STATERAM_OFFSET 0xa00
-#define CPSW_CPTS_OFFSET 0xc00
-#define CPSW_ALE_OFFSET 0xd00
-#define CPSW_SLIVER0_OFFSET 0xd80
-#define CPSW_SLIVER1_OFFSET 0xdc0
-#define CPSW_BD_OFFSET 0x2000
-#define CPSW_MDIO_DIV 0xff
-
-#define AM335X_GMII_SEL_OFFSET 0x630
-
/* DMA Registers */
#define CPDMA_TXCONTROL 0x004
#define CPDMA_RXCONTROL 0x014
diff --git a/include/cpsw.h b/include/cpsw.h
index 0023151bc0..96ff254f98 100644
--- a/include/cpsw.h
+++ b/include/cpsw.h
@@ -16,6 +16,23 @@
#ifndef _CPSW_H_
#define _CPSW_H_
+/* reg offset */
+#define CPSW_HOST_PORT_OFFSET 0x108
+#define CPSW_SLAVE0_OFFSET 0x208
+#define CPSW_SLAVE1_OFFSET 0x308
+#define CPSW_SLAVE_SIZE 0x100
+#define CPSW_CPDMA_OFFSET 0x800
+#define CPSW_HW_STATS 0x900
+#define CPSW_STATERAM_OFFSET 0xa00
+#define CPSW_CPTS_OFFSET 0xc00
+#define CPSW_ALE_OFFSET 0xd00
+#define CPSW_SLIVER0_OFFSET 0xd80
+#define CPSW_SLIVER1_OFFSET 0xdc0
+#define CPSW_BD_OFFSET 0x2000
+#define CPSW_MDIO_DIV 0xff
+
+#define AM335X_GMII_SEL_OFFSET 0x630
+
struct cpsw_slave_data {
u32 slave_reg_ofs;
u32 sliver_reg_ofs;
--
2.19.2
next prev parent reply other threads:[~2019-03-18 8:24 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-03-18 8:24 [U-Boot] [PATCH 00/11] Fix Ethernet boot in am335x Faiz Abbas
2019-03-18 8:24 ` [U-Boot] [PATCH 01/11] net: Add priv_pdata to eth_pdata Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot,01/11] " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 02/11] net: ti: cpsw: Move cpsw_phy_sel() to _probe() Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 03/11] net: ti: cpsw: Convert cpsw_platform_data to a pointer in cpsw_priv Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 04/11] net: ti: cpsw-common: Isolate getting syscon address from assigning macid Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 05/11] net: ti: cpsw: Block off ofdata_to_platdata with OF_CONTROL Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 06/11] net: ti: cpsw: Enable DM_FLAG_PRE_RELOC Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` Faiz Abbas [this message]
2019-03-18 14:10 ` [U-Boot] [PATCH 07/11] board: ti: am335x: Add platdata for cpsw in SPL Tom Rini
2019-03-19 8:00 ` Faiz Abbas
2019-04-12 16:31 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 08/11] configs: am335x_evm: Reduce size of SPL Faiz Abbas
2019-03-18 14:11 ` Tom Rini
2019-04-12 16:32 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 09/11] configs: am335x_evm: Add Support for SPL_ETH Faiz Abbas
2019-04-12 16:32 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 10/11] configs: am335x_evm: Update VCI String Faiz Abbas
2019-03-18 14:11 ` Tom Rini
2019-04-12 16:32 ` [U-Boot] [U-Boot,10/11] " Tom Rini
2019-03-18 8:24 ` [U-Boot] [PATCH 11/11] board: ti: am335x: Remove non DM_ETH code Faiz Abbas
2019-04-12 16:32 ` [U-Boot] [U-Boot, " Tom Rini
2019-03-18 14:10 ` [U-Boot] [PATCH 00/11] Fix Ethernet boot in am335x Tom Rini
2019-03-19 7:58 ` Faiz Abbas
2019-03-21 15:22 ` Andrew F. Davis
2019-03-21 15:26 ` Andrew F. Davis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190318082441.16635-8-faiz_abbas@ti.com \
--to=faiz_abbas@ti.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox