Commit 8dce7ea4 authored by Appana Durga Kedareswara rao's avatar Appana Durga Kedareswara rao Committed by Marc Kleine-Budde

can: xilinx_can: Add cantype parameter in xcan_devtype_data struct

To differentiate between different CAN IP's this patch adds
cantype enum variable in the xcan_devtype_data structure
Signed-off-by: default avatarAppana Durga Kedareswara rao <appana.durga.rao@xilinx.com>
Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 3281b380
...@@ -149,7 +149,15 @@ enum xcan_reg { ...@@ -149,7 +149,15 @@ enum xcan_reg {
#define XCAN_FLAG_RX_FIFO_MULTI 0x0010 #define XCAN_FLAG_RX_FIFO_MULTI 0x0010
#define XCAN_FLAG_CANFD_2 0x0020 #define XCAN_FLAG_CANFD_2 0x0020
enum xcan_ip_type {
XAXI_CAN = 0,
XZYNQ_CANPS,
XAXI_CANFD,
XAXI_CANFD_2_0,
};
struct xcan_devtype_data { struct xcan_devtype_data {
enum xcan_ip_type cantype;
unsigned int flags; unsigned int flags;
const struct can_bittiming_const *bittiming_const; const struct can_bittiming_const *bittiming_const;
const char *bus_clk_name; const char *bus_clk_name;
...@@ -1426,6 +1434,7 @@ static const struct dev_pm_ops xcan_dev_pm_ops = { ...@@ -1426,6 +1434,7 @@ static const struct dev_pm_ops xcan_dev_pm_ops = {
}; };
static const struct xcan_devtype_data xcan_zynq_data = { static const struct xcan_devtype_data xcan_zynq_data = {
.cantype = XZYNQ_CANPS,
.flags = XCAN_FLAG_TXFEMP, .flags = XCAN_FLAG_TXFEMP,
.bittiming_const = &xcan_bittiming_const, .bittiming_const = &xcan_bittiming_const,
.btr_ts2_shift = XCAN_BTR_TS2_SHIFT, .btr_ts2_shift = XCAN_BTR_TS2_SHIFT,
...@@ -1434,6 +1443,7 @@ static const struct xcan_devtype_data xcan_zynq_data = { ...@@ -1434,6 +1443,7 @@ static const struct xcan_devtype_data xcan_zynq_data = {
}; };
static const struct xcan_devtype_data xcan_axi_data = { static const struct xcan_devtype_data xcan_axi_data = {
.cantype = XAXI_CAN,
.flags = XCAN_FLAG_TXFEMP, .flags = XCAN_FLAG_TXFEMP,
.bittiming_const = &xcan_bittiming_const, .bittiming_const = &xcan_bittiming_const,
.btr_ts2_shift = XCAN_BTR_TS2_SHIFT, .btr_ts2_shift = XCAN_BTR_TS2_SHIFT,
...@@ -1442,6 +1452,7 @@ static const struct xcan_devtype_data xcan_axi_data = { ...@@ -1442,6 +1452,7 @@ static const struct xcan_devtype_data xcan_axi_data = {
}; };
static const struct xcan_devtype_data xcan_canfd_data = { static const struct xcan_devtype_data xcan_canfd_data = {
.cantype = XAXI_CANFD,
.flags = XCAN_FLAG_EXT_FILTERS | .flags = XCAN_FLAG_EXT_FILTERS |
XCAN_FLAG_RXMNF | XCAN_FLAG_RXMNF |
XCAN_FLAG_TX_MAILBOXES | XCAN_FLAG_TX_MAILBOXES |
...@@ -1453,6 +1464,7 @@ static const struct xcan_devtype_data xcan_canfd_data = { ...@@ -1453,6 +1464,7 @@ static const struct xcan_devtype_data xcan_canfd_data = {
}; };
static const struct xcan_devtype_data xcan_canfd2_data = { static const struct xcan_devtype_data xcan_canfd2_data = {
.cantype = XAXI_CANFD_2_0,
.flags = XCAN_FLAG_EXT_FILTERS | .flags = XCAN_FLAG_EXT_FILTERS |
XCAN_FLAG_RXMNF | XCAN_FLAG_RXMNF |
XCAN_FLAG_TX_MAILBOXES | XCAN_FLAG_TX_MAILBOXES |
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment