Message ID | 1420608947-6861-1-git-send-email-nobuhiro.iwamatsu.yj@renesas.com |
---|---|
State | Superseded, archived |
Delegated to: | David Miller |
Headers | show |
Hi Iwamatsu-san, On Wed, Jan 7, 2015 at 6:35 AM, Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> wrote: > TRSCER register is configured differently by SoCs. TRSCER of R-Car is > RINT8 bit only valid, other bits are reserved bits. > This removes access to TRSCER register reserve bit. > > Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> > --- > drivers/net/ethernet/renesas/sh_eth.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c > index c29ba80..59ee457 100644 > --- a/drivers/net/ethernet/renesas/sh_eth.c > +++ b/drivers/net/ethernet/renesas/sh_eth.c > @@ -1294,7 +1294,11 @@ static int sh_eth_dev_init(struct net_device *ndev, bool start) > /* Frame recv control (enable multiple-packets per rx irq) */ > sh_eth_write(ndev, RMCR_RNC, RMCR); > > - sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, TRSCER); > + if (mdp->cd->register_type == SH_ETH_REG_FAST_RCAR) This catches both the R-Car Gen1 and R-Car Gen2 cases. According to the datasheets, r8a7778/9 do have the other bits? Only R-Car Gen2 doesn't have them. > + sh_eth_write(ndev, DESC_I_RINT8, TRSCER); > + else > + sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, > + TRSCER); Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, Thanks for youre review. (2015/01/07 17:42), Geert Uytterhoeven wrote: > Hi Iwamatsu-san, > > On Wed, Jan 7, 2015 at 6:35 AM, Nobuhiro Iwamatsu > <nobuhiro.iwamatsu.yj@renesas.com> wrote: >> TRSCER register is configured differently by SoCs. TRSCER of R-Car is >> RINT8 bit only valid, other bits are reserved bits. >> This removes access to TRSCER register reserve bit. >> >> Signed-off-by: Nobuhiro Iwamatsu<nobuhiro.iwamatsu.yj@renesas.com> >> --- >> drivers/net/ethernet/renesas/sh_eth.c | 6 +++++- >> 1 file changed, 5 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c >> index c29ba80..59ee457 100644 >> --- a/drivers/net/ethernet/renesas/sh_eth.c >> +++ b/drivers/net/ethernet/renesas/sh_eth.c >> @@ -1294,7 +1294,11 @@ static int sh_eth_dev_init(struct net_device *ndev, bool start) >> /* Frame recv control (enable multiple-packets per rx irq) */ >> sh_eth_write(ndev, RMCR_RNC, RMCR); >> >> - sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, TRSCER); >> + if (mdp->cd->register_type == SH_ETH_REG_FAST_RCAR) > > This catches both the R-Car Gen1 and R-Car Gen2 cases. > According to the datasheets, r8a7778/9 do have the other bits? > Only R-Car Gen2 doesn't have them. I see. I checked mistake. I will resend about this patch. > >> + sh_eth_write(ndev, DESC_I_RINT8, TRSCER); >> + else >> + sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, >> + TRSCER); > > Gr{oetje,eeting}s, > > Geert > > -- > Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org > > In personal conversations with technical people, I call myself a hacker. But > when I'm talking to journalists I just say "programmer" or something like that. > -- Linus Torvalds Best regards, Nobuhiro -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c index c29ba80..59ee457 100644 --- a/drivers/net/ethernet/renesas/sh_eth.c +++ b/drivers/net/ethernet/renesas/sh_eth.c @@ -1294,7 +1294,11 @@ static int sh_eth_dev_init(struct net_device *ndev, bool start) /* Frame recv control (enable multiple-packets per rx irq) */ sh_eth_write(ndev, RMCR_RNC, RMCR); - sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, TRSCER); + if (mdp->cd->register_type == SH_ETH_REG_FAST_RCAR) + sh_eth_write(ndev, DESC_I_RINT8, TRSCER); + else + sh_eth_write(ndev, DESC_I_RINT8 | DESC_I_RINT5 | DESC_I_TINT2, + TRSCER); if (mdp->cd->bculr) sh_eth_write(ndev, 0x800, BCULR); /* Burst sycle set */
TRSCER register is configured differently by SoCs. TRSCER of R-Car is RINT8 bit only valid, other bits are reserved bits. This removes access to TRSCER register reserve bit. Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> --- drivers/net/ethernet/renesas/sh_eth.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)