Skip to contentSkip to conversation

Lost fixes?

PATCH In review Russell King - ARM Linux 7 participants 13 messages Mar 15, 2012 – Mar 26, 2012

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

These fixes are a collection from other people which resolve various issues found with the new kautobuilder. They're now a month old, and as far as I can see, have not been merged into Linus' tree.

What's the status of them, and when are they going to be merged?

Thanks.

 arch/arm/mach-omap2/Makefile                 |    5 +----
 arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c |    2 +-
 arch/arm/mach-omap2/clock.c                  |    2 +-
 arch/arm/mach-omap2/clock.h                  |    2 +-
 arch/arm/mach-omap2/smartreflex.c            |    2 +-
 arch/arm/plat-omap/clock.c                   |    2 +-
 arch/arm/plat-omap/dma.c                     |    2 +-
 arch/arm/plat-omap/include/plat/clock.h      |    4 ++--
 drivers/cpufreq/Kconfig.arm                  |    6 ++++++
 drivers/cpufreq/Makefile                     |    2 +-
 drivers/mfd/da9052-spi.c                     |    4 ++--
 kernel/irq/chip.c                            |    3 +--
 12 files changed, 19 insertions(+), 17 deletions(-)
#1 lore raw

PATCH 2/6 CPUFREQ: Fix exposure of ARM_EXYNOS4210_CPUFREQ

exynos4210-cpufreq.c is not buildable on non-exynos builds, so it's pointless allowing this option to be exposed. Fix this by adding a dependency on ARCH_EXYNOS.

drivers/cpufreq/exynos4210-cpufreq.c:20:29: error: mach/regs-clock.h: No such file or directory drivers/cpufreq/exynos4210-cpufreq.c:21:26: error: mach/cpufreq.h: No such file or directory

---
 drivers/cpufreq/Kconfig.arm |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
drivers/cpufreq/Kconfig.arm +1 -0
index e0664fe..c8bde43 100644
@@ -34,6 +34,7 @@ config ARM_EXYNOS_CPUFREQ
 
 config ARM_EXYNOS4210_CPUFREQ
 	bool "Samsung EXYNOS4210"
+	depends on ARCH_EXYNOS
 	help
 	  This adds the CPUFreq driver for Samsung EXYNOS4210
 	  SoC (S5PV310 or S5PC210).
Signature · 1 line
1.7.4.4
#2 lore raw

PATCH 4/6 ARM: OMAP: fix missing __devexit_p() annotations

In reply to Russell King - ARM Linux

Missing __devexit_p() annotations in driver structures for remove functions marked with __devexit is waiting for build errors to happen, such as:

omap_system_dma_remove' referenced in section .data' of arch/arm/plat-omap/bui lt-in.o: defined in discarded section `.devexit.text' of arch/arm/plat-omap/buil t-in.o

Add the necessary annotation, and as a result of audit, fix others which are also missing in arch/arm/*omap*.

---
 arch/arm/mach-omap2/smartreflex.c |    2 +-
 arch/arm/plat-omap/dma.c          |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
arch/arm/mach-omap2/smartreflex.c +1 -1
index 7e755bb..47c77a1 100644
@@ -1012,7 +1012,7 @@ static int __devexit omap_sr_remove(struct platform_device *pdev)
 }
 
 static struct platform_driver smartreflex_driver = {
-	.remove         = omap_sr_remove,
+	.remove         = __devexit_p(omap_sr_remove),
 	.driver		= {
 		.name	= "smartreflex",
 	},
arch/arm/plat-omap/dma.c +1 -1
index 002fb4d..cb856fe 100644
@@ -2125,7 +2125,7 @@ static int __devexit omap_system_dma_remove(struct platform_device *pdev)
 
 static struct platform_driver omap_system_dma_driver = {
 	.probe		= omap_system_dma_probe,
-	.remove		= omap_system_dma_remove,
+	.remove		= __devexit_p(omap_system_dma_remove),
 	.driver		= {
 		.name	= "omap_dma_system"
 	},
Signature · 1 line
1.7.4.4
#3 lore raw

PATCH 4/6 ARM: OMAP: fix missing __devexit_p() annotations

Russell,

Quoted 22 lines · Russell King

Missing __devexit_p() annotations in driver structures for remove functions marked with __devexit is waiting for build errors to happen, such as:

omap_system_dma_remove' referenced in section .data' of arch/arm/plat-omap/bui lt-in.o: defined in discarded section `.devexit.text' of arch/arm/plat-omap/buil t-in.o

