Message ID | 1445332961-25419-2-git-send-email-a.hajda@samsung.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Quoting Andrzej Hajda (2015-10-20 02:22:32) > HDMI driver must re-parent respective muxes during HDMI-PHY on/off > to HDMI-PHY output clocks. To reference those clocks their > definitions should be added. > > Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> > --- > drivers/clk/samsung/clk-exynos5433.c | 6 ++++-- > include/dt-bindings/clock/exynos5433.h | 5 ++++- > 2 files changed, 8 insertions(+), 3 deletions(-) > > diff --git a/drivers/clk/samsung/clk-exynos5433.c b/drivers/clk/samsung/clk-exynos5433.c > index 650ec13..e037406 100644 > --- a/drivers/clk/samsung/clk-exynos5433.c > +++ b/drivers/clk/samsung/clk-exynos5433.c > @@ -2614,8 +2614,10 @@ static struct samsung_fixed_rate_clock disp_fixed_clks[] __initdata = { > FRATE(0, "phyclk_mipidphy0_rxclkesc0_phy", NULL, CLK_IS_ROOT, > 100000000), > /* PHY clocks from HDMI_PHY */ > - FRATE(0, "phyclk_hdmiphy_tmds_clko_phy", NULL, CLK_IS_ROOT, 300000000), > - FRATE(0, "phyclk_hdmiphy_pixel_clko_phy", NULL, CLK_IS_ROOT, 166000000), > + FRATE(CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY, "phyclk_hdmiphy_tmds_clko_phy", > + NULL, CLK_IS_ROOT, 300000000), > + FRATE(CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY, "phyclk_hdmiphy_pixel_clko_phy", > + NULL, CLK_IS_ROOT, 166000000), > }; > > static struct samsung_mux_clock disp_mux_clks[] __initdata = { > diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h > index 5bd80d5..4f0d566 100644 > --- a/include/dt-bindings/clock/exynos5433.h > +++ b/include/dt-bindings/clock/exynos5433.h > @@ -765,7 +765,10 @@ > #define CLK_SCLK_RGB_VCLK 109 > #define CLK_SCLK_RGB_TV_VCLK 110 > > -#define DISP_NR_CLK 111 > +#define CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY 111 > +#define CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY 112 > + > +#define DISP_NR_CLK 113 Why break compatibility with older DTBs? Regards, Mike > > /* CMU_AUD */ > #define CLK_MOUT_AUD_PLL_USER 1 > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-clk" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello, On 2015-10-20 12:34, Michael Turquette wrote: > Quoting Andrzej Hajda (2015-10-20 02:22:32) >> HDMI driver must re-parent respective muxes during HDMI-PHY on/off >> to HDMI-PHY output clocks. To reference those clocks their >> definitions should be added. >> >> Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> >> --- >> drivers/clk/samsung/clk-exynos5433.c | 6 ++++-- >> include/dt-bindings/clock/exynos5433.h | 5 ++++- >> 2 files changed, 8 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/clk/samsung/clk-exynos5433.c b/drivers/clk/samsung/clk-exynos5433.c >> index 650ec13..e037406 100644 >> --- a/drivers/clk/samsung/clk-exynos5433.c >> +++ b/drivers/clk/samsung/clk-exynos5433.c >> @@ -2614,8 +2614,10 @@ static struct samsung_fixed_rate_clock disp_fixed_clks[] __initdata = { >> FRATE(0, "phyclk_mipidphy0_rxclkesc0_phy", NULL, CLK_IS_ROOT, >> 100000000), >> /* PHY clocks from HDMI_PHY */ >> - FRATE(0, "phyclk_hdmiphy_tmds_clko_phy", NULL, CLK_IS_ROOT, 300000000), >> - FRATE(0, "phyclk_hdmiphy_pixel_clko_phy", NULL, CLK_IS_ROOT, 166000000), >> + FRATE(CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY, "phyclk_hdmiphy_tmds_clko_phy", >> + NULL, CLK_IS_ROOT, 300000000), >> + FRATE(CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY, "phyclk_hdmiphy_pixel_clko_phy", >> + NULL, CLK_IS_ROOT, 166000000), >> }; >> >> static struct samsung_mux_clock disp_mux_clks[] __initdata = { >> diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h >> index 5bd80d5..4f0d566 100644 >> --- a/include/dt-bindings/clock/exynos5433.h >> +++ b/include/dt-bindings/clock/exynos5433.h >> @@ -765,7 +765,10 @@ >> #define CLK_SCLK_RGB_VCLK 109 >> #define CLK_SCLK_RGB_TV_VCLK 110 >> >> -#define DISP_NR_CLK 111 >> +#define CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY 111 >> +#define CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY 112 >> + >> +#define DISP_NR_CLK 113 > Why break compatibility with older DTBs? This patch just adds support for 2 more clocks to exynos 5433 clk driver, which were previously undefined. How this break compatibility with older DTBs? Best regards
On 20/10/15 12:34, Michael Turquette wrote: >> diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h >> > index 5bd80d5..4f0d566 100644 >> > --- a/include/dt-bindings/clock/exynos5433.h >> > +++ b/include/dt-bindings/clock/exynos5433.h >> > @@ -765,7 +765,10 @@ >> > #define CLK_SCLK_RGB_VCLK 109 >> > #define CLK_SCLK_RGB_TV_VCLK 110 >> > >> > -#define DISP_NR_CLK 111 >> > +#define CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY 111 >> > +#define CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY 112 >> > + >> > +#define DISP_NR_CLK 113 > > Why break compatibility with older DTBs? I used to be resistant to changing those _NR_CLK defines in the past but then realized they are not part of the DT ABI. These defines are used only in drivers and affect only size of the provider's allocated clock array. The confusion may be caused by the fact that the whole header is shared by the kernel source and dts. $ git grep -l _NR_CLK arch/arm/boot/dts drivers/clk/samsung/ drivers/clk/samsung/clk-exynos-clkout.c drivers/clk/samsung/clk-exynos3250.c drivers/clk/samsung/clk-exynos4.c drivers/clk/samsung/clk-exynos4415.c drivers/clk/samsung/clk-exynos5250.c drivers/clk/samsung/clk-exynos5260.c drivers/clk/samsung/clk-exynos5410.c drivers/clk/samsung/clk-exynos5420.c drivers/clk/samsung/clk-exynos5433.c drivers/clk/samsung/clk-exynos5440.c drivers/clk/samsung/clk-exynos7.c There is no *_NR_CLK in any dts file. New kernel will work will older DTB, the driver will just register more clocks, which will not be dereferenced anywhere in older dtb.
diff --git a/drivers/clk/samsung/clk-exynos5433.c b/drivers/clk/samsung/clk-exynos5433.c index 650ec13..e037406 100644 --- a/drivers/clk/samsung/clk-exynos5433.c +++ b/drivers/clk/samsung/clk-exynos5433.c @@ -2614,8 +2614,10 @@ static struct samsung_fixed_rate_clock disp_fixed_clks[] __initdata = { FRATE(0, "phyclk_mipidphy0_rxclkesc0_phy", NULL, CLK_IS_ROOT, 100000000), /* PHY clocks from HDMI_PHY */ - FRATE(0, "phyclk_hdmiphy_tmds_clko_phy", NULL, CLK_IS_ROOT, 300000000), - FRATE(0, "phyclk_hdmiphy_pixel_clko_phy", NULL, CLK_IS_ROOT, 166000000), + FRATE(CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY, "phyclk_hdmiphy_tmds_clko_phy", + NULL, CLK_IS_ROOT, 300000000), + FRATE(CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY, "phyclk_hdmiphy_pixel_clko_phy", + NULL, CLK_IS_ROOT, 166000000), }; static struct samsung_mux_clock disp_mux_clks[] __initdata = { diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h index 5bd80d5..4f0d566 100644 --- a/include/dt-bindings/clock/exynos5433.h +++ b/include/dt-bindings/clock/exynos5433.h @@ -765,7 +765,10 @@ #define CLK_SCLK_RGB_VCLK 109 #define CLK_SCLK_RGB_TV_VCLK 110 -#define DISP_NR_CLK 111 +#define CLK_PHYCLK_HDMIPHY_PIXEL_CLKO_PHY 111 +#define CLK_PHYCLK_HDMIPHY_TMDS_CLKO_PHY 112 + +#define DISP_NR_CLK 113 /* CMU_AUD */ #define CLK_MOUT_AUD_PLL_USER 1
HDMI driver must re-parent respective muxes during HDMI-PHY on/off to HDMI-PHY output clocks. To reference those clocks their definitions should be added. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> --- drivers/clk/samsung/clk-exynos5433.c | 6 ++++-- include/dt-bindings/clock/exynos5433.h | 5 ++++- 2 files changed, 8 insertions(+), 3 deletions(-)