Re: [PATCH AUTOSEL 6.1 10/26] can: sun4i_can: Add support for the Allwinner D1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

> From: John Watts <contact@xxxxxxxxxx>
> 
> [ Upstream commit 8abb95250ae6af2d51993da8fcae18da2ce24cc4 ]
> 
> The controllers present in the D1 are extremely similar to the R40
> and require the same reset quirks, but An extra quirk is needed to support
> receiving packets.

Well, we are not adding the rest of support to 6.1, so we don't need
this, either. It will be unused.

BR,
								Pavel

> +++ b/drivers/net/can/Kconfig
> @@ -174,10 +174,10 @@ config CAN_SLCAN
>  
>  config CAN_SUN4I
>  	tristate "Allwinner A10 CAN controller"
> -	depends on MACH_SUN4I || MACH_SUN7I || COMPILE_TEST
> +	depends on MACH_SUN4I || MACH_SUN7I || RISCV || COMPILE_TEST
>  	help
>  	  Say Y here if you want to use CAN controller found on Allwinner
> -	  A10/A20 SoCs.
> +	  A10/A20/D1 SoCs.
>  
>  	  To compile this driver as a module, choose M here: the module will
>  	  be called sun4i_can.
> diff --git a/drivers/net/can/sun4i_can.c b/drivers/net/can/sun4i_can.c
> index dd0c6cd76c5f5..c3a6b028ea4d6 100644
> --- a/drivers/net/can/sun4i_can.c
> +++ b/drivers/net/can/sun4i_can.c
> @@ -91,6 +91,8 @@
>  #define SUN4I_REG_BUF12_ADDR	0x0070	/* CAN Tx/Rx Buffer 12 */
>  #define SUN4I_REG_ACPC_ADDR	0x0040	/* CAN Acceptance Code 0 */
>  #define SUN4I_REG_ACPM_ADDR	0x0044	/* CAN Acceptance Mask 0 */
> +#define SUN4I_REG_ACPC_ADDR_D1	0x0028	/* CAN Acceptance Code 0 on the D1 */
> +#define SUN4I_REG_ACPM_ADDR_D1	0x002C	/* CAN Acceptance Mask 0 on the D1 */
>  #define SUN4I_REG_RBUF_RBACK_START_ADDR	0x0180	/* CAN transmit buffer start */
>  #define SUN4I_REG_RBUF_RBACK_END_ADDR	0x01b0	/* CAN transmit buffer end */
>  
> @@ -779,6 +781,11 @@ static const struct sun4ican_quirks sun4ican_quirks_r40 = {
>  	.acp_offset = 0,
>  };
>  
> +static const struct sun4ican_quirks sun4ican_quirks_d1 = {
> +	.has_reset = true,
> +	.acp_offset = (SUN4I_REG_ACPC_ADDR_D1 - SUN4I_REG_ACPC_ADDR),
> +};
> +
>  static const struct of_device_id sun4ican_of_match[] = {
>  	{
>  		.compatible = "allwinner,sun4i-a10-can",
> @@ -789,6 +796,9 @@ static const struct of_device_id sun4ican_of_match[] = {
>  	}, {
>  		.compatible = "allwinner,sun8i-r40-can",
>  		.data = &sun4ican_quirks_r40
> +	}, {
> +		.compatible = "allwinner,sun20i-d1-can",
> +		.data = &sun4ican_quirks_d1
>  	}, {
>  		/* sentinel */
>  	},
> @@ -915,4 +925,4 @@ module_platform_driver(sun4i_can_driver);
>  MODULE_AUTHOR("Peter Chen <xingkongcp@xxxxxxxxx>");
>  MODULE_AUTHOR("Gerhard Bertelsmann <info@xxxxxxxxxxxxxxxxxxxxxx>");
>  MODULE_LICENSE("Dual BSD/GPL");
> -MODULE_DESCRIPTION("CAN driver for Allwinner SoCs (A10/A20)");
> +MODULE_DESCRIPTION("CAN driver for Allwinner SoCs (A10/A20/D1)");

-- 
DENX Software Engineering GmbH,        Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Automotive Discussions]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]     [CAN Bus]

  Powered by Linux