[PATCH 2/3] can: xilinx_can: Add ECC support
Marc Kleine-Budde
mkl at pengutronix.de
Fri Jun 16 04:06:43 PDT 2023
On 12.06.2023 17:12:56, Srinivas Goud wrote:
> Add ECC support for Xilinx CAN Controller, so this driver reports
> 1bit/2bit ECC errors for FIFO's based on ECC error interrupt.
> ECC feature for Xilinx CAN Controller selected through
> 'xlnx,has-ecc' DT property
>
> Signed-off-by: Srinivas Goud <srinivas.goud at amd.com>
> ---
> drivers/net/can/xilinx_can.c | 109 +++++++++++++++++++++++++++++++++++++++++--
> 1 file changed, 104 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/can/xilinx_can.c b/drivers/net/can/xilinx_can.c
> index 43c812e..311e435 100644
> --- a/drivers/net/can/xilinx_can.c
> +++ b/drivers/net/can/xilinx_can.c
> @@ -63,6 +63,12 @@ enum xcan_reg {
> XCAN_RXMSG_2_BASE_OFFSET = 0x2100, /* RX Message Space */
> XCAN_AFR_2_MASK_OFFSET = 0x0A00, /* Acceptance Filter MASK */
> XCAN_AFR_2_ID_OFFSET = 0x0A04, /* Acceptance Filter ID */
> +
> + /* only on AXI CAN cores */
> + XCAN_ECC_CFG_OFFSET = 0xC8, /* ECC Configuration */
> + XCAN_TXTLFIFO_ECC_OFFSET = 0xCC, /* TXTL FIFO ECC error counter */
> + XCAN_TXOLFIFO_ECC_OFFSET = 0xD0, /* TXOL FIFO ECC error counter */
> + XCAN_RXFIFO_ECC_OFFSET = 0xD4, /* RX FIFO ECC error counter */
Please keep the enum sorted by address.
> };
>
> #define XCAN_FRAME_ID_OFFSET(frame_base) ((frame_base) + 0x00)
> @@ -135,6 +141,17 @@ enum xcan_reg {
> #define XCAN_2_FSR_RI_MASK 0x0000003F /* RX Read Index */
> #define XCAN_DLCR_EDL_MASK 0x08000000 /* EDL Mask in DLC */
> #define XCAN_DLCR_BRS_MASK 0x04000000 /* BRS Mask in DLC */
> +#define XCAN_IXR_E2BERX_MASK BIT(23) /* RX FIFO two bit ECC error */
> +#define XCAN_IXR_E1BERX_MASK BIT(22) /* RX FIFO one bit ECC error */
> +#define XCAN_IXR_E2BETXOL_MASK BIT(21) /* TXOL FIFO two bit ECC error */
> +#define XCAN_IXR_E1BETXOL_MASK BIT(20) /* TXOL FIFO One bit ECC error */
> +#define XCAN_IXR_E2BETXTL_MASK BIT(19) /* TXTL FIFO Two bit ECC error */
> +#define XCAN_IXR_E1BETXTL_MASK BIT(18) /* TXTL FIFO One bit ECC error */
Please move the XCAN_IXR next to the other XCAN_IXR.
Marc
--
Pengutronix e.K. | Marc Kleine-Budde |
Embedded Linux | https://www.pengutronix.de |
Vertretung Nürnberg | Phone: +49-5121-206917-129 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20230616/affe63e2/attachment.sig>
More information about the linux-arm-kernel
mailing list