Add the necessary annotation, and as a result of audit, fix others which are also missing in arch/arm/*omap*.

---
?arch/arm/mach-omap2/smartreflex.c | ? ?2 +-
?arch/arm/plat-omap/dma.c ? ? ? ? ?| ? ?2 +-
?2 files changed, 2 insertions(+), 2 deletions(-)

arch/arm/mach-omap2/smartreflex.c +0 -0
index 7e755bb..47c77a1 100644

arch/arm/mach-omap2/smartreflex.c static int __devexit omap_sr_remove(struct platform_device *pdev) · line 1018

Quoted 8 lines
arch/arm/mach-omap2/smartreflex.c +1 -1
@@ -1012,7 +1012,7 @@ static int __devexit omap_sr_remove(struct platform_device *pdev)
 ?}
 
 ?static struct platform_driver smartreflex_driver = {
- ? ? ? .remove ? ? ? ? = omap_sr_remove,
+ ? ? ? .remove ? ? ? ? = __devexit_p(omap_sr_remove),
 ? ? ? ?.driver ? ? ? ? = {
 ? ? ? ? ? ? ? ?.name ? = "smartreflex",
 ? ? ? ?},

Tony already has this change in his master branch, commit 149f1d5c8d2fd6879cdf93ca70f1cb745e698a1e ('ARM: OMAP2+: Fix devexit for smartreflex when CONFIG_HOTPLUG is not set').

Jean

maintainer
#4 lore raw

PATCH 4/6 ARM: OMAP: fix missing __devexit_p() annotations

Quoted 28 lines · Jean Pihet

Russell,

Quoted 24 lines · Russell King

Missing __devexit_p() annotations in driver structures for remove functions marked with __devexit is waiting for build errors to happen, such as:

omap_system_dma_remove' referenced in section .data' of arch/arm/plat-omap/bui lt-in.o: defined in discarded section `.devexit.text' of arch/arm/plat-omap/buil t-in.o

Add the necessary annotation, and as a result of audit, fix others which are also missing in arch/arm/*omap*.

---
?arch/arm/mach-omap2/smartreflex.c | ? ?2 +-
?arch/arm/plat-omap/dma.c ? ? ? ? ?| ? ?2 +-
?2 files changed, 2 insertions(+), 2 deletions(-)

arch/arm/mach-omap2/smartreflex.c +0 -0
index 7e755bb..47c77a1 100644
@@ -1012,7 +1012,7 @@ static int __devexit omap_sr_remove(struct platform_device *pdev)
 ?}
 
Quoted 9 lines

arch/arm/mach-omap2/smartreflex.c static int __devexit omap_sr_remove(struct platform_device *pdev) · line 1018

Quoted 6 lines
arch/arm/mach-omap2/smartreflex.c +1 -1
 ?static struct platform_driver smartreflex_driver = {
- ? ? ? .remove ? ? ? ? = omap_sr_remove,
+ ? ? ? .remove ? ? ? ? = __devexit_p(omap_sr_remove),
 ? ? ? ?.driver ? ? ? ? = {
 ? ? ? ? ? ? ? ?.name ? = "smartreflex",
 ? ? ? ?},

Tony already has this change in his master branch, commit 149f1d5c8d2fd6879cdf93ca70f1cb745e698a1e ('ARM: OMAP2+: Fix devexit for smartreflex when CONFIG_HOTPLUG is not set').

Also same commit in arm-soc/for-next.

Regards,

Tony

maintainer
#5 lore raw

PATCH 5/6 ARM: OMAP2+: I2C: always compile I2C reset code, even if I2C driver is not built

In reply to Russell King - ARM Linux

During kernel init, we reset all IP blocks on the OMAP that we can, even if there is no driver compiled for that IP block. Unlike most IP blocks, the I2C block requires some extra programming for this to work. This reset code is incorrectly omitted when the I2C driver is deselected. In this circumstance, the build breaks. Fix by compiling the I2C reset code unconditionally.

Problem reported by Russell King <[email protected]>.

---
 arch/arm/mach-omap2/Makefile |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)
arch/arm/mach-omap2/Makefile +1 -4
index bd76394..56a6e98 100644
@@ -4,7 +4,7 @@
 
 # Common support
 obj-y := id.o io.o control.o mux.o devices.o serial.o gpmc.o timer.o pm.o \
-	 common.o gpio.o dma.o wd_timer.o display.o
+	 common.o gpio.o dma.o wd_timer.o display.o i2c.o
 
 omap-2-3-common				= irq.o sdrc.o
 hwmod-common				= omap_hwmod.o \
@@ -182,9 +182,6 @@ obj-$(CONFIG_OMAP_IOMMU)		+= iommu2.o
 iommu-$(CONFIG_OMAP_IOMMU)		:= omap-iommu.o
 obj-y					+= $(iommu-m) $(iommu-y)
 
-i2c-omap-$(CONFIG_I2C_OMAP)		:= i2c.o
-obj-y					+= $(i2c-omap-m) $(i2c-omap-y)
-
 ifneq ($(CONFIG_TIDSPBRIDGE),)
 obj-y					+= dsp.o
 endif
Signature · 1 line
1.7.4.4
maintainer
#6 lore raw

PATCH 5/6 ARM: OMAP2+: I2C: always compile I2C reset code, even if I2C driver is not built

Quoted 6 lines · Paul Walmsley

During kernel init, we reset all IP blocks on the OMAP that we can, even if there is no driver compiled for that IP block. Unlike most IP blocks, the I2C block requires some extra programming for this to work. This reset code is incorrectly omitted when the I2C driver is deselected. In this circumstance, the build breaks. Fix by compiling the I2C reset code unconditionally.

This one is commit ed8dfd22ea2533a1b169881c3de94be8daa0e297 in arm-soc/for-next.

Regards,

Tony

#7 lore raw

PATCH 6/6 ARM: OMAP: fix cpufreq build

In reply to Russell King - ARM Linux

OMAPs cpufreq requires the frequency table support, but nothing ensures that this is selected. This can result in configurations which fail to build:

drivers/built-in.o:(.data+0x5238): undefined reference to cpufreq_freq_attr_scaling_available_freqs' drivers/cpufreq/omap-cpufreq.c:88: undefined reference to cpufreq_frequency_table_target' drivers/cpufreq/omap-cpufreq.c:60: undefined reference to cpufreq_frequency_table_verify' drivers/cpufreq/omap-cpufreq.c:186: undefined reference to cpufreq_frequency_table_cpuinfo' drivers/cpufreq/omap-cpufreq.c:190: undefined reference to `cpufreq_frequency_table_get_attr'

Fix this by introducing a new configuration variable and having that select CPU_FREQ_TABLE.

---
 arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c |    2 +-
 arch/arm/mach-omap2/clock.c                  |    2 +-
 arch/arm/mach-omap2/clock.h                  |    2 +-
 arch/arm/plat-omap/clock.c                   |    2 +-
 arch/arm/plat-omap/include/plat/clock.h      |    4 ++--
 drivers/cpufreq/Kconfig.arm                  |    5 +++++
 drivers/cpufreq/Makefile                     |    2 +-
 7 files changed, 12 insertions(+), 7 deletions(-)
arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c +1 -1
index 39f9d5a..4705b50 100644
@@ -165,7 +165,7 @@ int omap2_select_table_rate(struct clk *clk, unsigned long rate)
 	return 0;
 }
 
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 /*
  * Walk PRCM rate table and fillout cpufreq freq_table
  * XXX This should be replaced by an OPP layer in the near future
arch/arm/mach-omap2/clock.c +1 -1
index f57ed5b..450feb0 100644
@@ -536,7 +536,7 @@ struct clk_functions omap2_clk_functions = {
 	.clk_set_rate		= omap2_clk_set_rate,
 	.clk_set_parent		= omap2_clk_set_parent,
 	.clk_disable_unused	= omap2_clk_disable_unused,
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 	/* These will be removed when the OPP code is integrated */
 	.clk_init_cpufreq_table	= omap2_clk_init_cpufreq_table,
 	.clk_exit_cpufreq_table	= omap2_clk_exit_cpufreq_table,
