diff options
Diffstat (limited to 'target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch')
-rw-r--r-- | target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch b/target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch index a52b8b5167..75a6d97adb 100644 --- a/target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch +++ b/target/linux/layerscape/patches-4.14/809-flexcan-support-layerscape.patch @@ -470,7 +470,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> /* On Vybrid, disable memory error detection interrupts * and freeze mode. -@@ -1011,16 +1028,16 @@ static int flexcan_chip_start(struct net +@@ -1011,17 +1028,17 @@ static int flexcan_chip_start(struct net * and Correction of Memory Errors" to write to * MECR register */ @@ -485,6 +485,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> reg_mecr &= ~FLEXCAN_MECR_ECRWRDIS; - flexcan_write(reg_mecr, ®s->mecr); + priv->write(reg_mecr, ®s->mecr); + reg_mecr |= FLEXCAN_MECR_ECCDIS; reg_mecr &= ~(FLEXCAN_MECR_NCEFAFRZ | FLEXCAN_MECR_HANCEI_MSK | FLEXCAN_MECR_FANCEI_MSK); - flexcan_write(reg_mecr, ®s->mecr); @@ -492,7 +493,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> } err = flexcan_transceiver_enable(priv); -@@ -1036,14 +1053,14 @@ static int flexcan_chip_start(struct net +@@ -1037,14 +1054,14 @@ static int flexcan_chip_start(struct net /* enable interrupts atomically */ disable_irq(dev->irq); @@ -511,7 +512,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> return 0; -@@ -1068,10 +1085,10 @@ static void flexcan_chip_stop(struct net +@@ -1069,10 +1086,10 @@ static void flexcan_chip_stop(struct net flexcan_chip_disable(priv); /* Disable all interrupts */ @@ -526,7 +527,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> flexcan_transceiver_disable(priv); priv->can.state = CAN_STATE_STOPPED; -@@ -1186,26 +1203,26 @@ static int register_flexcandev(struct ne +@@ -1187,26 +1204,26 @@ static int register_flexcandev(struct ne err = flexcan_chip_disable(priv); if (err) goto out_disable_per; @@ -558,7 +559,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> if (!(reg & FLEXCAN_MCR_FEN)) { netdev_err(dev, "Could not enable RX FIFO, unsupported core\n"); err = -ENODEV; -@@ -1233,8 +1250,12 @@ static void unregister_flexcandev(struct +@@ -1234,8 +1251,12 @@ static void unregister_flexcandev(struct static const struct of_device_id flexcan_of_match[] = { { .compatible = "fsl,imx6q-flexcan", .data = &fsl_imx6q_devtype_data, }, { .compatible = "fsl,imx28-flexcan", .data = &fsl_imx28_devtype_data, }, @@ -571,7 +572,7 @@ Signed-off-by: Biwen Li <biwen.li@nxp.com> { /* sentinel */ }, }; MODULE_DEVICE_TABLE(of, flexcan_of_match); -@@ -1314,6 +1335,21 @@ static int flexcan_probe(struct platform +@@ -1315,6 +1336,21 @@ static int flexcan_probe(struct platform dev->flags |= IFF_ECHO; priv = netdev_priv(dev); |