Commit e358784297992b012e8071764d996191dd2b1a54
1 parent
d5a7b406c5
Exists in
smarc-imx_3.14.28_1.0.0_ga
and in
1 other branch
can: flexcan: fix mx28 detection by rearanging OF match table
The current implemetation of of_match_device() relies that the of_device_id table in the driver is sorted from most specific to least specific compatible. Without this patch the mx28 is detected as the less specific p1010. This leads to a p1010 specific workaround is activated on the mx28, which is not needed. Cc: linux-stable <stable@vger.kernel.org> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Showing 1 changed file with 2 additions and 2 deletions Side-by-side Diff
drivers/net/can/flexcan.c
... | ... | @@ -985,9 +985,9 @@ |
985 | 985 | } |
986 | 986 | |
987 | 987 | static const struct of_device_id flexcan_of_match[] = { |
988 | - { .compatible = "fsl,p1010-flexcan", .data = &fsl_p1010_devtype_data, }, | |
989 | - { .compatible = "fsl,imx28-flexcan", .data = &fsl_imx28_devtype_data, }, | |
990 | 988 | { .compatible = "fsl,imx6q-flexcan", .data = &fsl_imx6q_devtype_data, }, |
989 | + { .compatible = "fsl,imx28-flexcan", .data = &fsl_imx28_devtype_data, }, | |
990 | + { .compatible = "fsl,p1010-flexcan", .data = &fsl_p1010_devtype_data, }, | |
991 | 991 | { /* sentinel */ }, |
992 | 992 | }; |
993 | 993 | MODULE_DEVICE_TABLE(of, flexcan_of_match); |