提交 d6da7881 编写于 作者: J Jarkko Nikula 提交者: Marc Kleine-Budde

can: m_can: remove support for custom bit timing, take #2

Now when Intel Elkhart Lake uses again common bit timing and there are
no other users for custom bit timing, we can bring back the changes
done by the commit 0ddd83fb ("can: m_can: remove support for
custom bit timing").

This effectively reverts commit ea768b2f ("Revert "can: m_can:
remove support for custom bit timing"") while taking into account
commit ea22ba40 ("can: m_can: make custom bittiming fields const")
and commit 7d4a101c ("can: dev: add sanity check in
can_set_static_ctrlmode()").

Link: https://lore.kernel.org/all/20220512124144.536850-2-jarkko.nikula@linux.intel.comSigned-off-by: NJarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: NMarc Kleine-Budde <mkl@pengutronix.de>
上级 14ea4a47
...@@ -1495,34 +1495,22 @@ static int m_can_dev_setup(struct m_can_classdev *cdev) ...@@ -1495,34 +1495,22 @@ static int m_can_dev_setup(struct m_can_classdev *cdev)
err = can_set_static_ctrlmode(dev, CAN_CTRLMODE_FD_NON_ISO); err = can_set_static_ctrlmode(dev, CAN_CTRLMODE_FD_NON_ISO);
if (err) if (err)
return err; return err;
cdev->can.bittiming_const = cdev->bit_timing ? cdev->can.bittiming_const = &m_can_bittiming_const_30X;
cdev->bit_timing : &m_can_bittiming_const_30X; cdev->can.data_bittiming_const = &m_can_data_bittiming_const_30X;
cdev->can.data_bittiming_const = cdev->data_timing ?
cdev->data_timing :
&m_can_data_bittiming_const_30X;
break; break;
case 31: case 31:
/* CAN_CTRLMODE_FD_NON_ISO is fixed with M_CAN IP v3.1.x */ /* CAN_CTRLMODE_FD_NON_ISO is fixed with M_CAN IP v3.1.x */
err = can_set_static_ctrlmode(dev, CAN_CTRLMODE_FD_NON_ISO); err = can_set_static_ctrlmode(dev, CAN_CTRLMODE_FD_NON_ISO);
if (err) if (err)
return err; return err;
cdev->can.bittiming_const = cdev->bit_timing ? cdev->can.bittiming_const = &m_can_bittiming_const_31X;
cdev->bit_timing : &m_can_bittiming_const_31X; cdev->can.data_bittiming_const = &m_can_data_bittiming_const_31X;
cdev->can.data_bittiming_const = cdev->data_timing ?
cdev->data_timing :
&m_can_data_bittiming_const_31X;
break; break;
case 32: case 32:
case 33: case 33:
/* Support both MCAN version v3.2.x and v3.3.0 */ /* Support both MCAN version v3.2.x and v3.3.0 */
cdev->can.bittiming_const = cdev->bit_timing ? cdev->can.bittiming_const = &m_can_bittiming_const_31X;
cdev->bit_timing : &m_can_bittiming_const_31X; cdev->can.data_bittiming_const = &m_can_data_bittiming_const_31X;
cdev->can.data_bittiming_const = cdev->data_timing ?
cdev->data_timing :
&m_can_data_bittiming_const_31X;
cdev->can.ctrlmode_supported |= cdev->can.ctrlmode_supported |=
(m_can_niso_supported(cdev) ? (m_can_niso_supported(cdev) ?
......
...@@ -85,9 +85,6 @@ struct m_can_classdev { ...@@ -85,9 +85,6 @@ struct m_can_classdev {
struct sk_buff *tx_skb; struct sk_buff *tx_skb;
struct phy *transceiver; struct phy *transceiver;
const struct can_bittiming_const *bit_timing;
const struct can_bittiming_const *data_timing;
struct m_can_ops *ops; struct m_can_ops *ops;
int version; int version;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册