Message ID | 1372746628-20092-4-git-send-email-b32955@freescale.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Jul 02, 2013 at 07:30:26AM +0100, Huang Shijie wrote: > The imx6 uart can supports the DMA, imx uart driver has added a new > compatible property for the imx6 uart. > > In order to enable the DMA for some uart port in imx6, we rename the > uart's compatible property to "fsl,imx6-uart". Doesn't this change break using these dts with an older kernel? You remove the "fsl,imx21-uart" string older kernels understand. Given you already had "fsl,imx6q-uart" and "fsl,imx6sl-uart" strings, would it not have made more sense to just add these to the driver? Thanks, Mark. > > Signed-off-by: Huang Shijie <b32955@freescale.com> > --- > arch/arm/boot/dts/imx6qdl.dtsi | 10 +++++----- > arch/arm/boot/dts/imx6sl.dtsi | 10 +++++----- > 2 files changed, 10 insertions(+), 10 deletions(-) > > diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi > index 0509344..d4ab0ee 100644 > --- a/arch/arm/boot/dts/imx6qdl.dtsi > +++ b/arch/arm/boot/dts/imx6qdl.dtsi > @@ -179,7 +179,7 @@ > }; > > uart1: serial@02020000 { > - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02020000 0x4000>; > interrupts = <0 26 0x04>; > clocks = <&clks 160>, <&clks 161>; > @@ -787,7 +787,7 @@ > }; > > uart2: serial@021e8000 { > - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x021e8000 0x4000>; > interrupts = <0 27 0x04>; > clocks = <&clks 160>, <&clks 161>; > @@ -796,7 +796,7 @@ > }; > > uart3: serial@021ec000 { > - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x021ec000 0x4000>; > interrupts = <0 28 0x04>; > clocks = <&clks 160>, <&clks 161>; > @@ -805,7 +805,7 @@ > }; > > uart4: serial@021f0000 { > - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x021f0000 0x4000>; > interrupts = <0 29 0x04>; > clocks = <&clks 160>, <&clks 161>; > @@ -814,7 +814,7 @@ > }; > > uart5: serial@021f4000 { > - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x021f4000 0x4000>; > interrupts = <0 30 0x04>; > clocks = <&clks 160>, <&clks 161>; > diff --git a/arch/arm/boot/dts/imx6sl.dtsi b/arch/arm/boot/dts/imx6sl.dtsi > index 9138c67..ca1527f 100644 > --- a/arch/arm/boot/dts/imx6sl.dtsi > +++ b/arch/arm/boot/dts/imx6sl.dtsi > @@ -152,7 +152,7 @@ > }; > > uart5: serial@02018000 { > - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02018000 0x4000>; > interrupts = <0 30 0x04>; > clocks = <&clks IMX6SL_CLK_UART>, > @@ -162,7 +162,7 @@ > }; > > uart1: serial@02020000 { > - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02020000 0x4000>; > interrupts = <0 26 0x04>; > clocks = <&clks IMX6SL_CLK_UART>, > @@ -172,7 +172,7 @@ > }; > > uart2: serial@02024000 { > - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02024000 0x4000>; > interrupts = <0 27 0x04>; > clocks = <&clks IMX6SL_CLK_UART>, > @@ -209,7 +209,7 @@ > }; > > uart3: serial@02034000 { > - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02034000 0x4000>; > interrupts = <0 28 0x04>; > clocks = <&clks IMX6SL_CLK_UART>, > @@ -219,7 +219,7 @@ > }; > > uart4: serial@02038000 { > - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; > + compatible = "fsl,imx6-uart"; > reg = <0x02038000 0x4000>; > interrupts = <0 29 0x04>; > clocks = <&clks IMX6SL_CLK_UART>, > -- > 1.7.1 > > > > _______________________________________________ > linux-arm-kernel mailing list > linux-arm-kernel@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel >
? 2013?07?02? 17:56, Mark Rutland ??: > On Tue, Jul 02, 2013 at 07:30:26AM +0100, Huang Shijie wrote: >> > The imx6 uart can supports the DMA, imx uart driver has added a new >> > compatible property for the imx6 uart. >> > >> > In order to enable the DMA for some uart port in imx6, we rename the >> > uart's compatible property to "fsl,imx6-uart". > Doesn't this change break using these dts with an older kernel? You is it reasonable to use a new dts with an old kernel? > remove the "fsl,imx21-uart" string older kernels understand. > > Given you already had "fsl,imx6q-uart" and "fsl,imx6sl-uart" strings, > would it not have made more sense to just add these to the driver? I think it's not a good idea. Shawn, what's your opinion about this? thanks Huang Shijie
On Tue, Jul 02, 2013 at 11:43:13AM +0100, Huang Shijie wrote: > ? 2013?07?02? 17:56, Mark Rutland ??: > > On Tue, Jul 02, 2013 at 07:30:26AM +0100, Huang Shijie wrote: > >> > The imx6 uart can supports the DMA, imx uart driver has added a new > >> > compatible property for the imx6 uart. > >> > > >> > In order to enable the DMA for some uart port in imx6, we rename the > >> > uart's compatible property to "fsl,imx6-uart". > > Doesn't this change break using these dts with an older kernel? You > is it reasonable to use a new dts with an old kernel? As long as everything required to boot is described in a fashion the old kernel understands, I see no reason it shouldn't be. I certainly see no reason to break compatibility with an old kernel by *removing* a compatible string ("fsl,imx21-uart") that should not break newer kernels if they choose to use the more-specific compatible string. > > > > remove the "fsl,imx21-uart" string older kernels understand. > > > > Given you already had "fsl,imx6q-uart" and "fsl,imx6sl-uart" strings, > > would it not have made more sense to just add these to the driver? > I think it's not a good idea. Are there instances of "fsl-imx6q-uart" or "fsl,imx6sl-uart" that aren't compatible with this new "fsl,imx6-uart" (i.e. are any not DMA capable)? If not, then using the existing binding gives the same behaviour without confusing everyone by adding a slightly different compatible string, without the churn caused by modifying the dts, and the cost to Linux is a single line. Boards with a pre-built dtb will get the new functionality by just changing the Linux image. I don't see what's wrong with this. Thanks, Mark. > > Shawn, what's your opinion about this? > > thanks > Huang Shijie > > >
? 2013?07?02? 19:11, Mark Rutland ??: > compatible string ("fsl,imx21-uart") that should not break newer > kernels if they choose to use the more-specific compatible string. > ok. I will add back the the "fsl,imx21-uart". thanks for the review. Huang Shijie
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi index 0509344..d4ab0ee 100644 --- a/arch/arm/boot/dts/imx6qdl.dtsi +++ b/arch/arm/boot/dts/imx6qdl.dtsi @@ -179,7 +179,7 @@ }; uart1: serial@02020000 { - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02020000 0x4000>; interrupts = <0 26 0x04>; clocks = <&clks 160>, <&clks 161>; @@ -787,7 +787,7 @@ }; uart2: serial@021e8000 { - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x021e8000 0x4000>; interrupts = <0 27 0x04>; clocks = <&clks 160>, <&clks 161>; @@ -796,7 +796,7 @@ }; uart3: serial@021ec000 { - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x021ec000 0x4000>; interrupts = <0 28 0x04>; clocks = <&clks 160>, <&clks 161>; @@ -805,7 +805,7 @@ }; uart4: serial@021f0000 { - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x021f0000 0x4000>; interrupts = <0 29 0x04>; clocks = <&clks 160>, <&clks 161>; @@ -814,7 +814,7 @@ }; uart5: serial@021f4000 { - compatible = "fsl,imx6q-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x021f4000 0x4000>; interrupts = <0 30 0x04>; clocks = <&clks 160>, <&clks 161>; diff --git a/arch/arm/boot/dts/imx6sl.dtsi b/arch/arm/boot/dts/imx6sl.dtsi index 9138c67..ca1527f 100644 --- a/arch/arm/boot/dts/imx6sl.dtsi +++ b/arch/arm/boot/dts/imx6sl.dtsi @@ -152,7 +152,7 @@ }; uart5: serial@02018000 { - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02018000 0x4000>; interrupts = <0 30 0x04>; clocks = <&clks IMX6SL_CLK_UART>, @@ -162,7 +162,7 @@ }; uart1: serial@02020000 { - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02020000 0x4000>; interrupts = <0 26 0x04>; clocks = <&clks IMX6SL_CLK_UART>, @@ -172,7 +172,7 @@ }; uart2: serial@02024000 { - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02024000 0x4000>; interrupts = <0 27 0x04>; clocks = <&clks IMX6SL_CLK_UART>, @@ -209,7 +209,7 @@ }; uart3: serial@02034000 { - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02034000 0x4000>; interrupts = <0 28 0x04>; clocks = <&clks IMX6SL_CLK_UART>, @@ -219,7 +219,7 @@ }; uart4: serial@02038000 { - compatible = "fsl,imx6sl-uart", "fsl,imx21-uart"; + compatible = "fsl,imx6-uart"; reg = <0x02038000 0x4000>; interrupts = <0 29 0x04>; clocks = <&clks IMX6SL_CLK_UART>,
The imx6 uart can supports the DMA, imx uart driver has added a new compatible property for the imx6 uart. In order to enable the DMA for some uart port in imx6, we rename the uart's compatible property to "fsl,imx6-uart". Signed-off-by: Huang Shijie <b32955@freescale.com> --- arch/arm/boot/dts/imx6qdl.dtsi | 10 +++++----- arch/arm/boot/dts/imx6sl.dtsi | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-)