public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* ARM: s3c2410: remove dead mach-s3c2410 directory
@ 2012-06-25 10:11 Paul Bolle
  2012-06-25 16:06 ` Heiko Stübner
  0 siblings, 1 reply; 3+ messages in thread
From: Paul Bolle @ 2012-06-25 10:11 UTC (permalink / raw)
  To: Ben Dooks, Kukjin Kim, Russell King
  Cc: linux-arm-kernel, linux-samsung-soc, linux-kernel

Commit 85fd6d63bf2927b9da7ab1b0d46723bfdb13808c ("ARM: S3C2410: move
mach-s3c2410/* into mach-s3c24xx/") orphaned
arch/arm/mach-s3c2410/Kconfig: currently no other Kconfig file sources
that file. This means that the Kconfig symbols S3C2410_CPUFREQ and
S3C2410_PLLTABLE will never be set, which in turns means that the macros
CONFIG_S3C2410_CPUFREQ and CONFIG_S3C2410_PLLTABLE will never be
defined.

All this makes that all four files in the mach-directory (Kconfig,
Makefile, cpu-freq.c, and pll.c) are effectively dead files since v3.4:
none of them can lead to any code in someones kernel. This directory can
safely be removed.

Also delete two lines from mach-s3c24xx/Kconfig that now also become
meaningless.

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
---
0) Tested only with a number of git commands.

1) Previously discussed in https://lkml.org/lkml/2012/4/22/26 .

 arch/arm/mach-s3c2410/Kconfig    |   20 -----
 arch/arm/mach-s3c2410/Makefile   |   14 ---
 arch/arm/mach-s3c2410/cpu-freq.c |  163 --------------------------------------
 arch/arm/mach-s3c2410/pll.c      |   99 -----------------------
 arch/arm/mach-s3c24xx/Kconfig    |    2 -
 5 files changed, 0 insertions(+), 298 deletions(-)
 delete mode 100644 arch/arm/mach-s3c2410/Kconfig
 delete mode 100644 arch/arm/mach-s3c2410/Makefile
 delete mode 100644 arch/arm/mach-s3c2410/cpu-freq.c
 delete mode 100644 arch/arm/mach-s3c2410/pll.c

diff --git a/arch/arm/mach-s3c2410/Kconfig b/arch/arm/mach-s3c2410/Kconfig
deleted file mode 100644
index 68d89cb..0000000
--- a/arch/arm/mach-s3c2410/Kconfig
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 2007 Simtec Electronics
-#
-# Licensed under GPLv2
-
-# cpu frequency scaling support
-
-config S3C2410_CPUFREQ
-	bool
-	depends on CPU_FREQ_S3C24XX && CPU_S3C2410
-	select S3C2410_CPUFREQ_UTILS
-	help
-	  CPU Frequency scaling support for S3C2410
-
-config S3C2410_PLLTABLE
-	bool
-	depends on S3C2410_CPUFREQ && CPU_FREQ_S3C24XX_PLL
-	default y
-	help
-	  Select the PLL table for the S3C2410
-
diff --git a/arch/arm/mach-s3c2410/Makefile b/arch/arm/mach-s3c2410/Makefile
deleted file mode 100644
index 6b9a316..0000000
--- a/arch/arm/mach-s3c2410/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-# arch/arm/mach-s3c2410/Makefile
-#
-# Copyright 2007 Simtec Electronics
-#
-# Licensed under GPLv2
-
-obj-y				:=
-obj-m				:=
-obj-n				:=
-obj-				:=
-
-obj-$(CONFIG_S3C2410_CPUFREQ)	+= cpu-freq.o
-obj-$(CONFIG_S3C2410_PLLTABLE)	+= pll.o
-
diff --git a/arch/arm/mach-s3c2410/cpu-freq.c b/arch/arm/mach-s3c2410/cpu-freq.c
deleted file mode 100644
index 5404535..0000000
--- a/arch/arm/mach-s3c2410/cpu-freq.c
+++ /dev/null
@@ -1,163 +0,0 @@
-/* linux/arch/arm/mach-s3c2410/cpu-freq.c
- *
- * Copyright (c) 2006-2008 Simtec Electronics
- *	http://armlinux.simtec.co.uk/
- *	Ben Dooks <ben@simtec.co.uk>
- *
- * S3C2410 CPU Frequency scaling
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
-*/
-
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/interrupt.h>
-#include <linux/ioport.h>
-#include <linux/cpufreq.h>
-#include <linux/device.h>
-#include <linux/clk.h>
-#include <linux/err.h>
-#include <linux/io.h>
-
-#include <asm/mach/arch.h>
-#include <asm/mach/map.h>
-
-#include <mach/regs-clock.h>
-
-#include <plat/cpu.h>
-#include <plat/clock.h>
-#include <plat/cpu-freq-core.h>
-
-/* Note, 2410A has an extra mode for 1:4:4 ratio, bit 2 of CLKDIV */
-
-static void s3c2410_cpufreq_setdivs(struct s3c_cpufreq_config *cfg)
-{
-	u32 clkdiv = 0;
-
-	if (cfg->divs.h_divisor == 2)
-		clkdiv |= S3C2410_CLKDIVN_HDIVN;
-
-	if (cfg->divs.p_divisor != cfg->divs.h_divisor)
-		clkdiv |= S3C2410_CLKDIVN_PDIVN;
-
-	__raw_writel(clkdiv, S3C2410_CLKDIVN);
-}
-
-static int s3c2410_cpufreq_calcdivs(struct s3c_cpufreq_config *cfg)
-{
-	unsigned long hclk, fclk, pclk;
-	unsigned int hdiv, pdiv;
-	unsigned long hclk_max;
-
-	fclk = cfg->freq.fclk;
-	hclk_max = cfg->max.hclk;
-
-	cfg->freq.armclk = fclk;
-
-	s3c_freq_dbg("%s: fclk is %lu, max hclk %lu\n",
-		      __func__, fclk, hclk_max);
-
-	hdiv = (fclk > cfg->max.hclk) ? 2 : 1;
-	hclk = fclk / hdiv;
-
-	if (hclk > cfg->max.hclk) {
-		s3c_freq_dbg("%s: hclk too big\n", __func__);
-		return -EINVAL;
-	}
-
-	pdiv = (hclk > cfg->max.pclk) ? 2 : 1;
-	pclk = hclk / pdiv;
-
-	if (pclk > cfg->max.pclk) {
-		s3c_freq_dbg("%s: pclk too big\n", __func__);
-		return -EINVAL;
-	}
-
-	pdiv *= hdiv;
-
-	/* record the result */
-	cfg->divs.p_divisor = pdiv;
-	cfg->divs.h_divisor = hdiv;
-
-	return 0      ;
-}
-
-static struct s3c_cpufreq_info s3c2410_cpufreq_info = {
-	.max		= {
-		.fclk	= 200000000,
-		.hclk	= 100000000,
-		.pclk	=  50000000,
-	},
-
-	/* transition latency is about 5ms worst-case, so
-	 * set 10ms to be sure */
-	.latency	= 10000000,
-
-	.locktime_m	= 150,
-	.locktime_u	= 150,
-	.locktime_bits	= 12,
-
-	.need_pll	= 1,
-
-	.name		= "s3c2410",
-	.calc_iotiming	= s3c2410_iotiming_calc,
-	.set_iotiming	= s3c2410_iotiming_set,
-	.get_iotiming	= s3c2410_iotiming_get,
-	.resume_clocks	= s3c2410_setup_clocks,
-
-	.set_fvco	= s3c2410_set_fvco,
-	.set_refresh	= s3c2410_cpufreq_setrefresh,
-	.set_divs	= s3c2410_cpufreq_setdivs,
-	.calc_divs	= s3c2410_cpufreq_calcdivs,
-
-	.debug_io_show	= s3c_cpufreq_debugfs_call(s3c2410_iotiming_debugfs),
-};
-
-static int s3c2410_cpufreq_add(struct device *dev,
-			       struct subsys_interface *sif)
-{
-	return s3c_cpufreq_register(&s3c2410_cpufreq_info);
-}
-
-static struct subsys_interface s3c2410_cpufreq_interface = {
-	.name		= "s3c2410_cpufreq",
-	.subsys		= &s3c2410_subsys,
-	.add_dev	= s3c2410_cpufreq_add,
-};
-
-static int __init s3c2410_cpufreq_init(void)
-{
-	return subsys_interface_register(&s3c2410_cpufreq_interface);
-}
-
-arch_initcall(s3c2410_cpufreq_init);
-
-static int s3c2410a_cpufreq_add(struct device *dev,
-				struct subsys_interface *sif)
-{
-	/* alter the maximum freq settings for S3C2410A. If a board knows
-	 * it only has a maximum of 200, then it should register its own
-	 * limits. */
-
-	s3c2410_cpufreq_info.max.fclk = 266000000;
-	s3c2410_cpufreq_info.max.hclk = 133000000;
-	s3c2410_cpufreq_info.max.pclk =  66500000;
-	s3c2410_cpufreq_info.name = "s3c2410a";
-
-	return s3c2410_cpufreq_add(dev, sif);
-}
-
-static struct subsys_interface s3c2410a_cpufreq_interface = {
-	.name		= "s3c2410a_cpufreq",
-	.subsys		= &s3c2410a_subsys,
-	.add_dev	= s3c2410a_cpufreq_add,
-};
-
-static int __init s3c2410a_cpufreq_init(void)
-{
-	return subsys_interface_register(&s3c2410a_cpufreq_interface);
-}
-
-arch_initcall(s3c2410a_cpufreq_init);
diff --git a/arch/arm/mach-s3c2410/pll.c b/arch/arm/mach-s3c2410/pll.c
deleted file mode 100644
index e0b3b34..0000000
--- a/arch/arm/mach-s3c2410/pll.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/* arch/arm/mach-s3c2410/pll.c
- *
- * Copyright (c) 2006-2007 Simtec Electronics
- *	http://armlinux.simtec.co.uk/
- *	Ben Dooks <ben@simtec.co.uk>
- *	Vincent Sanders <vince@arm.linux.org.uk>
- *
- * S3C2410 CPU PLL tables
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-*/
-
-#include <linux/types.h>
-#include <linux/kernel.h>
-#include <linux/module.h>
-#include <linux/device.h>
-#include <linux/list.h>
-#include <linux/clk.h>
-#include <linux/err.h>
-
-#include <plat/cpu.h>
-#include <plat/cpu-freq-core.h>
-
-static struct cpufreq_frequency_table pll_vals_12MHz[] = {
-    { .frequency = 34000000,  .index = PLLVAL(82, 2, 3),   },
-    { .frequency = 45000000,  .index = PLLVAL(82, 1, 3),   },
-    { .frequency = 51000000,  .index = PLLVAL(161, 3, 3),  },
-    { .frequency = 48000000,  .index = PLLVAL(120, 2, 3),  },
-    { .frequency = 56000000,  .index = PLLVAL(142, 2, 3),  },
-    { .frequency = 68000000,  .index = PLLVAL(82, 2, 2),   },
-    { .frequency = 79000000,  .index = PLLVAL(71, 1, 2),   },
-    { .frequency = 85000000,  .index = PLLVAL(105, 2, 2),  },
-    { .frequency = 90000000,  .index = PLLVAL(112, 2, 2),  },
-    { .frequency = 101000000, .index = PLLVAL(127, 2, 2),  },
-    { .frequency = 113000000, .index = PLLVAL(105, 1, 2),  },
-    { .frequency = 118000000, .index = PLLVAL(150, 2, 2),  },
-    { .frequency = 124000000, .index = PLLVAL(116, 1, 2),  },
-    { .frequency = 135000000, .index = PLLVAL(82, 2, 1),   },
-    { .frequency = 147000000, .index = PLLVAL(90, 2, 1),   },
-    { .frequency = 152000000, .index = PLLVAL(68, 1, 1),   },
-    { .frequency = 158000000, .index = PLLVAL(71, 1, 1),   },
-    { .frequency = 170000000, .index = PLLVAL(77, 1, 1),   },
-    { .frequency = 180000000, .index = PLLVAL(82, 1, 1),   },
-    { .frequency = 186000000, .index = PLLVAL(85, 1, 1),   },
-    { .frequency = 192000000, .index = PLLVAL(88, 1, 1),   },
-    { .frequency = 203000000, .index = PLLVAL(161, 3, 1),  },
-
-    /* 2410A extras */
-
-    { .frequency = 210000000, .index = PLLVAL(132, 2, 1),  },
-    { .frequency = 226000000, .index = PLLVAL(105, 1, 1),  },
-    { .frequency = 266000000, .index = PLLVAL(125, 1, 1),  },
-    { .frequency = 268000000, .index = PLLVAL(126, 1, 1),  },
-    { .frequency = 270000000, .index = PLLVAL(127, 1, 1),  },
-};
-
-static int s3c2410_plls_add(struct device *dev, struct subsys_interface *sif)
-{
-	return s3c_plltab_register(pll_vals_12MHz, ARRAY_SIZE(pll_vals_12MHz));
-}
-
-static struct subsys_interface s3c2410_plls_interface = {
-	.name		= "s3c2410_plls",
-	.subsys		= &s3c2410_subsys,
-	.add_dev	= s3c2410_plls_add,
-};
-
-static int __init s3c2410_pll_init(void)
-{
-	return subsys_interface_register(&s3c2410_plls_interface);
-
-}
-
-arch_initcall(s3c2410_pll_init);
-
-static struct subsys_interface s3c2410a_plls_interface = {
-	.name		= "s3c2410a_plls",
-	.subsys		= &s3c2410a_subsys,
-	.add_dev	= s3c2410_plls_add,
-};
-
-static int __init s3c2410a_pll_init(void)
-{
-	return subsys_interface_register(&s3c2410a_plls_interface);
-}
-
-arch_initcall(s3c2410a_pll_init);
diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig
index e249611..8f0592a 100644
--- a/arch/arm/mach-s3c24xx/Kconfig
+++ b/arch/arm/mach-s3c24xx/Kconfig
@@ -20,7 +20,6 @@ config CPU_S3C2410
 	select S3C2410_CLOCK
 	select CPU_LLSERIAL_S3C2410
 	select S3C2410_PM if PM
-	select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX
 	help
 	  Support for S3C2410 and S3C2410A family from the S3C24XX line
 	  of Samsung Mobile CPUs.
@@ -156,7 +155,6 @@ config MACH_AML_M5900
 
 config ARCH_BAST
 	bool "Simtec Electronics BAST (EB2410ITX)"
-	select S3C2410_IOTIMING if S3C2410_CPUFREQ
 	select S3C24XX_SIMTEC_PM if PM
 	select S3C24XX_SIMTEC_NOR
 	select S3C24XX_SIMTEC_USB
-- 
1.7.7.6


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: ARM: s3c2410: remove dead mach-s3c2410 directory
  2012-06-25 10:11 ARM: s3c2410: remove dead mach-s3c2410 directory Paul Bolle
@ 2012-06-25 16:06 ` Heiko Stübner
  2012-07-17  0:01   ` Kukjin Kim
  0 siblings, 1 reply; 3+ messages in thread
From: Heiko Stübner @ 2012-06-25 16:06 UTC (permalink / raw)
  To: Paul Bolle
  Cc: Ben Dooks, Kukjin Kim, Russell King, linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Am Montag 25 Juni 2012, 12:11:52 schrieb Paul Bolle:
> Commit 85fd6d63bf2927b9da7ab1b0d46723bfdb13808c ("ARM: S3C2410: move
> mach-s3c2410/* into mach-s3c24xx/") orphaned
> arch/arm/mach-s3c2410/Kconfig: currently no other Kconfig file sources
> that file. This means that the Kconfig symbols S3C2410_CPUFREQ and
> S3C2410_PLLTABLE will never be set, which in turns means that the macros
> CONFIG_S3C2410_CPUFREQ and CONFIG_S3C2410_PLLTABLE will never be
> defined.
> 
> All this makes that all four files in the mach-directory (Kconfig,
> Makefile, cpu-freq.c, and pll.c) are effectively dead files since v3.4:
> none of them can lead to any code in someones kernel. This directory can
> safely be removed.

I don't think so. CPU-frequency-scaling on the earlier S3C architectures was 
probably working before the beginning of the directory merge.

If I recall correctly Kgene was working on completing these missing pieces of 
the move to mach-s3c24xx.

The reason for noone complaining about the missing cpufreq support yet, might 
be that projects using the early S3C architectures hae not made it to the most 
recent kernel releases.


> Also delete two lines from mach-s3c24xx/Kconfig that now also become
> meaningless.
> 
> Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
> ---
> 0) Tested only with a number of git commands.
> 
> 1) Previously discussed in https://lkml.org/lkml/2012/4/22/26 .
> 
>  arch/arm/mach-s3c2410/Kconfig    |   20 -----
>  arch/arm/mach-s3c2410/Makefile   |   14 ---
>  arch/arm/mach-s3c2410/cpu-freq.c |  163
> -------------------------------------- arch/arm/mach-s3c2410/pll.c      | 
>  99 -----------------------
>  arch/arm/mach-s3c24xx/Kconfig    |    2 -
>  5 files changed, 0 insertions(+), 298 deletions(-)
>  delete mode 100644 arch/arm/mach-s3c2410/Kconfig
>  delete mode 100644 arch/arm/mach-s3c2410/Makefile
>  delete mode 100644 arch/arm/mach-s3c2410/cpu-freq.c
>  delete mode 100644 arch/arm/mach-s3c2410/pll.c
> 
> diff --git a/arch/arm/mach-s3c2410/Kconfig b/arch/arm/mach-s3c2410/Kconfig
> deleted file mode 100644
> index 68d89cb..0000000
> --- a/arch/arm/mach-s3c2410/Kconfig
> +++ /dev/null
> @@ -1,20 +0,0 @@
> -# Copyright 2007 Simtec Electronics
> -#
> -# Licensed under GPLv2
> -
> -# cpu frequency scaling support
> -
> -config S3C2410_CPUFREQ
> -	bool
> -	depends on CPU_FREQ_S3C24XX && CPU_S3C2410
> -	select S3C2410_CPUFREQ_UTILS
> -	help
> -	  CPU Frequency scaling support for S3C2410
> -
> -config S3C2410_PLLTABLE
> -	bool
> -	depends on S3C2410_CPUFREQ && CPU_FREQ_S3C24XX_PLL
> -	default y
> -	help
> -	  Select the PLL table for the S3C2410
> -
> diff --git a/arch/arm/mach-s3c2410/Makefile
> b/arch/arm/mach-s3c2410/Makefile deleted file mode 100644
> index 6b9a316..0000000
> --- a/arch/arm/mach-s3c2410/Makefile
> +++ /dev/null
> @@ -1,14 +0,0 @@
> -# arch/arm/mach-s3c2410/Makefile
> -#
> -# Copyright 2007 Simtec Electronics
> -#
> -# Licensed under GPLv2
> -
> -obj-y				:=
> -obj-m				:=
> -obj-n				:=
> -obj-				:=
> -
> -obj-$(CONFIG_S3C2410_CPUFREQ)	+= cpu-freq.o
> -obj-$(CONFIG_S3C2410_PLLTABLE)	+= pll.o
> -
> diff --git a/arch/arm/mach-s3c2410/cpu-freq.c
> b/arch/arm/mach-s3c2410/cpu-freq.c deleted file mode 100644
> index 5404535..0000000
> --- a/arch/arm/mach-s3c2410/cpu-freq.c
> +++ /dev/null
> @@ -1,163 +0,0 @@
> -/* linux/arch/arm/mach-s3c2410/cpu-freq.c
> - *
> - * Copyright (c) 2006-2008 Simtec Electronics
> - *	http://armlinux.simtec.co.uk/
> - *	Ben Dooks <ben@simtec.co.uk>
> - *
> - * S3C2410 CPU Frequency scaling
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License version 2 as
> - * published by the Free Software Foundation.
> -*/
> -
> -#include <linux/init.h>
> -#include <linux/module.h>
> -#include <linux/interrupt.h>
> -#include <linux/ioport.h>
> -#include <linux/cpufreq.h>
> -#include <linux/device.h>
> -#include <linux/clk.h>
> -#include <linux/err.h>
> -#include <linux/io.h>
> -
> -#include <asm/mach/arch.h>
> -#include <asm/mach/map.h>
> -
> -#include <mach/regs-clock.h>
> -
> -#include <plat/cpu.h>
> -#include <plat/clock.h>
> -#include <plat/cpu-freq-core.h>
> -
> -/* Note, 2410A has an extra mode for 1:4:4 ratio, bit 2 of CLKDIV */
> -
> -static void s3c2410_cpufreq_setdivs(struct s3c_cpufreq_config *cfg)
> -{
> -	u32 clkdiv = 0;
> -
> -	if (cfg->divs.h_divisor == 2)
> -		clkdiv |= S3C2410_CLKDIVN_HDIVN;
> -
> -	if (cfg->divs.p_divisor != cfg->divs.h_divisor)
> -		clkdiv |= S3C2410_CLKDIVN_PDIVN;
> -
> -	__raw_writel(clkdiv, S3C2410_CLKDIVN);
> -}
> -
> -static int s3c2410_cpufreq_calcdivs(struct s3c_cpufreq_config *cfg)
> -{
> -	unsigned long hclk, fclk, pclk;
> -	unsigned int hdiv, pdiv;
> -	unsigned long hclk_max;
> -
> -	fclk = cfg->freq.fclk;
> -	hclk_max = cfg->max.hclk;
> -
> -	cfg->freq.armclk = fclk;
> -
> -	s3c_freq_dbg("%s: fclk is %lu, max hclk %lu\n",
> -		      __func__, fclk, hclk_max);
> -
> -	hdiv = (fclk > cfg->max.hclk) ? 2 : 1;
> -	hclk = fclk / hdiv;
> -
> -	if (hclk > cfg->max.hclk) {
> -		s3c_freq_dbg("%s: hclk too big\n", __func__);
> -		return -EINVAL;
> -	}
> -
> -	pdiv = (hclk > cfg->max.pclk) ? 2 : 1;
> -	pclk = hclk / pdiv;
> -
> -	if (pclk > cfg->max.pclk) {
> -		s3c_freq_dbg("%s: pclk too big\n", __func__);
> -		return -EINVAL;
> -	}
> -
> -	pdiv *= hdiv;
> -
> -	/* record the result */
> -	cfg->divs.p_divisor = pdiv;
> -	cfg->divs.h_divisor = hdiv;
> -
> -	return 0      ;
> -}
> -
> -static struct s3c_cpufreq_info s3c2410_cpufreq_info = {
> -	.max		= {
> -		.fclk	= 200000000,
> -		.hclk	= 100000000,
> -		.pclk	=  50000000,
> -	},
> -
> -	/* transition latency is about 5ms worst-case, so
> -	 * set 10ms to be sure */
> -	.latency	= 10000000,
> -
> -	.locktime_m	= 150,
> -	.locktime_u	= 150,
> -	.locktime_bits	= 12,
> -
> -	.need_pll	= 1,
> -
> -	.name		= "s3c2410",
> -	.calc_iotiming	= s3c2410_iotiming_calc,
> -	.set_iotiming	= s3c2410_iotiming_set,
> -	.get_iotiming	= s3c2410_iotiming_get,
> -	.resume_clocks	= s3c2410_setup_clocks,
> -
> -	.set_fvco	= s3c2410_set_fvco,
> -	.set_refresh	= s3c2410_cpufreq_setrefresh,
> -	.set_divs	= s3c2410_cpufreq_setdivs,
> -	.calc_divs	= s3c2410_cpufreq_calcdivs,
> -
> -	.debug_io_show	= s3c_cpufreq_debugfs_call(s3c2410_iotiming_debugfs),
> -};
> -
> -static int s3c2410_cpufreq_add(struct device *dev,
> -			       struct subsys_interface *sif)
> -{
> -	return s3c_cpufreq_register(&s3c2410_cpufreq_info);
> -}
> -
> -static struct subsys_interface s3c2410_cpufreq_interface = {
> -	.name		= "s3c2410_cpufreq",
> -	.subsys		= &s3c2410_subsys,
> -	.add_dev	= s3c2410_cpufreq_add,
> -};
> -
> -static int __init s3c2410_cpufreq_init(void)
> -{
> -	return subsys_interface_register(&s3c2410_cpufreq_interface);
> -}
> -
> -arch_initcall(s3c2410_cpufreq_init);
> -
> -static int s3c2410a_cpufreq_add(struct device *dev,
> -				struct subsys_interface *sif)
> -{
> -	/* alter the maximum freq settings for S3C2410A. If a board knows
> -	 * it only has a maximum of 200, then it should register its own
> -	 * limits. */
> -
> -	s3c2410_cpufreq_info.max.fclk = 266000000;
> -	s3c2410_cpufreq_info.max.hclk = 133000000;
> -	s3c2410_cpufreq_info.max.pclk =  66500000;
> -	s3c2410_cpufreq_info.name = "s3c2410a";
> -
> -	return s3c2410_cpufreq_add(dev, sif);
> -}
> -
> -static struct subsys_interface s3c2410a_cpufreq_interface = {
> -	.name		= "s3c2410a_cpufreq",
> -	.subsys		= &s3c2410a_subsys,
> -	.add_dev	= s3c2410a_cpufreq_add,
> -};
> -
> -static int __init s3c2410a_cpufreq_init(void)
> -{
> -	return subsys_interface_register(&s3c2410a_cpufreq_interface);
> -}
> -
> -arch_initcall(s3c2410a_cpufreq_init);
> diff --git a/arch/arm/mach-s3c2410/pll.c b/arch/arm/mach-s3c2410/pll.c
> deleted file mode 100644
> index e0b3b34..0000000
> --- a/arch/arm/mach-s3c2410/pll.c
> +++ /dev/null
> @@ -1,99 +0,0 @@
> -/* arch/arm/mach-s3c2410/pll.c
> - *
> - * Copyright (c) 2006-2007 Simtec Electronics
> - *	http://armlinux.simtec.co.uk/
> - *	Ben Dooks <ben@simtec.co.uk>
> - *	Vincent Sanders <vince@arm.linux.org.uk>
> - *
> - * S3C2410 CPU PLL tables
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License as published by
> - * the Free Software Foundation; either version 2 of the License, or
> - * (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 
> USA -*/
> -
> -#include <linux/types.h>
> -#include <linux/kernel.h>
> -#include <linux/module.h>
> -#include <linux/device.h>
> -#include <linux/list.h>
> -#include <linux/clk.h>
> -#include <linux/err.h>
> -
> -#include <plat/cpu.h>
> -#include <plat/cpu-freq-core.h>
> -
> -static struct cpufreq_frequency_table pll_vals_12MHz[] = {
> -    { .frequency = 34000000,  .index = PLLVAL(82, 2, 3),   },
> -    { .frequency = 45000000,  .index = PLLVAL(82, 1, 3),   },
> -    { .frequency = 51000000,  .index = PLLVAL(161, 3, 3),  },
> -    { .frequency = 48000000,  .index = PLLVAL(120, 2, 3),  },
> -    { .frequency = 56000000,  .index = PLLVAL(142, 2, 3),  },
> -    { .frequency = 68000000,  .index = PLLVAL(82, 2, 2),   },
> -    { .frequency = 79000000,  .index = PLLVAL(71, 1, 2),   },
> -    { .frequency = 85000000,  .index = PLLVAL(105, 2, 2),  },
> -    { .frequency = 90000000,  .index = PLLVAL(112, 2, 2),  },
> -    { .frequency = 101000000, .index = PLLVAL(127, 2, 2),  },
> -    { .frequency = 113000000, .index = PLLVAL(105, 1, 2),  },
> -    { .frequency = 118000000, .index = PLLVAL(150, 2, 2),  },
> -    { .frequency = 124000000, .index = PLLVAL(116, 1, 2),  },
> -    { .frequency = 135000000, .index = PLLVAL(82, 2, 1),   },
> -    { .frequency = 147000000, .index = PLLVAL(90, 2, 1),   },
> -    { .frequency = 152000000, .index = PLLVAL(68, 1, 1),   },
> -    { .frequency = 158000000, .index = PLLVAL(71, 1, 1),   },
> -    { .frequency = 170000000, .index = PLLVAL(77, 1, 1),   },
> -    { .frequency = 180000000, .index = PLLVAL(82, 1, 1),   },
> -    { .frequency = 186000000, .index = PLLVAL(85, 1, 1),   },
> -    { .frequency = 192000000, .index = PLLVAL(88, 1, 1),   },
> -    { .frequency = 203000000, .index = PLLVAL(161, 3, 1),  },
> -
> -    /* 2410A extras */
> -
> -    { .frequency = 210000000, .index = PLLVAL(132, 2, 1),  },
> -    { .frequency = 226000000, .index = PLLVAL(105, 1, 1),  },
> -    { .frequency = 266000000, .index = PLLVAL(125, 1, 1),  },
> -    { .frequency = 268000000, .index = PLLVAL(126, 1, 1),  },
> -    { .frequency = 270000000, .index = PLLVAL(127, 1, 1),  },
> -};
> -
> -static int s3c2410_plls_add(struct device *dev, struct subsys_interface
> *sif) -{
> -	return s3c_plltab_register(pll_vals_12MHz, ARRAY_SIZE(pll_vals_12MHz));
> -}
> -
> -static struct subsys_interface s3c2410_plls_interface = {
> -	.name		= "s3c2410_plls",
> -	.subsys		= &s3c2410_subsys,
> -	.add_dev	= s3c2410_plls_add,
> -};
> -
> -static int __init s3c2410_pll_init(void)
> -{
> -	return subsys_interface_register(&s3c2410_plls_interface);
> -
> -}
> -
> -arch_initcall(s3c2410_pll_init);
> -
> -static struct subsys_interface s3c2410a_plls_interface = {
> -	.name		= "s3c2410a_plls",
> -	.subsys		= &s3c2410a_subsys,
> -	.add_dev	= s3c2410_plls_add,
> -};
> -
> -static int __init s3c2410a_pll_init(void)
> -{
> -	return subsys_interface_register(&s3c2410a_plls_interface);
> -}
> -
> -arch_initcall(s3c2410a_pll_init);
> diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig
> index e249611..8f0592a 100644
> --- a/arch/arm/mach-s3c24xx/Kconfig
> +++ b/arch/arm/mach-s3c24xx/Kconfig
> @@ -20,7 +20,6 @@ config CPU_S3C2410
>  	select S3C2410_CLOCK
>  	select CPU_LLSERIAL_S3C2410
>  	select S3C2410_PM if PM
> -	select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX
>  	help
>  	  Support for S3C2410 and S3C2410A family from the S3C24XX line
>  	  of Samsung Mobile CPUs.
> @@ -156,7 +155,6 @@ config MACH_AML_M5900
> 
>  config ARCH_BAST
>  	bool "Simtec Electronics BAST (EB2410ITX)"
> -	select S3C2410_IOTIMING if S3C2410_CPUFREQ
>  	select S3C24XX_SIMTEC_PM if PM
>  	select S3C24XX_SIMTEC_NOR
>  	select S3C24XX_SIMTEC_USB


^ permalink raw reply	[flat|nested] 3+ messages in thread

* RE: ARM: s3c2410: remove dead mach-s3c2410 directory
  2012-06-25 16:06 ` Heiko Stübner
