Message ID | 1536576195-11520-2-git-send-email-fabrizio.castro@bp.renesas.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | Add can support to RZ/G2M | expand |
On Mon, Sep 10, 2018 at 11:43:13AM +0100, Fabrizio Castro wrote: > Assigning 2 to "renesas,can-clock-select" tricks the driver into > registering the CAN interface, even though we don't want that. > This patch improves one of the checks to prevent that from happening. > > Fixes: 862e2b6af9413b43 ("can: rcar_can: support all input clocks") > Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> > Signed-off-by: Chris Paterson <Chris.Paterson2@renesas.com> Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
Dear All, Is this patch ok? Thanks, Fab > From: Fabrizio Castro <fabrizio.castro@bp.renesas.com> > Sent: 10 September 2018 11:43 > Subject: [PATCH v2 1/3][can-next] can: rcar_can: Fix erroneous registration > > Assigning 2 to "renesas,can-clock-select" tricks the driver into > registering the CAN interface, even though we don't want that. > This patch improves one of the checks to prevent that from happening. > > Fixes: 862e2b6af9413b43 ("can: rcar_can: support all input clocks") > Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com> > Signed-off-by: Chris Paterson <Chris.Paterson2@renesas.com> > --- > > v1->v2: > * dropped id specific data as per Geert's comments > > This patch applies on top of linux-can-next-for-4.19-20180727. > > drivers/net/can/rcar/rcar_can.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/can/rcar/rcar_can.c b/drivers/net/can/rcar/rcar_can.c > index 11662f4..771a460 100644 > --- a/drivers/net/can/rcar/rcar_can.c > +++ b/drivers/net/can/rcar/rcar_can.c > @@ -24,6 +24,9 @@ > > #define RCAR_CAN_DRV_NAME"rcar_can" > > +#define RCAR_SUPPORTED_CLOCKS(BIT(CLKR_CLKP1) | BIT(CLKR_CLKP2) | \ > + BIT(CLKR_CLKEXT)) > + > /* Mailbox configuration: > * mailbox 60 - 63 - Rx FIFO mailboxes > * mailbox 56 - 59 - Tx FIFO mailboxes > @@ -789,7 +792,7 @@ static int rcar_can_probe(struct platform_device *pdev) > goto fail_clk; > } > > -if (clock_select >= ARRAY_SIZE(clock_names)) { > +if (!(BIT(clock_select) & RCAR_SUPPORTED_CLOCKS)) { > err = -EINVAL; > dev_err(&pdev->dev, "invalid CAN clock selected\n"); > goto fail_clk; > -- > 2.7.4 Renesas Electronics Europe Ltd, Dukes Meadow, Millboard Road, Bourne End, Buckinghamshire, SL8 5FH, UK. Registered in England & Wales under Registered No. 04586709.
On Thu, Nov 08, 2018 at 12:39:00PM +0000, Fabrizio Castro wrote: > Dear All, > > Is this patch ok? It looks ok to me. Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
diff --git a/drivers/net/can/rcar/rcar_can.c b/drivers/net/can/rcar/rcar_can.c index 11662f4..771a460 100644 --- a/drivers/net/can/rcar/rcar_can.c +++ b/drivers/net/can/rcar/rcar_can.c @@ -24,6 +24,9 @@ #define RCAR_CAN_DRV_NAME "rcar_can" +#define RCAR_SUPPORTED_CLOCKS (BIT(CLKR_CLKP1) | BIT(CLKR_CLKP2) | \ + BIT(CLKR_CLKEXT)) + /* Mailbox configuration: * mailbox 60 - 63 - Rx FIFO mailboxes * mailbox 56 - 59 - Tx FIFO mailboxes @@ -789,7 +792,7 @@ static int rcar_can_probe(struct platform_device *pdev) goto fail_clk; } - if (clock_select >= ARRAY_SIZE(clock_names)) { + if (!(BIT(clock_select) & RCAR_SUPPORTED_CLOCKS)) { err = -EINVAL; dev_err(&pdev->dev, "invalid CAN clock selected\n"); goto fail_clk;