arch/arm/mach-omap2/clock.h +1 -1
index b8c2a68..f331cfc 100644
@@ -146,7 +146,7 @@ extern const struct clksel_rate gpt_sys_rates[];
 extern const struct clksel_rate gfx_l3_rates[];
 extern const struct clksel_rate dsp_ick_rates[];
 
-#if defined(CONFIG_ARCH_OMAP2) && defined(CONFIG_CPU_FREQ)
+#if defined(CONFIG_ARCH_OMAP2) && defined(CONFIG_ARM_OMAP2PLUS_CPUFREQ)
 extern void omap2_clk_init_cpufreq_table(struct cpufreq_frequency_table **table);
 extern void omap2_clk_exit_cpufreq_table(struct cpufreq_frequency_table **table);
 #else
arch/arm/plat-omap/clock.c +1 -1
index 567e4b5..2e2efb6 100644
@@ -399,7 +399,7 @@ struct clk dummy_ck = {
 	.ops	= &clkops_null,
 };
 
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 void clk_init_cpufreq_table(struct cpufreq_frequency_table **table)
 {
 	unsigned long flags;
arch/arm/plat-omap/include/plat/clock.h +2 -2
index 240a7b9..879ba27 100644
@@ -283,7 +283,7 @@ struct clk_functions {
 	void		(*clk_allow_idle)(struct clk *clk);
 	void		(*clk_deny_idle)(struct clk *clk);
 	void		(*clk_disable_unused)(struct clk *clk);
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 	void		(*clk_init_cpufreq_table)(struct cpufreq_frequency_table **);
 	void		(*clk_exit_cpufreq_table)(struct cpufreq_frequency_table **);
 #endif
@@ -301,7 +301,7 @@ extern void recalculate_root_clocks(void);
 extern unsigned long followparent_recalc(struct clk *clk);
 extern void clk_enable_init_clocks(void);
 unsigned long omap_fixed_divisor_recalc(struct clk *clk);
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 extern void clk_init_cpufreq_table(struct cpufreq_frequency_table **table);
 extern void clk_exit_cpufreq_table(struct cpufreq_frequency_table **table);
 #endif
drivers/cpufreq/Kconfig.arm +5 -0
index c8bde43..74e8b55 100644
@@ -2,6 +2,11 @@
 # ARM CPU Frequency scaling drivers
 #
 
+config ARM_OMAP2PLUS_CPUFREQ
+	bool
+	depends on ARCH_OMAP2PLUS
+	select CPU_FREQ_TABLE
+
 config ARM_S3C64XX_CPUFREQ
 	bool "Samsung S3C64XX"
 	depends on CPU_S3C6410
drivers/cpufreq/Makefile +1 -1
index ac000fa..fda94c7 100644
@@ -44,7 +44,7 @@ obj-$(CONFIG_ARM_S3C64XX_CPUFREQ)	+= s3c64xx-cpufreq.o
 obj-$(CONFIG_ARM_S5PV210_CPUFREQ)	+= s5pv210-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS_CPUFREQ)	+= exynos-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS4210_CPUFREQ)	+= exynos4210-cpufreq.o