@ 2012-07-17  0:01   ` Kukjin Kim
  0 siblings, 0 replies; 3+ messages in thread
From: Kukjin Kim @ 2012-07-17  0:01 UTC (permalink / raw)
  To: 'Heiko Stübner', 'Paul Bolle'
  Cc: 'Ben Dooks', 'Russell King', linux-arm-kernel,
	linux-samsung-soc, linux-kernel

Heiko Stübner wrote:
> 
> Am Montag 25 Juni 2012, 12:11:52 schrieb Paul Bolle:
> > Commit 85fd6d63bf2927b9da7ab1b0d46723bfdb13808c ("ARM: S3C2410: move
> > mach-s3c2410/* into mach-s3c24xx/") orphaned
> > arch/arm/mach-s3c2410/Kconfig: currently no other Kconfig file sources
> > that file. This means that the Kconfig symbols S3C2410_CPUFREQ and
> > S3C2410_PLLTABLE will never be set, which in turns means that the macros
> > CONFIG_S3C2410_CPUFREQ and CONFIG_S3C2410_PLLTABLE will never be
> > defined.
> >
> > All this makes that all four files in the mach-directory (Kconfig,
> > Makefile, cpu-freq.c, and pll.c) are effectively dead files since v3.4:
> > none of them can lead to any code in someones kernel. This directory can
> > safely be removed.
> 
> I don't think so. CPU-frequency-scaling on the earlier S3C architectures
> was
> probably working before the beginning of the directory merge.
> 
Yeah, maybe. But I think, sourcing mach-s3c2410/Kconfig is enough to fix working s3c24xx cpufreq.

> If I recall correctly Kgene was working on completing these missing pieces
> of
> the move to mach-s3c24xx.
> 
Yes, Heiko's memory is correct. But mainly my colleague is working it instead and I'm just helping him. As I know he needs more time probably it's not possible for upcoming merge window but next time, it's ok.

> The reason for noone complaining about the missing cpufreq support yet,
> might
> be that projects using the early S3C architectures hae not made it to the
> most
> recent kernel releases.
> 
Yeah, maybe. Anyway we should fix it as soon as possible...

Thanks.

Best regards,
Kgene.
--
Kukjin Kim <kgene.kim@samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-07-17  0:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-25 10:11 ARM: s3c2410: remove dead mach-s3c2410 directory Paul Bolle
2012-06-25 16:06 ` Heiko Stübner
2012-07-17  0:01   ` Kukjin Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox