On 17:00 Thu 12 Dec , Nicolas Ferre wrote: > This AT91 specific Kconfig option removed the code that dealt with > programmable clocks. Each AT91 SoC embeds programmable clocks and > there is little gain to remove this code in case that such a clock > is not used. > If this option is not selected, it causes certain drivers to fail > to build. We simply remove this option instead of adding code just > to build a workaround. > > Signed-off-by: Nicolas Ferre <nicolas.fe...@atmel.com> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagn...@jcrosoft.com>
Best Regards, J. > --- > Olof, Kevin, > > This patch goes on top of the AT91 "cleanup" branch. > > Bye, > > > arch/arm/configs/at91_dt_defconfig | 1 - > arch/arm/configs/at91rm9200_defconfig | 1 - > arch/arm/configs/at91sam9260_9g20_defconfig | 1 - > arch/arm/configs/at91sam9261_9g10_defconfig | 1 - > arch/arm/configs/at91sam9g45_defconfig | 1 - > arch/arm/configs/at91sam9rl_defconfig | 1 - > arch/arm/configs/sama5_defconfig | 1 - > arch/arm/mach-at91/Kconfig | 6 ------ > arch/arm/mach-at91/clock.c | 6 ------ > arch/arm/mach-at91/pm.c | 3 --- > drivers/clk/at91/Makefile | 3 +-- > drivers/clk/at91/pmc.c | 2 -- > drivers/clk/at91/pmc.h | 2 -- > sound/soc/atmel/Kconfig | 2 +- > 14 files changed, 2 insertions(+), 29 deletions(-) > > diff --git a/arch/arm/configs/at91_dt_defconfig > b/arch/arm/configs/at91_dt_defconfig > index 690e89273230..0b4e9b5210d8 100644 > --- a/arch/arm/configs/at91_dt_defconfig > +++ b/arch/arm/configs/at91_dt_defconfig > @@ -22,7 +22,6 @@ CONFIG_SOC_AT91SAM9X5=y > CONFIG_SOC_AT91SAM9N12=y > CONFIG_MACH_AT91RM9200_DT=y > CONFIG_MACH_AT91SAM9_DT=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > CONFIG_AT91_TIMER_HZ=128 > CONFIG_AEABI=y > # CONFIG_OABI_COMPAT is not set > diff --git a/arch/arm/configs/at91rm9200_defconfig > b/arch/arm/configs/at91rm9200_defconfig > index 75502c4d222c..bf057719dab0 100644 > --- a/arch/arm/configs/at91rm9200_defconfig > +++ b/arch/arm/configs/at91rm9200_defconfig > @@ -31,7 +31,6 @@ CONFIG_MACH_YL9200=y > CONFIG_MACH_CPUAT91=y > CONFIG_MACH_ECO920=y > CONFIG_MTD_AT91_DATAFLASH_CARD=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > CONFIG_AT91_TIMER_HZ=100 > # CONFIG_ARM_THUMB is not set > CONFIG_PCCARD=y > diff --git a/arch/arm/configs/at91sam9260_9g20_defconfig > b/arch/arm/configs/at91sam9260_9g20_defconfig > index 69b6928d3d9d..955dc480f3ee 100644 > --- a/arch/arm/configs/at91sam9260_9g20_defconfig > +++ b/arch/arm/configs/at91sam9260_9g20_defconfig > @@ -28,7 +28,6 @@ CONFIG_MACH_PCONTROL_G20=y > CONFIG_MACH_GSIA18S=y > CONFIG_MACH_SNAPPER_9260=y > CONFIG_MACH_AT91SAM9_DT=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > CONFIG_AT91_SLOW_CLOCK=y > # CONFIG_ARM_THUMB is not set > CONFIG_AEABI=y > diff --git a/arch/arm/configs/at91sam9261_9g10_defconfig > b/arch/arm/configs/at91sam9261_9g10_defconfig > index 9d35cd81c611..f80e993b04ce 100644 > --- a/arch/arm/configs/at91sam9261_9g10_defconfig > +++ b/arch/arm/configs/at91sam9261_9g10_defconfig > @@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y > CONFIG_ARCH_AT91SAM9261=y > CONFIG_MACH_AT91SAM9261EK=y > CONFIG_MACH_AT91SAM9G10EK=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > # CONFIG_ARM_THUMB is not set > CONFIG_AEABI=y > # CONFIG_OABI_COMPAT is not set > diff --git a/arch/arm/configs/at91sam9g45_defconfig > b/arch/arm/configs/at91sam9g45_defconfig > index 08166cd4e7d6..e181a50fd65a 100644 > --- a/arch/arm/configs/at91sam9g45_defconfig > +++ b/arch/arm/configs/at91sam9g45_defconfig > @@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y > CONFIG_ARCH_AT91SAM9G45=y > CONFIG_MACH_AT91SAM9M10G45EK=y > CONFIG_MACH_AT91SAM9_DT=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > CONFIG_AT91_SLOW_CLOCK=y > CONFIG_AEABI=y > # CONFIG_OABI_COMPAT is not set > diff --git a/arch/arm/configs/at91sam9rl_defconfig > b/arch/arm/configs/at91sam9rl_defconfig > index 7cf87856d63c..7b6f131cecd6 100644 > --- a/arch/arm/configs/at91sam9rl_defconfig > +++ b/arch/arm/configs/at91sam9rl_defconfig > @@ -13,7 +13,6 @@ CONFIG_MODULE_UNLOAD=y > CONFIG_ARCH_AT91=y > CONFIG_ARCH_AT91SAM9RL=y > CONFIG_MACH_AT91SAM9RLEK=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > # CONFIG_ARM_THUMB is not set > CONFIG_ZBOOT_ROM_TEXT=0x0 > CONFIG_ZBOOT_ROM_BSS=0x0 > diff --git a/arch/arm/configs/sama5_defconfig > b/arch/arm/configs/sama5_defconfig > index f6e78f83c3c3..dc3881e07630 100644 > --- a/arch/arm/configs/sama5_defconfig > +++ b/arch/arm/configs/sama5_defconfig > @@ -20,7 +20,6 @@ CONFIG_ARCH_AT91=y > CONFIG_SOC_SAM_V7=y > CONFIG_SOC_SAMA5D3=y > CONFIG_MACH_SAMA5_DT=y > -CONFIG_AT91_PROGRAMMABLE_CLOCKS=y > CONFIG_AEABI=y > # CONFIG_OABI_COMPAT is not set > CONFIG_UACCESS_WITH_MEMCPY=y > diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig > index aac7814db4f9..f1bf952da747 100644 > --- a/arch/arm/mach-at91/Kconfig > +++ b/arch/arm/mach-at91/Kconfig > @@ -214,12 +214,6 @@ config MACH_SAMA5_DT > > comment "AT91 Feature Selections" > > -config AT91_PROGRAMMABLE_CLOCKS > - bool "Programmable Clocks" > - help > - Select this if you need to program one or more of the PCK0..PCK3 > - programmable clock outputs. > - > config AT91_SLOW_CLOCK > bool "Suspend-to-RAM disables main oscillator" > depends on SUSPEND > diff --git a/arch/arm/mach-at91/clock.c b/arch/arm/mach-at91/clock.c > index 72b257944733..034529d801b2 100644 > --- a/arch/arm/mach-at91/clock.c > +++ b/arch/arm/mach-at91/clock.c > @@ -330,8 +330,6 @@ EXPORT_SYMBOL(clk_get_rate); > > /*------------------------------------------------------------------------*/ > > -#ifdef CONFIG_AT91_PROGRAMMABLE_CLOCKS > - > /* > * For now, only the programmable clocks support reparenting (MCK could > * do this too, with care) or rate changing (the PLLs could do this too, > @@ -459,8 +457,6 @@ static void __init init_programmable_clock(struct clk > *clk) > clk->rate_hz = parent->rate_hz / pmc_prescaler_divider(pckr); > } > > -#endif /* CONFIG_AT91_PROGRAMMABLE_CLOCKS */ > - > /*------------------------------------------------------------------------*/ > > #ifdef CONFIG_DEBUG_FS > @@ -577,12 +573,10 @@ int __init clk_register(struct clk *clk) > clk->parent = &mck; > clk->mode = pmc_sys_mode; > } > -#ifdef CONFIG_AT91_PROGRAMMABLE_CLOCKS > else if (clk_is_programmable(clk)) { > clk->mode = pmc_sys_mode; > init_programmable_clock(clk); > } > -#endif > > at91_clk_add(clk); > > diff --git a/arch/arm/mach-at91/pm.c b/arch/arm/mach-at91/pm.c > index d43b79f56e94..590b52dea9f7 100644 > --- a/arch/arm/mach-at91/pm.c > +++ b/arch/arm/mach-at91/pm.c > @@ -155,9 +155,6 @@ static int at91_pm_verify_clocks(void) > } > } > > - if (!IS_ENABLED(CONFIG_AT91_PROGRAMMABLE_CLOCKS)) > - return 1; > - > /* PCK0..PCK3 must be disabled, or configured to use clk32k */ > for (i = 0; i < 4; i++) { > u32 css; > diff --git a/drivers/clk/at91/Makefile b/drivers/clk/at91/Makefile > index 0e92b716f934..46c1d3d0d66b 100644 > --- a/drivers/clk/at91/Makefile > +++ b/drivers/clk/at91/Makefile > @@ -4,9 +4,8 @@ > > obj-y += pmc.o > obj-y += clk-main.o clk-pll.o clk-plldiv.o clk-master.o > -obj-y += clk-system.o clk-peripheral.o > +obj-y += clk-system.o clk-peripheral.o clk-programmable.o > > -obj-$(CONFIG_AT91_PROGRAMMABLE_CLOCKS) += clk-programmable.o > obj-$(CONFIG_HAVE_AT91_UTMI) += clk-utmi.o > obj-$(CONFIG_HAVE_AT91_USB_CLK) += clk-usb.o > obj-$(CONFIG_HAVE_AT91_SMD) += clk-smd.o > diff --git a/drivers/clk/at91/pmc.c b/drivers/clk/at91/pmc.c > index 7b9db603b936..11fceff8d9f1 100644 > --- a/drivers/clk/at91/pmc.c > +++ b/drivers/clk/at91/pmc.c > @@ -279,7 +279,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata > = { > .data = of_at91sam9x5_clk_periph_setup, > }, > /* Programmable clocks */ > -#if defined(CONFIG_AT91_PROGRAMMABLE_CLOCKS) > { > .compatible = "atmel,at91rm9200-clk-programmable", > .data = of_at91rm9200_clk_prog_setup, > @@ -292,7 +291,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata > = { > .compatible = "atmel,at91sam9x5-clk-programmable", > .data = of_at91sam9x5_clk_prog_setup, > }, > -#endif > /* UTMI clock */ > #if defined(CONFIG_HAVE_AT91_UTMI) > { > diff --git a/drivers/clk/at91/pmc.h b/drivers/clk/at91/pmc.h > index ba8d14233f80..441350983ccb 100644 > --- a/drivers/clk/at91/pmc.h > +++ b/drivers/clk/at91/pmc.h > @@ -85,14 +85,12 @@ extern void __init of_at91rm9200_clk_periph_setup(struct > device_node *np, > extern void __init of_at91sam9x5_clk_periph_setup(struct device_node *np, > struct at91_pmc *pmc); > > -#if defined(CONFIG_AT91_PROGRAMMABLE_CLOCKS) > extern void __init of_at91rm9200_clk_prog_setup(struct device_node *np, > struct at91_pmc *pmc); > extern void __init of_at91sam9g45_clk_prog_setup(struct device_node *np, > struct at91_pmc *pmc); > extern void __init of_at91sam9x5_clk_prog_setup(struct device_node *np, > struct at91_pmc *pmc); > -#endif > > #if defined(CONFIG_HAVE_AT91_UTMI) > extern void __init of_at91sam9x5_clk_utmi_setup(struct device_node *np, > diff --git a/sound/soc/atmel/Kconfig b/sound/soc/atmel/Kconfig > index e48d38a1b95c..e634eb78ed03 100644 > --- a/sound/soc/atmel/Kconfig > +++ b/sound/soc/atmel/Kconfig > @@ -25,7 +25,7 @@ config SND_ATMEL_SOC_SSC > > config SND_AT91_SOC_SAM9G20_WM8731 > tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation > board" > - depends on ARCH_AT91 && ATMEL_SSC && SND_ATMEL_SOC && > AT91_PROGRAMMABLE_CLOCKS > + depends on ARCH_AT91 && ATMEL_SSC && SND_ATMEL_SOC > select SND_ATMEL_SOC_PDC > select SND_ATMEL_SOC_SSC > select SND_SOC_WM8731 > -- > 1.8.2.2 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/