-obj-$(CONFIG_ARCH_OMAP2PLUS)            += omap-cpufreq.o
+obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ)     += omap-cpufreq.o
 
 ##################################################################################
 # PowerPC platform drivers
Signature · 1 line
1.7.4.4
#8 lore raw

Re: [PATCH 6/6] ARM: OMAP: fix cpufreq build

Quoted 13 lines · Russell King

OMAPs cpufreq requires the frequency table support, but nothing ensures that this is selected. This can result in configurations which fail to build:

drivers/built-in.o:(.data+0x5238): undefined reference to cpufreq_freq_attr_scaling_available_freqs' drivers/cpufreq/omap-cpufreq.c:88: undefined reference to cpufreq_frequency_table_target' drivers/cpufreq/omap-cpufreq.c:60: undefined reference to cpufreq_frequency_table_verify' drivers/cpufreq/omap-cpufreq.c:186: undefined reference to cpufreq_frequency_table_cpuinfo' drivers/cpufreq/omap-cpufreq.c:190: undefined reference to `cpufreq_frequency_table_get_attr'

Fix this by introducing a new configuration variable and having that select CPU_FREQ_TABLE.

Quoted 7 lines
---
 arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c |    2 +-
 arch/arm/mach-omap2/clock.c                  |    2 +-
 arch/arm/mach-omap2/clock.h                  |    2 +-
 arch/arm/plat-omap/clock.c                   |    2 +-
 arch/arm/plat-omap/include/plat/clock.h      |    4 ++--

The arch/arm/* stuff is all code that has been removed, but the pull request didn't make it in time for v3.4:

http://www.spinics.net/lists/arm-kernel/msg164545.html

Initially, this was intended as a cleanup because it was just dead code removal, but since we missed v3.4, maybe we should pull out "ARM: OMAP: clock: cleanup CPUfreq leftovers" and submit for 3.4-rc.

Quoted 2 lines
 drivers/cpufreq/Kconfig.arm                  |    5 +++++
 drivers/cpufreq/Makefile                     |    2 +-

This change was included in my CPUfreq pull request to Dave Jones. He has pulled it into his fixes branch[1], but I don't see it upstream. I've just sent a mail to Dave asking about it.

Kevin

[1] git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq.git fixes

maintainer
#9 lore raw

Re: [PATCH 6/6] ARM: OMAP: fix cpufreq build

Quoted 3 lines · Kevin Hilman

Initially, this was intended as a cleanup because it was just dead code removal, but since we missed v3.4, maybe we should pull out "ARM: OMAP: clock: cleanup CPUfreq leftovers" and submit for 3.4-rc.

If it doesn't go upstream for the 3.4 merge window, I'll submit it for 3.4-rc.

- Paul

#10 lore raw

Re: [PATCH 6/6] ARM: OMAP: fix cpufreq build

In reply to Russell King

Kevin,

I only just found this via the arm-soc tree, while trying to merge the kautobuildv2 build tree.

You changed my patch and broke it:

config ARM_OMAP2PLUS_CPUFREQ
bool "TI OMAP2+"
default ARCH_OMAP2PLUS
select CPU_FREQ_TABLE

So now, OMAP2 CPUFREQ is selectable on ANYTHING but it will only build successfully on OMAP.

If you're going to change someone elses patch, do them the favour of re-posting it back to them for comment *BEFORE* you commit it and send it upstream, rather than making it look like they're a total tosser for authoring a patch which fucks up other architecture builds.

Many thanks for that.

Quoted 135 lines · Russell King

OMAPs cpufreq requires the frequency table support, but nothing ensures that this is selected. This can result in configurations which fail to build:

drivers/built-in.o:(.data+0x5238): undefined reference to cpufreq_freq_attr_scaling_available_freqs' drivers/cpufreq/omap-cpufreq.c:88: undefined reference to cpufreq_frequency_table_target' drivers/cpufreq/omap-cpufreq.c:60: undefined reference to cpufreq_frequency_table_verify' drivers/cpufreq/omap-cpufreq.c:186: undefined reference to cpufreq_frequency_table_cpuinfo' drivers/cpufreq/omap-cpufreq.c:190: undefined reference to `cpufreq_frequency_table_get_attr'

Fix this by introducing a new configuration variable and having that select CPU_FREQ_TABLE.

---
 arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c |    2 +-
 arch/arm/mach-omap2/clock.c                  |    2 +-
 arch/arm/mach-omap2/clock.h                  |    2 +-
 arch/arm/plat-omap/clock.c                   |    2 +-
 arch/arm/plat-omap/include/plat/clock.h      |    4 ++--
 drivers/cpufreq/Kconfig.arm                  |    5 +++++
 drivers/cpufreq/Makefile                     |    2 +-
 7 files changed, 12 insertions(+), 7 deletions(-)
arch/arm/mach-omap2/clkt2xxx_virt_prcm_set.c +1 -1
index 39f9d5a..4705b50 100644
@@ -165,7 +165,7 @@ int omap2_select_table_rate(struct clk *clk, unsigned long rate)
 	return 0;
 }
 
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 /*
  * Walk PRCM rate table and fillout cpufreq freq_table
  * XXX This should be replaced by an OPP layer in the near future
arch/arm/mach-omap2/clock.c +1 -1
index f57ed5b..450feb0 100644
@@ -536,7 +536,7 @@ struct clk_functions omap2_clk_functions = {
 	.clk_set_rate		= omap2_clk_set_rate,
 	.clk_set_parent		= omap2_clk_set_parent,
 	.clk_disable_unused	= omap2_clk_disable_unused,
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 	/* These will be removed when the OPP code is integrated */
 	.clk_init_cpufreq_table	= omap2_clk_init_cpufreq_table,
 	.clk_exit_cpufreq_table	= omap2_clk_exit_cpufreq_table,
arch/arm/mach-omap2/clock.h +1 -1
index b8c2a68..f331cfc 100644
@@ -146,7 +146,7 @@ extern const struct clksel_rate gpt_sys_rates[];
 extern const struct clksel_rate gfx_l3_rates[];
 extern const struct clksel_rate dsp_ick_rates[];
 
-#if defined(CONFIG_ARCH_OMAP2) && defined(CONFIG_CPU_FREQ)
+#if defined(CONFIG_ARCH_OMAP2) && defined(CONFIG_ARM_OMAP2PLUS_CPUFREQ)
 extern void omap2_clk_init_cpufreq_table(struct cpufreq_frequency_table **table);
 extern void omap2_clk_exit_cpufreq_table(struct cpufreq_frequency_table **table);
 #else
arch/arm/plat-omap/clock.c +1 -1
index 567e4b5..2e2efb6 100644
@@ -399,7 +399,7 @@ struct clk dummy_ck = {
 	.ops	= &clkops_null,
 };
 
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 void clk_init_cpufreq_table(struct cpufreq_frequency_table **table)
 {
 	unsigned long flags;
arch/arm/plat-omap/include/plat/clock.h +2 -2
index 240a7b9..879ba27 100644
@@ -283,7 +283,7 @@ struct clk_functions {
 	void		(*clk_allow_idle)(struct clk *clk);
 	void		(*clk_deny_idle)(struct clk *clk);
 	void		(*clk_disable_unused)(struct clk *clk);
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 	void		(*clk_init_cpufreq_table)(struct cpufreq_frequency_table **);
 	void		(*clk_exit_cpufreq_table)(struct cpufreq_frequency_table **);
 #endif
@@ -301,7 +301,7 @@ extern void recalculate_root_clocks(void);
 extern unsigned long followparent_recalc(struct clk *clk);
 extern void clk_enable_init_clocks(void);
 unsigned long omap_fixed_divisor_recalc(struct clk *clk);
-#ifdef CONFIG_CPU_FREQ
+#ifdef CONFIG_ARM_OMAP2PLUS_CPUFREQ
 extern void clk_init_cpufreq_table(struct cpufreq_frequency_table **table);
 extern void clk_exit_cpufreq_table(struct cpufreq_frequency_table **table);
 #endif
drivers/cpufreq/Kconfig.arm +5 -0
index c8bde43..74e8b55 100644
@@ -2,6 +2,11 @@
 # ARM CPU Frequency scaling drivers
 #
 
+config ARM_OMAP2PLUS_CPUFREQ
+	bool
+	depends on ARCH_OMAP2PLUS
+	select CPU_FREQ_TABLE
+
 config ARM_S3C64XX_CPUFREQ
 	bool "Samsung S3C64XX"
 	depends on CPU_S3C6410
drivers/cpufreq/Makefile +1 -1
index ac000fa..fda94c7 100644
@@ -44,7 +44,7 @@ obj-$(CONFIG_ARM_S3C64XX_CPUFREQ)	+= s3c64xx-cpufreq.o
 obj-$(CONFIG_ARM_S5PV210_CPUFREQ)	+= s5pv210-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS_CPUFREQ)	+= exynos-cpufreq.o
 obj-$(CONFIG_ARM_EXYNOS4210_CPUFREQ)	+= exynos4210-cpufreq.o
-obj-$(CONFIG_ARCH_OMAP2PLUS)            += omap-cpufreq.o
+obj-$(CONFIG_ARM_OMAP2PLUS_CPUFREQ)     += omap-cpufreq.o
 
 ##################################################################################
 # PowerPC platform drivers
Signature · 7 lines
1.7.4.4


_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
#11 lore raw

Re: [PATCH 6/6] ARM: OMAP: fix cpufreq build

Quoted 7 lines · Russell King - ARM Linux

Kevin,

I only just found this via the arm-soc tree, while trying to merge the kautobuildv2 build tree.

You changed my patch and broke it:

Quoted 7 lines

config ARM_OMAP2PLUS_CPUFREQ
bool "TI OMAP2+"
default ARCH_OMAP2PLUS
select CPU_FREQ_TABLE

So now, OMAP2 CPUFREQ is selectable on ANYTHING but it will only build successfully on OMAP.

Yes, I screwed it up.

I wanted it to be selectable, but majorly screwed it up and it is certainly not randconfig friendly.

This was also pointed out by Grazvydas soon after merging[1], and I was expecting a patch from him to remedy that, but I will take care of it and submit a patch for v3.4-rc right away.

Quoted 3 lines

If you're going to change someone elses patch, do them the favour of re-posting it back to them for comment *BEFORE* you commit it and send it upstream,

I did. On Feb 16th, I posted my modified version with you and linux-arm-kernel Cc'd:

http://lists.infradead.org/pipermail/linux-arm-kernel/2012-February/085053.html

and then I didn't send the pull request for this for another 3 weeks.

Quoted 2 lines

rather than making it look like they're a total tosser for authoring a patch which fucks up other architecture builds.

/me has cache miss on tosser in American jargon cache /me looks up in urban dictionary.

Quoted 1 line

Many thanks for that.

Many apologies.

Kevin

[1] http://marc.info/?l=linux-omap&m=133174677506294&w=2

#12 lore raw
In reply to Russell King - ARM Linux
Quoted 5 lines · Russell King - ARM Linux

These fixes are a collection from other people which resolve various issues found with the new kautobuilder. They're now a month old, and as far as I can see, have not been merged into Linus' tree.

What's the status of them, and when are they going to be merged?

For the drivers/mfd/da9052-spi.c part: A patch from Axel Lin has been living in my for-next branch for a while now. It's a section mismatch warning fix, so not something I consider worth sending to Linus after the merge window is closed. So it's queued for the next one.

Cheers,
Samuel.

Signature · 2 lines
Intel Open Source Technology Centre
http://oss.intel.com/