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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.