* [PATCH RFT v2] net: sh_eth: add support for SH7786
@ 2019-01-04 12:53 Sergei Shtylyov
2019-01-04 13:01 ` Sergei Shtylyov
2019-01-08 9:16 ` Thomas Petazzoni
0 siblings, 2 replies; 4+ messages in thread
From: Sergei Shtylyov @ 2019-01-04 12:53 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: linux-sh, linux-renesas-soc
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit adds the sh_eth_cpu_data structure that describes the
SH7786 variant of the IP.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
The patch is against DaveM's 'net-next.git' repo.
Not posting it to netdev@vger.kernel.org this time since the 'net-next' repo
is still closed.
Changes in version 2:
- added a comment before 'sh7786_data' initializer;
- added now mandatory soft_reset() method;
- changed the 'register_type' initializer to SH_ETH_REG_FAST_RCAR;
- added the 'ecsr_value' field initializer;
- renamed EESR_RTO to EESR_TRO;
- added the 'fdr_value' field initializer;
- added the 'no_xdfar' field initializer.
drivers/net/ethernet/renesas/sh_eth.c | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
Index: net-next/drivers/net/ethernet/renesas/sh_eth.c
===================================================================
--- net-next.orig/drivers/net/ethernet/renesas/sh_eth.c
+++ net-next/drivers/net/ethernet/renesas/sh_eth.c
@@ -879,6 +879,36 @@ static struct sh_eth_cpu_data sh7724_dat
.rpadir = 1,
};
+/* SH7786 */
+static struct sh_eth_cpu_data sh7786_data = {
+ .soft_reset = sh_eth_soft_reset,
+
+ .set_duplex = sh_eth_set_duplex,
+
+ .register_type = SH_ETH_REG_FAST_RCAR,
+
+ .edtrr_trns = EDTRR_TRNS_ETHER,
+ .ecsr_value = ECSR_PSRTO | ECSR_LCHNG | ECSR_ICD,
+ .ecsipr_value = ECSIPR_PSRTOIP | ECSIPR_LCHNGIP | ECSIPR_ICDIP,
+ .eesipr_value = EESIPR_RFCOFIP | EESIPR_ADEIP | EESIPR_ECIIP |
+ EESIPR_FTCIP | EESIPR_TDEIP | EESIPR_TFUFIP |
+ EESIPR_FRIP | EESIPR_RDEIP | EESIPR_RFOFIP |
+ EESIPR_RMAFIP | EESIPR_RRFIP |
+ EESIPR_RTLFIP | EESIPR_RTSFIP |
+ EESIPR_PREIP | EESIPR_CERFIP,
+
+ .tx_check = EESR_FTC | EESR_CND | EESR_DLC | EESR_CD | EESR_TRO,
+ .eesr_err_check = EESR_TWB | EESR_TABT | EESR_RABT | EESR_RFE |
+ EESR_RDE | EESR_RFRMER | EESR_TFE | EESR_TDE,
+ .fdr_value = 0x00000f0f,
+
+ .apr = 1,
+ .mpr = 1,
+ .tpauser = 1,
+ .hw_swap = 1,
+ .no_xdfar = 1,
+};
+
static void sh_eth_set_rate_sh7757(struct net_device *ndev)
{
struct sh_eth_private *mdp = netdev_priv(ndev);
@@ -3476,6 +3506,7 @@ static const struct platform_device_id s
{ "sh7757-ether", (kernel_ulong_t)&sh7757_data },
{ "sh7757-gether", (kernel_ulong_t)&sh7757_data_giga },
{ "sh7763-gether", (kernel_ulong_t)&sh7763_data },
+ { "sh7786-ether", (kernel_ulong_t)&sh7786_data },
{ }
};
MODULE_DEVICE_TABLE(platform, sh_eth_id_table);
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH RFT v2] net: sh_eth: add support for SH7786
2019-01-04 12:53 [PATCH RFT v2] net: sh_eth: add support for SH7786 Sergei Shtylyov
@ 2019-01-04 13:01 ` Sergei Shtylyov
2019-01-08 9:16 ` Thomas Petazzoni
1 sibling, 0 replies; 4+ messages in thread
From: Sergei Shtylyov @ 2019-01-04 13:01 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: linux-sh, linux-renesas-soc
On 01/04/2019 03:53 PM, Sergei Shtylyov wrote:
> From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> This commit adds the sh_eth_cpu_data structure that describes the
> SH7786 variant of the IP.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
MBR, Sergei
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH RFT v2] net: sh_eth: add support for SH7786
2019-01-04 12:53 [PATCH RFT v2] net: sh_eth: add support for SH7786 Sergei Shtylyov
2019-01-04 13:01 ` Sergei Shtylyov
@ 2019-01-08 9:16 ` Thomas Petazzoni
2019-01-10 9:10 ` Sergei Shtylyov
1 sibling, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2019-01-08 9:16 UTC (permalink / raw)
To: Sergei Shtylyov; +Cc: Thomas Petazzoni, linux-sh, linux-renesas-soc
Hello Sergei,
Thanks for your work on this topic!
On Fri, 4 Jan 2019 15:53:24 +0300, Sergei Shtylyov wrote:
> From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> This commit adds the sh_eth_cpu_data structure that describes the
> SH7786 variant of the IP.
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
I tried to test this patch today, and it doesn't work for the moment.
However, I've rebased my whole SH7786 patch stack on top of 4.20, and
with my original sh_eth patch, network is also not working, so I can't
say whether it's really this patch that has an issue, or some other
aspects.
(And yes, I remember to adjust the base address of the sh_eth
platform_device:
diff --git a/arch/sh/boards/board-wdc-cont4.c b/arch/sh/boards/board-wdc-cont4.c
index c72209822899..7ca1bfcc20ae 100644
--- a/arch/sh/boards/board-wdc-cont4.c
+++ b/arch/sh/boards/board-wdc-cont4.c
@@ -80,7 +80,7 @@ static int wdc_cont4_clk_init(void)
static struct resource sh_eth_resources[] = {
{
- .start = 0xFEE00200,
+ .start = 0xFEE00000,
.end = 0xFEE00400 - 1,
.flags = IORESOURCE_MEM,
}, {
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH RFT v2] net: sh_eth: add support for SH7786
2019-01-08 9:16 ` Thomas Petazzoni
@ 2019-01-10 9:10 ` Sergei Shtylyov
0 siblings, 0 replies; 4+ messages in thread
From: Sergei Shtylyov @ 2019-01-10 9:10 UTC (permalink / raw)
To: Thomas Petazzoni; +Cc: Thomas Petazzoni, linux-sh, linux-renesas-soc
Hello!
On 08.01.2019 12:16, Thomas Petazzoni wrote:
> On Fri, 4 Jan 2019 15:53:24 +0300, Sergei Shtylyov wrote:
>> From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>>
>> This commit adds the sh_eth_cpu_data structure that describes the
>> SH7786 variant of the IP.
>>
>> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> I tried to test this patch today, and it doesn't work for the moment.
What are the symptoms?
> However, I've rebased my whole SH7786 patch stack on top of 4.20, and
> with my original sh_eth patch, network is also not working, so I can't
Hm... same symptoms?
> say whether it's really this patch that has an issue, or some other
> aspects.
>
> (And yes, I remember to adjust the base address of the sh_eth
> platform_device:
>
> diff --git a/arch/sh/boards/board-wdc-cont4.c b/arch/sh/boards/board-wdc-cont4.c
> index c72209822899..7ca1bfcc20ae 100644
> --- a/arch/sh/boards/board-wdc-cont4.c
> +++ b/arch/sh/boards/board-wdc-cont4.c
> @@ -80,7 +80,7 @@ static int wdc_cont4_clk_init(void)
>
> static struct resource sh_eth_resources[] = {
> {
> - .start = 0xFEE00200,
> + .start = 0xFEE00000,
> .end = 0xFEE00400 - 1,
> .flags = IORESOURCE_MEM,
> }, {
Yes, seems correct.
> Best regards,
>
> Thomas
MBR, Sergei
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2019-01-10 9:10 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-04 12:53 [PATCH RFT v2] net: sh_eth: add support for SH7786 Sergei Shtylyov
2019-01-04 13:01 ` Sergei Shtylyov
2019-01-08 9:16 ` Thomas Petazzoni
2019-01-10 9:10 ` Sergei Shtylyov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).