Commit 83301480 authored by Nicolas Ferre's avatar Nicolas Ferre Committed by Kevin Hilman

ARM: at91: remove AT91_PROGRAMMABLE_CLOCKS configuration option

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: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: default avatarKevin Hilman <khilman@linaro.org>
parent b9f10a10
...@@ -22,7 +22,6 @@ CONFIG_SOC_AT91SAM9X5=y ...@@ -22,7 +22,6 @@ CONFIG_SOC_AT91SAM9X5=y
CONFIG_SOC_AT91SAM9N12=y CONFIG_SOC_AT91SAM9N12=y
CONFIG_MACH_AT91RM9200_DT=y CONFIG_MACH_AT91RM9200_DT=y
CONFIG_MACH_AT91SAM9_DT=y CONFIG_MACH_AT91SAM9_DT=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
CONFIG_AT91_TIMER_HZ=128 CONFIG_AT91_TIMER_HZ=128
CONFIG_AEABI=y CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set # CONFIG_OABI_COMPAT is not set
......
...@@ -31,7 +31,6 @@ CONFIG_MACH_YL9200=y ...@@ -31,7 +31,6 @@ CONFIG_MACH_YL9200=y
CONFIG_MACH_CPUAT91=y CONFIG_MACH_CPUAT91=y
CONFIG_MACH_ECO920=y CONFIG_MACH_ECO920=y
CONFIG_MTD_AT91_DATAFLASH_CARD=y CONFIG_MTD_AT91_DATAFLASH_CARD=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
CONFIG_AT91_TIMER_HZ=100 CONFIG_AT91_TIMER_HZ=100
# CONFIG_ARM_THUMB is not set # CONFIG_ARM_THUMB is not set
CONFIG_PCCARD=y CONFIG_PCCARD=y
......
...@@ -28,7 +28,6 @@ CONFIG_MACH_PCONTROL_G20=y ...@@ -28,7 +28,6 @@ CONFIG_MACH_PCONTROL_G20=y
CONFIG_MACH_GSIA18S=y CONFIG_MACH_GSIA18S=y
CONFIG_MACH_SNAPPER_9260=y CONFIG_MACH_SNAPPER_9260=y
CONFIG_MACH_AT91SAM9_DT=y CONFIG_MACH_AT91SAM9_DT=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
CONFIG_AT91_SLOW_CLOCK=y CONFIG_AT91_SLOW_CLOCK=y
# CONFIG_ARM_THUMB is not set # CONFIG_ARM_THUMB is not set
CONFIG_AEABI=y CONFIG_AEABI=y
......
...@@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y ...@@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y
CONFIG_ARCH_AT91SAM9261=y CONFIG_ARCH_AT91SAM9261=y
CONFIG_MACH_AT91SAM9261EK=y CONFIG_MACH_AT91SAM9261EK=y
CONFIG_MACH_AT91SAM9G10EK=y CONFIG_MACH_AT91SAM9G10EK=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
# CONFIG_ARM_THUMB is not set # CONFIG_ARM_THUMB is not set
CONFIG_AEABI=y CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set # CONFIG_OABI_COMPAT is not set
......
...@@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y ...@@ -18,7 +18,6 @@ CONFIG_ARCH_AT91=y
CONFIG_ARCH_AT91SAM9G45=y CONFIG_ARCH_AT91SAM9G45=y
CONFIG_MACH_AT91SAM9M10G45EK=y CONFIG_MACH_AT91SAM9M10G45EK=y
CONFIG_MACH_AT91SAM9_DT=y CONFIG_MACH_AT91SAM9_DT=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
CONFIG_AT91_SLOW_CLOCK=y CONFIG_AT91_SLOW_CLOCK=y
CONFIG_AEABI=y CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set # CONFIG_OABI_COMPAT is not set
......
...@@ -13,7 +13,6 @@ CONFIG_MODULE_UNLOAD=y ...@@ -13,7 +13,6 @@ CONFIG_MODULE_UNLOAD=y
CONFIG_ARCH_AT91=y CONFIG_ARCH_AT91=y
CONFIG_ARCH_AT91SAM9RL=y CONFIG_ARCH_AT91SAM9RL=y
CONFIG_MACH_AT91SAM9RLEK=y CONFIG_MACH_AT91SAM9RLEK=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
# CONFIG_ARM_THUMB is not set # CONFIG_ARM_THUMB is not set
CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_ZBOOT_ROM_BSS=0x0
......
...@@ -20,7 +20,6 @@ CONFIG_ARCH_AT91=y ...@@ -20,7 +20,6 @@ CONFIG_ARCH_AT91=y
CONFIG_SOC_SAM_V7=y CONFIG_SOC_SAM_V7=y
CONFIG_SOC_SAMA5D3=y CONFIG_SOC_SAMA5D3=y
CONFIG_MACH_SAMA5_DT=y CONFIG_MACH_SAMA5_DT=y
CONFIG_AT91_PROGRAMMABLE_CLOCKS=y
CONFIG_AEABI=y CONFIG_AEABI=y
# CONFIG_OABI_COMPAT is not set # CONFIG_OABI_COMPAT is not set
CONFIG_UACCESS_WITH_MEMCPY=y CONFIG_UACCESS_WITH_MEMCPY=y
......
...@@ -214,12 +214,6 @@ config MACH_SAMA5_DT ...@@ -214,12 +214,6 @@ config MACH_SAMA5_DT
comment "AT91 Feature Selections" 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 config AT91_SLOW_CLOCK
bool "Suspend-to-RAM disables main oscillator" bool "Suspend-to-RAM disables main oscillator"
depends on SUSPEND depends on SUSPEND
......
...@@ -330,8 +330,6 @@ EXPORT_SYMBOL(clk_get_rate); ...@@ -330,8 +330,6 @@ EXPORT_SYMBOL(clk_get_rate);
/*------------------------------------------------------------------------*/ /*------------------------------------------------------------------------*/
#ifdef CONFIG_AT91_PROGRAMMABLE_CLOCKS
/* /*
* For now, only the programmable clocks support reparenting (MCK could * For now, only the programmable clocks support reparenting (MCK could
* do this too, with care) or rate changing (the PLLs could do this too, * 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) ...@@ -459,8 +457,6 @@ static void __init init_programmable_clock(struct clk *clk)
clk->rate_hz = parent->rate_hz / pmc_prescaler_divider(pckr); clk->rate_hz = parent->rate_hz / pmc_prescaler_divider(pckr);
} }
#endif /* CONFIG_AT91_PROGRAMMABLE_CLOCKS */
/*------------------------------------------------------------------------*/ /*------------------------------------------------------------------------*/
#ifdef CONFIG_DEBUG_FS #ifdef CONFIG_DEBUG_FS
...@@ -577,12 +573,10 @@ int __init clk_register(struct clk *clk) ...@@ -577,12 +573,10 @@ int __init clk_register(struct clk *clk)
clk->parent = &mck; clk->parent = &mck;
clk->mode = pmc_sys_mode; clk->mode = pmc_sys_mode;
} }
#ifdef CONFIG_AT91_PROGRAMMABLE_CLOCKS
else if (clk_is_programmable(clk)) { else if (clk_is_programmable(clk)) {
clk->mode = pmc_sys_mode; clk->mode = pmc_sys_mode;
init_programmable_clock(clk); init_programmable_clock(clk);
} }
#endif
at91_clk_add(clk); at91_clk_add(clk);
......
...@@ -155,9 +155,6 @@ static int at91_pm_verify_clocks(void) ...@@ -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 */ /* PCK0..PCK3 must be disabled, or configured to use clk32k */
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
u32 css; u32 css;
......
...@@ -4,9 +4,8 @@ ...@@ -4,9 +4,8 @@
obj-y += pmc.o obj-y += pmc.o
obj-y += clk-main.o clk-pll.o clk-plldiv.o clk-master.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_UTMI) += clk-utmi.o
obj-$(CONFIG_HAVE_AT91_USB_CLK) += clk-usb.o obj-$(CONFIG_HAVE_AT91_USB_CLK) += clk-usb.o
obj-$(CONFIG_HAVE_AT91_SMD) += clk-smd.o obj-$(CONFIG_HAVE_AT91_SMD) += clk-smd.o
...@@ -279,7 +279,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata = { ...@@ -279,7 +279,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata = {
.data = of_at91sam9x5_clk_periph_setup, .data = of_at91sam9x5_clk_periph_setup,
}, },
/* Programmable clocks */ /* Programmable clocks */
#if defined(CONFIG_AT91_PROGRAMMABLE_CLOCKS)
{ {
.compatible = "atmel,at91rm9200-clk-programmable", .compatible = "atmel,at91rm9200-clk-programmable",
.data = of_at91rm9200_clk_prog_setup, .data = of_at91rm9200_clk_prog_setup,
...@@ -292,7 +291,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata = { ...@@ -292,7 +291,6 @@ static const struct of_device_id pmc_clk_ids[] __initdata = {
.compatible = "atmel,at91sam9x5-clk-programmable", .compatible = "atmel,at91sam9x5-clk-programmable",
.data = of_at91sam9x5_clk_prog_setup, .data = of_at91sam9x5_clk_prog_setup,
}, },
#endif
/* UTMI clock */ /* UTMI clock */
#if defined(CONFIG_HAVE_AT91_UTMI) #if defined(CONFIG_HAVE_AT91_UTMI)
{ {
......
...@@ -85,14 +85,12 @@ extern void __init of_at91rm9200_clk_periph_setup(struct device_node *np, ...@@ -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, extern void __init of_at91sam9x5_clk_periph_setup(struct device_node *np,
struct at91_pmc *pmc); struct at91_pmc *pmc);
#if defined(CONFIG_AT91_PROGRAMMABLE_CLOCKS)
extern void __init of_at91rm9200_clk_prog_setup(struct device_node *np, extern void __init of_at91rm9200_clk_prog_setup(struct device_node *np,
struct at91_pmc *pmc); struct at91_pmc *pmc);
extern void __init of_at91sam9g45_clk_prog_setup(struct device_node *np, extern void __init of_at91sam9g45_clk_prog_setup(struct device_node *np,
struct at91_pmc *pmc); struct at91_pmc *pmc);
extern void __init of_at91sam9x5_clk_prog_setup(struct device_node *np, extern void __init of_at91sam9x5_clk_prog_setup(struct device_node *np,
struct at91_pmc *pmc); struct at91_pmc *pmc);
#endif
#if defined(CONFIG_HAVE_AT91_UTMI) #if defined(CONFIG_HAVE_AT91_UTMI)
extern void __init of_at91sam9x5_clk_utmi_setup(struct device_node *np, extern void __init of_at91sam9x5_clk_utmi_setup(struct device_node *np,
......
...@@ -25,7 +25,7 @@ config SND_ATMEL_SOC_SSC ...@@ -25,7 +25,7 @@ config SND_ATMEL_SOC_SSC
config SND_AT91_SOC_SAM9G20_WM8731 config SND_AT91_SOC_SAM9G20_WM8731
tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board" 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_PDC
select SND_ATMEL_SOC_SSC select SND_ATMEL_SOC_SSC
select SND_SOC_WM8731 select SND_SOC_WM8731
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment