|
177 | 177 | enum imx_uart_type { |
178 | 178 | IMX1_UART, |
179 | 179 | IMX21_UART, |
180 | | - IMX53_UART, |
181 | | - IMX6Q_UART, |
182 | 180 | }; |
183 | 181 |
|
184 | 182 | /* device type dependent stuff */ |
@@ -240,30 +238,26 @@ struct imx_port_ucrs { |
240 | 238 | unsigned int ucr3; |
241 | 239 | }; |
242 | 240 |
|
243 | | -static struct imx_uart_data imx_uart_devdata[] = { |
244 | | - [IMX1_UART] = { |
245 | | - .uts_reg = IMX1_UTS, |
246 | | - .devtype = IMX1_UART, |
247 | | - }, |
248 | | - [IMX21_UART] = { |
249 | | - .uts_reg = IMX21_UTS, |
250 | | - .devtype = IMX21_UART, |
251 | | - }, |
252 | | - [IMX53_UART] = { |
253 | | - .uts_reg = IMX21_UTS, |
254 | | - .devtype = IMX53_UART, |
255 | | - }, |
256 | | - [IMX6Q_UART] = { |
257 | | - .uts_reg = IMX21_UTS, |
258 | | - .devtype = IMX6Q_UART, |
259 | | - }, |
| 241 | +static const struct imx_uart_data imx_uart_imx1_devdata = { |
| 242 | + .uts_reg = IMX1_UTS, |
| 243 | + .devtype = IMX1_UART, |
| 244 | +}; |
| 245 | + |
| 246 | +static const struct imx_uart_data imx_uart_imx21_devdata = { |
| 247 | + .uts_reg = IMX21_UTS, |
| 248 | + .devtype = IMX21_UART, |
260 | 249 | }; |
261 | 250 |
|
262 | 251 | static const struct of_device_id imx_uart_dt_ids[] = { |
263 | | - { .compatible = "fsl,imx6q-uart", .data = &imx_uart_devdata[IMX6Q_UART], }, |
264 | | - { .compatible = "fsl,imx53-uart", .data = &imx_uart_devdata[IMX53_UART], }, |
265 | | - { .compatible = "fsl,imx1-uart", .data = &imx_uart_devdata[IMX1_UART], }, |
266 | | - { .compatible = "fsl,imx21-uart", .data = &imx_uart_devdata[IMX21_UART], }, |
| 252 | + /* |
| 253 | + * For reasons unknown to me, some UART devices (e.g. imx6ul's) are |
| 254 | + * compatible to fsl,imx6q-uart, but not fsl,imx21-uart, while the |
| 255 | + * original imx6q's UART is compatible to fsl,imx21-uart. This driver |
| 256 | + * doesn't make any distinction between these two variants. |
| 257 | + */ |
| 258 | + { .compatible = "fsl,imx6q-uart", .data = &imx_uart_imx21_devdata, }, |
| 259 | + { .compatible = "fsl,imx1-uart", .data = &imx_uart_imx1_devdata, }, |
| 260 | + { .compatible = "fsl,imx21-uart", .data = &imx_uart_imx21_devdata, }, |
267 | 261 | { /* sentinel */ } |
268 | 262 | }; |
269 | 263 | MODULE_DEVICE_TABLE(of, imx_uart_dt_ids); |
|
0 commit comments