* linux-next: manual merge of the tmem tree with the vfs tree
From: Stephen Rothwell @ 2011-12-28 7:07 UTC (permalink / raw)
To: Dan Magenheimer
Cc: linux-next, linux-kernel, Konrad Rzeszutek Wilk, Al Viro,
Andrew Morton, Nick Piggin
[-- Attachment #1: Type: text/plain, Size: 1219 bytes --]
Hi Dan,
Today's linux-next merge of the tmem tree got a conflict in fs/buffer.c
between commit b1cdabb05024 ("fs: move code out of buffer.c") from the
vfs tree and commit 294a90bcfd28 ("mm: cleancache: s/flush/invalidate/")
from the tmem tree.
The code that was modified by the latter was moved by the former. I
applied the following merge fixup patch.
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 28 Dec 2011 18:05:28 +1100
Subject: [PATCH] tmem: fix up for code movement
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
fs/block_dev.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/fs/block_dev.c b/fs/block_dev.c
index 69a5b6f..d6d5f29 100644
--- a/fs/block_dev.c
+++ b/fs/block_dev.c
@@ -110,7 +110,7 @@ void invalidate_bdev(struct block_device *bdev)
/* 99% of the time, we don't need to flush the cleancache on the bdev.
* But, for the strange corners, lets be cautious
*/
- cleancache_flush_inode(mapping);
+ cleancache_invalidate_inode(mapping);
}
EXPORT_SYMBOL(invalidate_bdev);
--
1.7.8.197.g73c6b
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply related
* linux-next: manual merge of the staging tree with the l2-mtd tree
From: Stephen Rothwell @ 2011-12-28 6:54 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Artem Bityutskiy
[-- Attachment #1: Type: text/plain, Size: 379 bytes --]
Hi Greg,
Today's linux-next merge of the staging tree got a conflict in
drivers/staging/spectra/lld_mtd.c between a series of commits from the
l2-mtd tree and commit be7f39c5ecf5 ("Staging: delete spectra driver")
from the staging tree.
I just removed the file.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: build failure after merge of the driver-core tree
From: Stephen Rothwell @ 2011-12-28 6:45 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Josh Triplett, Kay Sievers
[-- Attachment #1: Type: text/plain, Size: 3733 bytes --]
Hi Greg,
After merging the driver-core tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:
arch/powerpc/platforms/cell/spu_base.c: In function 'spu_add_dev_attr':
arch/powerpc/platforms/cell/spu_base.c:533:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
cc1: all warnings being treated as errors
arch/powerpc/kernel/sysfs.c: In function 'topology_init':
arch/powerpc/kernel/sysfs.c:658:22: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c: In function 'register_cpu_online':
arch/powerpc/kernel/sysfs.c:346:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:380:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:384:22: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:388:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:391:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:394:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:397:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c:400:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
arch/powerpc/kernel/sysfs.c: In function 'cpu_add_dev_attr':
arch/powerpc/kernel/sysfs.c:532:21: error: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Werror=unused-result]
cc1: all warnings being treated as errors
Caused by commit 8a25a2fd126c ("cpu: convert 'cpu' and 'machinecheck'
sysdev_class to a regular subsystem"). Powerpc builds parts of
arch/powerpc with -Werror.
drivers/base/cpu.c: In function 'cpu_is_hotpluggable':
drivers/base/cpu.c:272:9: error: implicit declaration of function 'get_cpu_sysdev' [-Werror=implicit-function-declaration]
drivers/base/cpu.c:272:27: warning: initialization makes pointer from integer without a cast [enabled by default]
drivers/base/cpu.c:273:16: error: 'struct cpu' has no member named 'sysdev'
drivers/base/cpu.c:273:16: warning: initialization from incompatible pointer type [enabled by default]
drivers/base/cpu.c:273:16: error: 'struct cpu' has no member named 'sysdev'
drivers/base/cpu.c:274:1: warning: control reaches end of non-void function [-Wreturn-type]
Caused by the above commit interacting with commit 2987557f52b9
("driver-core/cpu: Expose hotpluggability to the rest of the kernel")
from the tip tree. This is will fix up in the merge commit next time.
drivers/base/cpu.c: In function 'register_cpu_control':
drivers/base/cpu.c:66:20: warning: ignoring return value of 'device_create_file', declared with attribute warn_unused_result [-Wunused-result]
cc1: some warnings being treated as errors
Caused by the above commit.
Because of the powerpc problems above, I have used the driver-core tree
from next-20111222 for today.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the s390 tree
From: Stephen Rothwell @ 2011-12-28 6:26 UTC (permalink / raw)
To: Greg KH
Cc: linux-next, linux-kernel, Kay Sievers, Martin Schwidefsky,
Heiko Carstens
[-- Attachment #1: Type: text/plain, Size: 6849 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/s390/kernel/smp.c between commit 83a24e329084 ("[S390] topology: get
rid of ifdefs") from the s390 tree and commit 8a25a2fd126c ("cpu: convert
'cpu' and 'machinecheck' sysdev_class to a regular subsystem") from the
driver-core tree.
I fixed it up (see below) and can carry the fix as necessary.
I also applied the following merge fix patch (which may not be correct or
enough) for the bits moved into topology.c:
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 28 Dec 2011 17:19:21 +1100
Subject: [PATCH] s390: fixup for sysdev removal
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
arch/s390/kernel/topology.c | 22 +++++++++++-----------
1 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c
index 08a059d..b635a8b 100644
--- a/arch/s390/kernel/topology.c
+++ b/arch/s390/kernel/topology.c
@@ -366,8 +366,8 @@ void __init s390_init_cpu_topology(void)
static int cpu_management;
-static ssize_t dispatching_show(struct sysdev_class *class,
- struct sysdev_class_attribute *attr,
+static ssize_t dispatching_show(struct device *dev,
+ struct device_attribute *attr,
char *buf)
{
ssize_t count;
@@ -378,8 +378,8 @@ static ssize_t dispatching_show(struct sysdev_class *class,
return count;
}
-static ssize_t dispatching_store(struct sysdev_class *dev,
- struct sysdev_class_attribute *attr,
+static ssize_t dispatching_store(struct device *dev,
+ struct device_attribute *attr,
const char *buf,
size_t count)
{
@@ -405,11 +405,11 @@ out:
put_online_cpus();
return rc ? rc : count;
}
-static SYSDEV_CLASS_ATTR(dispatching, 0644, dispatching_show,
+static DEIVCE_ATTR(dispatching, 0644, dispatching_show,
dispatching_store);
-static ssize_t cpu_polarization_show(struct sys_device *dev,
- struct sysdev_attribute *attr, char *buf)
+static ssize_t cpu_polarization_show(struct device *dev,
+ struct device_attribute *attr, char *buf)
{
int cpu = dev->id;
ssize_t count;
@@ -435,10 +435,10 @@ static ssize_t cpu_polarization_show(struct sys_device *dev,
mutex_unlock(&smp_cpu_state_mutex);
return count;
}
-static SYSDEV_ATTR(polarization, 0444, cpu_polarization_show, NULL);
+static DEVICE_ATTR(polarization, 0444, cpu_polarization_show, NULL);
static struct attribute *topology_cpu_attrs[] = {
- &attr_polarization.attr,
+ &dev_attr_polarization.attr,
NULL,
};
@@ -448,7 +448,7 @@ static struct attribute_group topology_cpu_attr_group = {
int topology_cpu_init(struct cpu *cpu)
{
- return sysfs_create_group(&cpu->sysdev.kobj, &topology_cpu_attr_group);
+ return sysfs_create_group(&cpu->dev.kobj, &topology_cpu_attr_group);
}
static int __init topology_init(void)
@@ -460,6 +460,6 @@ static int __init topology_init(void)
set_topology_timer();
out:
update_cpu_core_map();
- return sysdev_class_create_file(&cpu_sysdev_class, &attr_dispatching);
+ return device_create_file(cpu_subsys.dev_root, &dev_attr_dispatching);
}
device_initcall(topology_init);
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/s390/kernel/smp.c
index b1cd329,66cca03..0000000
--- a/arch/s390/kernel/smp.c
+++ b/arch/s390/kernel/smp.c
@@@ -923,21 -889,52 +923,21 @@@ out
put_online_cpus();
return rc ? rc : count;
}
- static SYSDEV_ATTR(configure, 0644, cpu_configure_show, cpu_configure_store);
+ static DEVICE_ATTR(configure, 0644, cpu_configure_show, cpu_configure_store);
#endif /* CONFIG_HOTPLUG_CPU */
- static ssize_t show_cpu_address(struct sys_device *dev,
- struct sysdev_attribute *attr, char *buf)
-static ssize_t cpu_polarization_show(struct device *dev,
- struct device_attribute *attr, char *buf)
-{
- int cpu = dev->id;
- ssize_t count;
-
- mutex_lock(&smp_cpu_state_mutex);
- switch (smp_cpu_polarization[cpu]) {
- case POLARIZATION_HRZ:
- count = sprintf(buf, "horizontal\n");
- break;
- case POLARIZATION_VL:
- count = sprintf(buf, "vertical:low\n");
- break;
- case POLARIZATION_VM:
- count = sprintf(buf, "vertical:medium\n");
- break;
- case POLARIZATION_VH:
- count = sprintf(buf, "vertical:high\n");
- break;
- default:
- count = sprintf(buf, "unknown\n");
- break;
- }
- mutex_unlock(&smp_cpu_state_mutex);
- return count;
-}
-static DEVICE_ATTR(polarization, 0444, cpu_polarization_show, NULL);
-
+ static ssize_t show_cpu_address(struct device *dev,
+ struct device_attribute *attr, char *buf)
{
return sprintf(buf, "%d\n", __cpu_logical_map[dev->id]);
}
- static SYSDEV_ATTR(address, 0444, show_cpu_address, NULL);
+ static DEVICE_ATTR(address, 0444, show_cpu_address, NULL);
-
static struct attribute *cpu_common_attrs[] = {
#ifdef CONFIG_HOTPLUG_CPU
- &attr_configure.attr,
+ &dev_attr_configure.attr,
#endif
- &attr_address.attr,
+ &dev_attr_address.attr,
- &dev_attr_polarization.attr,
NULL,
};
@@@ -1120,16 -1108,58 +1120,16 @@@ static ssize_t __ref rescan_store(struc
rc = smp_rescan_cpus();
return rc ? rc : count;
}
- static SYSDEV_CLASS_ATTR(rescan, 0200, NULL, rescan_store);
+ static DEVICE_ATTR(rescan, 0200, NULL, rescan_store);
#endif /* CONFIG_HOTPLUG_CPU */
-static ssize_t dispatching_show(struct device *dev,
- struct device_attribute *attr,
- char *buf)
-{
- ssize_t count;
-
- mutex_lock(&smp_cpu_state_mutex);
- count = sprintf(buf, "%d\n", cpu_management);
- mutex_unlock(&smp_cpu_state_mutex);
- return count;
-}
-
-static ssize_t dispatching_store(struct device *dev,
- struct device_attribute *attr,
- const char *buf,
- size_t count)
-{
- int val, rc;
- char delim;
-
- if (sscanf(buf, "%d %c", &val, &delim) != 1)
- return -EINVAL;
- if (val != 0 && val != 1)
- return -EINVAL;
- rc = 0;
- get_online_cpus();
- mutex_lock(&smp_cpu_state_mutex);
- if (cpu_management == val)
- goto out;
- rc = topology_set_cpu_management(val);
- if (!rc)
- cpu_management = val;
-out:
- mutex_unlock(&smp_cpu_state_mutex);
- put_online_cpus();
- return rc ? rc : count;
-}
-static DEVICE_ATTR(dispatching, 0644, dispatching_show,
- dispatching_store);
-
-static int __init topology_init(void)
+static int __init s390_smp_init(void)
{
- int cpu;
- int rc;
+ int cpu, rc;
register_cpu_notifier(&smp_cpu_nb);
-
#ifdef CONFIG_HOTPLUG_CPU
- rc = sysdev_class_create_file(&cpu_sysdev_class, &attr_rescan);
+ rc = device_create_file(cpu_subsys.dev_root, &dev_attr_rescan);
if (rc)
return rc;
#endif
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply related
* linux-next: manual merge of the driver-core tree with the powerpc tree
From: Stephen Rothwell @ 2011-12-28 5:51 UTC (permalink / raw)
To: Greg KH
Cc: Deepthi Dharwar, Trinabh Gupta, Kay Sievers, linux-kernel,
linux-next, Paul Mackerras, linuxppc-dev, Arun R Bharadwaj
[-- Attachment #1.1: Type: text/plain, Size: 3429 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/powerpc/kernel/sysfs.c between commit 595fe91447b0 ("powerpc: Export
PIR data through sysfs") from the powerpc tree and commits 8a25a2fd126c
("cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular
subsystem") and 707827f3387d ("powerpc/cpuidle: cpuidle driver for
pSeries") from the driver-core tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/powerpc/kernel/sysfs.c
index 6fdf5ff,5e7c165..0000000
--- a/arch/powerpc/kernel/sysfs.c
+++ b/arch/powerpc/kernel/sysfs.c
@@@ -51,8 -50,7 +51,8 @@@ static ssize_t store_smt_snooze_delay(s
if (ret != 1)
return -EINVAL;
- per_cpu(smt_snooze_delay, cpu->sysdev.id) = snooze;
+ per_cpu(smt_snooze_delay, cpu->dev.id) = snooze;
+ update_smt_snooze_delay(snooze);
return count;
}
@@@ -179,13 -177,11 +179,13 @@@ SYSFS_PMCSETUP(mmcra, SPRN_MMCRA)
SYSFS_PMCSETUP(purr, SPRN_PURR);
SYSFS_PMCSETUP(spurr, SPRN_SPURR);
SYSFS_PMCSETUP(dscr, SPRN_DSCR);
+SYSFS_PMCSETUP(pir, SPRN_PIR);
- static SYSDEV_ATTR(mmcra, 0600, show_mmcra, store_mmcra);
- static SYSDEV_ATTR(spurr, 0600, show_spurr, NULL);
- static SYSDEV_ATTR(dscr, 0600, show_dscr, store_dscr);
- static SYSDEV_ATTR(purr, 0600, show_purr, store_purr);
- static SYSDEV_ATTR(pir, 0400, show_pir, NULL);
+ static DEVICE_ATTR(mmcra, 0600, show_mmcra, store_mmcra);
+ static DEVICE_ATTR(spurr, 0600, show_spurr, NULL);
+ static DEVICE_ATTR(dscr, 0600, show_dscr, store_dscr);
+ static DEVICE_ATTR(purr, 0600, show_purr, store_purr);
++static DEVICE_ATTR(pir, 0400, show_pir, NULL);
unsigned long dscr_default = 0;
EXPORT_SYMBOL(dscr_default);
@@@ -386,19 -381,16 +385,19 @@@ static void __cpuinit register_cpu_onli
#ifdef CONFIG_PPC64
if (cpu_has_feature(CPU_FTR_MMCRA))
- sysdev_create_file(s, &attr_mmcra);
+ device_create_file(s, &dev_attr_mmcra);
if (cpu_has_feature(CPU_FTR_PURR))
- sysdev_create_file(s, &attr_purr);
+ device_create_file(s, &dev_attr_purr);
if (cpu_has_feature(CPU_FTR_SPURR))
- sysdev_create_file(s, &attr_spurr);
+ device_create_file(s, &dev_attr_spurr);
if (cpu_has_feature(CPU_FTR_DSCR))
- sysdev_create_file(s, &attr_dscr);
+ device_create_file(s, &dev_attr_dscr);
+
+ if (cpu_has_feature(CPU_FTR_PPCAS_ARCH_V2))
- sysdev_create_file(s, &attr_pir);
++ device_create_file(s, &dev_attr_pir);
#endif /* CONFIG_PPC64 */
cacheinfo_cpu_online(cpu);
@@@ -459,19 -451,16 +458,19 @@@ static void unregister_cpu_online(unsig
#ifdef CONFIG_PPC64
if (cpu_has_feature(CPU_FTR_MMCRA))
- sysdev_remove_file(s, &attr_mmcra);
+ device_remove_file(s, &dev_attr_mmcra);
if (cpu_has_feature(CPU_FTR_PURR))
- sysdev_remove_file(s, &attr_purr);
+ device_remove_file(s, &dev_attr_purr);
if (cpu_has_feature(CPU_FTR_SPURR))
- sysdev_remove_file(s, &attr_spurr);
+ device_remove_file(s, &dev_attr_spurr);
if (cpu_has_feature(CPU_FTR_DSCR))
- sysdev_remove_file(s, &attr_dscr);
+ device_remove_file(s, &dev_attr_dscr);
+
+ if (cpu_has_feature(CPU_FTR_PPCAS_ARCH_V2))
- sysdev_remove_file(s, &attr_pir);
++ device_remove_file(s, &dev_attr_pir);
#endif /* CONFIG_PPC64 */
cacheinfo_cpu_offline(cpu);
[-- Attachment #1.2: Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the arm tree
From: Stephen Rothwell @ 2011-12-28 5:40 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kay Sievers, Kukjin Kim, Russell King
[-- Attachment #1: Type: text/plain, Size: 2107 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/plat-samsung/include/plat/cpu.h between commit b024043b6d0d
("ARM: 7245/1: S3C64XX: introduce arch/arm/mach-s3c64xx/common.[ch]")
from the arm tree and commit 4a858cfc9af8 ("arm: convert sysdev_class to
a regular subsystem") from the driver-core tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/plat-samsung/include/plat/cpu.h
index abbdadb,0122a22..0000000
--- a/arch/arm/plat-samsung/include/plat/cpu.h
+++ b/arch/arm/plat-samsung/include/plat/cpu.h
@@@ -181,20 -183,22 +181,20 @@@ extern struct syscore_ops s3c2410_pm_sy
extern struct syscore_ops s3c2412_pm_syscore_ops;
extern struct syscore_ops s3c2416_pm_syscore_ops;
extern struct syscore_ops s3c244x_pm_syscore_ops;
-extern struct syscore_ops s3c64xx_irq_syscore_ops;
- /* system device classes */
-
- extern struct sysdev_class s3c2410_sysclass;
- extern struct sysdev_class s3c2410a_sysclass;
- extern struct sysdev_class s3c2412_sysclass;
- extern struct sysdev_class s3c2416_sysclass;
- extern struct sysdev_class s3c2440_sysclass;
- extern struct sysdev_class s3c2442_sysclass;
- extern struct sysdev_class s3c2443_sysclass;
- extern struct sysdev_class s3c6410_sysclass;
- extern struct sysdev_class s5p64x0_sysclass;
- extern struct sysdev_class s5pv210_sysclass;
- extern struct sysdev_class exynos4_sysclass;
+ /* system device subsystems */
+
+ extern struct bus_type s3c2410_subsys;
+ extern struct bus_type s3c2410a_subsys;
+ extern struct bus_type s3c2412_subsys;
+ extern struct bus_type s3c2416_subsys;
+ extern struct bus_type s3c2440_subsys;
+ extern struct bus_type s3c2442_subsys;
+ extern struct bus_type s3c2443_subsys;
+ extern struct bus_type s3c6410_subsys;
-extern struct bus_type s3c64xx_subsys;
+ extern struct bus_type s5p64x0_subsys;
+ extern struct bus_type s5pv210_subsys;
+ extern struct bus_type exynos4_subsys;
extern void (*s5pc1xx_idle)(void);
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the arm tree
From: Stephen Rothwell @ 2011-12-28 5:35 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Russell King, Kay Sievers
[-- Attachment #1: Type: text/plain, Size: 1881 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/mach-s5pv210/common.c between commit 37775320458e ("ARM: 7252/1:
restart: S5PV210: use new restart hook") from the arm tree and commit
4a858cfc9af8 ("arm: convert sysdev_class to a regular subsystem") from
the driver-core tree (where it is called arch/arm/mach-s5pv210/cpu.c).
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s5pv210/common.c
index a4921bc,28e71ef..0000000
--- a/arch/arm/mach-s5pv210/common.c
+++ b/arch/arm/mach-s5pv210/common.c
@@@ -239,8 -185,9 +240,8 @@@ static struct device s5pv210_dev =
static int __init s5pv210_core_init(void)
{
- return sysdev_class_register(&s5pv210_sysclass);
+ return subsys_system_register(&s5pv210_subsys, NULL);
}
-
core_initcall(s5pv210_core_init);
int __init s5pv210_init(void)
@@@ -250,31 -197,8 +251,31 @@@
/* set idle function */
pm_idle = s5pv210_idle;
- return sysdev_register(&s5pv210_sysdev);
- /* set sw_reset function */
- s5p_reset_hook = s5pv210_sw_reset;
-
+ return device_register(&s5pv210_dev);
}
+
+static struct s3c24xx_uart_clksrc s5pv210_serial_clocks[] = {
+ [0] = {
+ .name = "pclk",
+ .divisor = 1,
+ .min_baud = 0,
+ .max_baud = 0,
+ },
+};
+
+/* uart registration process */
+
+void __init s5pv210_init_uarts(struct s3c2410_uartcfg *cfg, int no)
+{
+ struct s3c2410_uartcfg *tcfg = cfg;
+ u32 ucnt;
+
+ for (ucnt = 0; ucnt < no; ucnt++, tcfg++) {
+ if (!tcfg->clocks) {
+ tcfg->clocks = s5pv210_serial_clocks;
+ tcfg->clocks_size = ARRAY_SIZE(s5pv210_serial_clocks);
+ }
+ }
+
+ s3c24xx_init_uartdevs("s5pv210-uart", s5p_uart_resources, cfg, no);
+}
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with Linus' tree
From: Stephen Rothwell @ 2011-12-28 5:28 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kay Sievers, Mark Brown
[-- Attachment #1: Type: text/plain, Size: 482 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/mach-s3c64xx/s3c6400.c between commit 71b33a4f7c86 ("ARM:
S3C64XX: Staticise s3c6400_sysclass") from Linus' tree and commit
4a858cfc9af8 ("arm: convert sysdev_class to a regular subsystem") from
the driver-core tree.
The latter subsumed the change in the former, so I used that.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: linux-next: manual merge of the driver-core tree with the arm tree
From: Stephen Rothwell @ 2011-12-28 5:24 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kukjin Kim, Russell King, Kay Sievers
In-Reply-To: <20111228161231.ff6448eb7f03120bd25b19dd@canb.auug.org.au>
[-- Attachment #1: Type: text/plain, Size: 6629 bytes --]
Hi again,
On Wed, 28 Dec 2011 16:12:31 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the driver-core tree got a conflict in
> arch/arm/mach-s3c64xx/common.c between commit b024043b6d0d ("ARM: 7245/1:
> S3C64XX: introduce arch/arm/mach-s3c64xx/common.[ch]") from the arm tree
> and commit edbaa603eb80 ("driver-core: remove sysdev.h usage") from the
> driver-core tree (where it is called arch/arm/mach-s3c64xx/irq-eint.c).
>
> Just context changes. I fixed it up (see below) and can carry the fix as
> necessary.
Actually, I the fix was more extensive (see below).
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s3c64xx/common.c
index 8ae5b16,e3e75d1..0000000
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@@ -15,182 -13,21 +15,183 @@@
*/
#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/module.h>
#include <linux/interrupt.h>
+#include <linux/ioport.h>
- #include <linux/sysdev.h>
+ #include <linux/device.h>
-#include <linux/gpio.h>
-#include <linux/irq.h>
+#include <linux/serial_core.h>
+#include <linux/platform_device.h>
#include <linux/io.h>
+#include <linux/dma-mapping.h>
+#include <linux/irq.h>
+#include <linux/gpio.h>
+#include <asm/mach/arch.h>
+#include <asm/mach/map.h>
#include <asm/hardware/vic.h>
-#include <plat/regs-irqtype.h>
+#include <mach/map.h>
+#include <mach/hardware.h>
#include <mach/regs-gpio.h>
-#include <plat/gpio-cfg.h>
-#include <mach/map.h>
#include <plat/cpu.h>
+#include <plat/clock.h>
+#include <plat/devs.h>
#include <plat/pm.h>
+#include <plat/gpio-cfg.h>
+#include <plat/irq-uart.h>
+#include <plat/irq-vic-timer.h>
+#include <plat/regs-irqtype.h>
+#include <plat/regs-serial.h>
+
+#include "common.h"
+
+/* uart registration process */
+
+void __init s3c64xx_init_uarts(struct s3c2410_uartcfg *cfg, int no)
+{
+ s3c24xx_init_uartdevs("s3c6400-uart", s3c64xx_uart_resources, cfg, no);
+}
+
+/* table of supported CPUs */
+
+static const char name_s3c6400[] = "S3C6400";
+static const char name_s3c6410[] = "S3C6410";
+
+static struct cpu_table cpu_ids[] __initdata = {
+ {
+ .idcode = S3C6400_CPU_ID,
+ .idmask = S3C64XX_CPU_MASK,
+ .map_io = s3c6400_map_io,
+ .init_clocks = s3c6400_init_clocks,
+ .init_uarts = s3c64xx_init_uarts,
+ .init = s3c6400_init,
+ .name = name_s3c6400,
+ }, {
+ .idcode = S3C6410_CPU_ID,
+ .idmask = S3C64XX_CPU_MASK,
+ .map_io = s3c6410_map_io,
+ .init_clocks = s3c6410_init_clocks,
+ .init_uarts = s3c64xx_init_uarts,
+ .init = s3c6410_init,
+ .name = name_s3c6410,
+ },
+};
+
+/* minimal IO mapping */
+
+/* see notes on uart map in arch/arm/mach-s3c64xx/include/mach/debug-macro.S */
+#define UART_OFFS (S3C_PA_UART & 0xfffff)
+
+static struct map_desc s3c_iodesc[] __initdata = {
+ {
+ .virtual = (unsigned long)S3C_VA_SYS,
+ .pfn = __phys_to_pfn(S3C64XX_PA_SYSCON),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_MEM,
+ .pfn = __phys_to_pfn(S3C64XX_PA_SROM),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)(S3C_VA_UART + UART_OFFS),
+ .pfn = __phys_to_pfn(S3C_PA_UART),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)VA_VIC0,
+ .pfn = __phys_to_pfn(S3C64XX_PA_VIC0),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)VA_VIC1,
+ .pfn = __phys_to_pfn(S3C64XX_PA_VIC1),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_TIMER,
+ .pfn = __phys_to_pfn(S3C_PA_TIMER),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C64XX_VA_GPIO,
+ .pfn = __phys_to_pfn(S3C64XX_PA_GPIO),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C64XX_VA_MODEM,
+ .pfn = __phys_to_pfn(S3C64XX_PA_MODEM),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_WATCHDOG,
+ .pfn = __phys_to_pfn(S3C64XX_PA_WATCHDOG),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_USB_HSPHY,
+ .pfn = __phys_to_pfn(S3C64XX_PA_USB_HSPHY),
+ .length = SZ_1K,
+ .type = MT_DEVICE,
+ },
+};
+
- struct sysdev_class s3c64xx_sysclass = {
- .name = "s3c64xx-core",
++struct bus_type s3c64xx_subsys = {
++ .name = "s3c64xx-core",
++ .dev_name = "s3c64xx-core",
+};
+
- static struct sys_device s3c64xx_sysdev = {
- .cls = &s3c64xx_sysclass,
++static struct device s3c64xx_dev = {
++ .bus = &s3c64xx_subsys,
+};
+
+/* read cpu identification code */
+
+void __init s3c64xx_init_io(struct map_desc *mach_desc, int size)
+{
+ /* initialise the io descriptors we need for initialisation */
+ iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));
+ iotable_init(mach_desc, size);
+ init_consistent_dma_size(SZ_8M);
+
+ /* detect cpu id */
+ s3c64xx_init_cpu();
+
+ s3c_init_cpu(samsung_cpu_id, cpu_ids, ARRAY_SIZE(cpu_ids));
+}
+
- static __init int s3c64xx_sysdev_init(void)
++static __init int s3c64xx_dev_init(void)
+{
- sysdev_class_register(&s3c64xx_sysclass);
- return sysdev_register(&s3c64xx_sysdev);
++ subsys_system_register(&s3c64xx_subsys, NULL);
++ return device(&s3c64xx_dev);
+}
- core_initcall(s3c64xx_sysdev_init);
++core_initcall(s3c64xx_dev_init);
+
+/*
+ * setup the sources the vic should advertise resume
+ * for, even though it is not doing the wake
+ * (set_irq_wake needs to be valid)
+ */
+#define IRQ_VIC0_RESUME (1 << (IRQ_RTC_TIC - IRQ_VIC0_BASE))
+#define IRQ_VIC1_RESUME (1 << (IRQ_RTC_ALARM - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_PENDN - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC0 - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC1 - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC2 - IRQ_VIC1_BASE))
+
+void __init s3c64xx_init_irq(u32 vic0_valid, u32 vic1_valid)
+{
+ printk(KERN_DEBUG "%s: initialising interrupts\n", __func__);
+
+ /* initialise the pair of VICs */
+ vic_init(VA_VIC0, IRQ_VIC0_BASE, vic0_valid, IRQ_VIC0_RESUME);
+ vic_init(VA_VIC1, IRQ_VIC1_BASE, vic1_valid, IRQ_VIC1_RESUME);
+
+ /* add the timer sub-irqs */
+ s3c_init_vic_timer_irq(5, IRQ_TIMER0);
+}
#define eint_offset(irq) ((irq) - IRQ_EINT(0))
#define eint_irq_to_bit(irq) ((u32)(1 << eint_offset(irq)))
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the arm tree
From: Stephen Rothwell @ 2011-12-28 5:12 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kukjin Kim, Russell King, Kay Sievers
[-- Attachment #1: Type: text/plain, Size: 6140 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/mach-s3c64xx/common.c between commit b024043b6d0d ("ARM: 7245/1:
S3C64XX: introduce arch/arm/mach-s3c64xx/common.[ch]") from the arm tree
and commit edbaa603eb80 ("driver-core: remove sysdev.h usage") from the
driver-core tree (where it is called arch/arm/mach-s3c64xx/irq-eint.c).
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s3c64xx/common.c
index 8ae5b16,e3e75d1..0000000
--- a/arch/arm/mach-s3c64xx/common.c
+++ b/arch/arm/mach-s3c64xx/common.c
@@@ -15,182 -13,21 +15,182 @@@
*/
#include <linux/kernel.h>
+#include <linux/init.h>
+#include <linux/module.h>
#include <linux/interrupt.h>
+#include <linux/ioport.h>
- #include <linux/sysdev.h>
+ #include <linux/device.h>
-#include <linux/gpio.h>
-#include <linux/irq.h>
+#include <linux/serial_core.h>
+#include <linux/platform_device.h>
#include <linux/io.h>
+#include <linux/dma-mapping.h>
+#include <linux/irq.h>
+#include <linux/gpio.h>
+#include <asm/mach/arch.h>
+#include <asm/mach/map.h>
#include <asm/hardware/vic.h>
-#include <plat/regs-irqtype.h>
+#include <mach/map.h>
+#include <mach/hardware.h>
#include <mach/regs-gpio.h>
-#include <plat/gpio-cfg.h>
-#include <mach/map.h>
#include <plat/cpu.h>
+#include <plat/clock.h>
+#include <plat/devs.h>
#include <plat/pm.h>
+#include <plat/gpio-cfg.h>
+#include <plat/irq-uart.h>
+#include <plat/irq-vic-timer.h>
+#include <plat/regs-irqtype.h>
+#include <plat/regs-serial.h>
+
+#include "common.h"
+
+/* uart registration process */
+
+void __init s3c64xx_init_uarts(struct s3c2410_uartcfg *cfg, int no)
+{
+ s3c24xx_init_uartdevs("s3c6400-uart", s3c64xx_uart_resources, cfg, no);
+}
+
+/* table of supported CPUs */
+
+static const char name_s3c6400[] = "S3C6400";
+static const char name_s3c6410[] = "S3C6410";
+
+static struct cpu_table cpu_ids[] __initdata = {
+ {
+ .idcode = S3C6400_CPU_ID,
+ .idmask = S3C64XX_CPU_MASK,
+ .map_io = s3c6400_map_io,
+ .init_clocks = s3c6400_init_clocks,
+ .init_uarts = s3c64xx_init_uarts,
+ .init = s3c6400_init,
+ .name = name_s3c6400,
+ }, {
+ .idcode = S3C6410_CPU_ID,
+ .idmask = S3C64XX_CPU_MASK,
+ .map_io = s3c6410_map_io,
+ .init_clocks = s3c6410_init_clocks,
+ .init_uarts = s3c64xx_init_uarts,
+ .init = s3c6410_init,
+ .name = name_s3c6410,
+ },
+};
+
+/* minimal IO mapping */
+
+/* see notes on uart map in arch/arm/mach-s3c64xx/include/mach/debug-macro.S */
+#define UART_OFFS (S3C_PA_UART & 0xfffff)
+
+static struct map_desc s3c_iodesc[] __initdata = {
+ {
+ .virtual = (unsigned long)S3C_VA_SYS,
+ .pfn = __phys_to_pfn(S3C64XX_PA_SYSCON),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_MEM,
+ .pfn = __phys_to_pfn(S3C64XX_PA_SROM),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)(S3C_VA_UART + UART_OFFS),
+ .pfn = __phys_to_pfn(S3C_PA_UART),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)VA_VIC0,
+ .pfn = __phys_to_pfn(S3C64XX_PA_VIC0),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)VA_VIC1,
+ .pfn = __phys_to_pfn(S3C64XX_PA_VIC1),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_TIMER,
+ .pfn = __phys_to_pfn(S3C_PA_TIMER),
+ .length = SZ_16K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C64XX_VA_GPIO,
+ .pfn = __phys_to_pfn(S3C64XX_PA_GPIO),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C64XX_VA_MODEM,
+ .pfn = __phys_to_pfn(S3C64XX_PA_MODEM),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_WATCHDOG,
+ .pfn = __phys_to_pfn(S3C64XX_PA_WATCHDOG),
+ .length = SZ_4K,
+ .type = MT_DEVICE,
+ }, {
+ .virtual = (unsigned long)S3C_VA_USB_HSPHY,
+ .pfn = __phys_to_pfn(S3C64XX_PA_USB_HSPHY),
+ .length = SZ_1K,
+ .type = MT_DEVICE,
+ },
+};
+
+struct sysdev_class s3c64xx_sysclass = {
+ .name = "s3c64xx-core",
+};
+
+static struct sys_device s3c64xx_sysdev = {
+ .cls = &s3c64xx_sysclass,
+};
+
+/* read cpu identification code */
+
+void __init s3c64xx_init_io(struct map_desc *mach_desc, int size)
+{
+ /* initialise the io descriptors we need for initialisation */
+ iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));
+ iotable_init(mach_desc, size);
+ init_consistent_dma_size(SZ_8M);
+
+ /* detect cpu id */
+ s3c64xx_init_cpu();
+
+ s3c_init_cpu(samsung_cpu_id, cpu_ids, ARRAY_SIZE(cpu_ids));
+}
+
+static __init int s3c64xx_sysdev_init(void)
+{
+ sysdev_class_register(&s3c64xx_sysclass);
+ return sysdev_register(&s3c64xx_sysdev);
+}
+core_initcall(s3c64xx_sysdev_init);
+
+/*
+ * setup the sources the vic should advertise resume
+ * for, even though it is not doing the wake
+ * (set_irq_wake needs to be valid)
+ */
+#define IRQ_VIC0_RESUME (1 << (IRQ_RTC_TIC - IRQ_VIC0_BASE))
+#define IRQ_VIC1_RESUME (1 << (IRQ_RTC_ALARM - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_PENDN - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC0 - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC1 - IRQ_VIC1_BASE) | \
+ 1 << (IRQ_HSMMC2 - IRQ_VIC1_BASE))
+
+void __init s3c64xx_init_irq(u32 vic0_valid, u32 vic1_valid)
+{
+ printk(KERN_DEBUG "%s: initialising interrupts\n", __func__);
+
+ /* initialise the pair of VICs */
+ vic_init(VA_VIC0, IRQ_VIC0_BASE, vic0_valid, IRQ_VIC0_RESUME);
+ vic_init(VA_VIC1, IRQ_VIC1_BASE, vic1_valid, IRQ_VIC1_RESUME);
+
+ /* add the timer sub-irqs */
+ s3c_init_vic_timer_irq(5, IRQ_TIMER0);
+}
#define eint_offset(irq) ((irq) - IRQ_EINT(0))
#define eint_irq_to_bit(irq) ((u32)(1 << eint_offset(irq)))
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the s5p tree
From: Stephen Rothwell @ 2011-12-28 5:05 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kay Sievers, Thomas Abraham, Kukjin Kim
[-- Attachment #1: Type: text/plain, Size: 2167 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/mach-s3c2440/clock.c between commit 0cfb26e1fb9d ("ARM: SAMSUNG:
register uart clocks to clock lookup list") from the s5p tree and commit
4a858cfc9af8 ("arm: convert sysdev_class to a regular subsystem") from
the driver-core tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s3c2440/clock.c
index c9879af,d895759..0000000
--- a/arch/arm/mach-s3c2440/clock.c
+++ b/arch/arm/mach-s3c2440/clock.c
@@@ -110,47 -107,7 +109,47 @@@ static struct clk s3c2440_clk_ac97 =
.ctrlbit = S3C2440_CLKCON_CAMERA,
};
+static unsigned long s3c2440_fclk_n_getrate(struct clk *clk)
+{
+ unsigned long ucon0, ucon1, ucon2, divisor;
+
+ /* the fun of calculating the uart divisors on the s3c2440 */
+ ucon0 = __raw_readl(S3C24XX_VA_UART0 + S3C2410_UCON);
+ ucon1 = __raw_readl(S3C24XX_VA_UART1 + S3C2410_UCON);
+ ucon2 = __raw_readl(S3C24XX_VA_UART2 + S3C2410_UCON);
+
+ ucon0 &= S3C2440_UCON0_DIVMASK;
+ ucon1 &= S3C2440_UCON1_DIVMASK;
+ ucon2 &= S3C2440_UCON2_DIVMASK;
+
+ if (ucon0 != 0)
+ divisor = (ucon0 >> S3C2440_UCON_DIVSHIFT) + 6;
+ else if (ucon1 != 0)
+ divisor = (ucon1 >> S3C2440_UCON_DIVSHIFT) + 21;
+ else if (ucon2 != 0)
+ divisor = (ucon2 >> S3C2440_UCON_DIVSHIFT) + 36;
+ else
+ /* manual calims 44, seems to be 9 */
+ divisor = 9;
+
+ return clk_get_rate(clk->parent) / divisor;
+}
+
+static struct clk s3c2440_clk_fclk_n = {
+ .name = "fclk_n",
+ .parent = &clk_f,
+ .ops = &(struct clk_ops) {
+ .get_rate = s3c2440_fclk_n_getrate,
+ },
+};
+
+static struct clk_lookup s3c2440_clk_lookup[] = {
+ CLKDEV_INIT(NULL, "clk_uart_baud1", &s3c24xx_uclk),
+ CLKDEV_INIT(NULL, "clk_uart_baud2", &clk_p),
+ CLKDEV_INIT(NULL, "clk_uart_baud3", &s3c2440_clk_fclk_n),
+};
+
- static int s3c2440_clk_add(struct sys_device *sysdev)
+ static int s3c2440_clk_add(struct device *dev)
{
struct clk *clock_upll;
struct clk *clock_h;
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the s5p tree
From: Stephen Rothwell @ 2011-12-28 5:00 UTC (permalink / raw)
To: Greg KH; +Cc: linux-next, linux-kernel, Kay Sievers, Thomas Abraham, Kukjin Kim
[-- Attachment #1: Type: text/plain, Size: 871 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
arch/arm/mach-exynos/cpu.c between commit f983575aa90c ("ARM: EXYNOS:
Enable conversion of GIC dt irq specifier to linux virq") from the s5p
tree and commit 4a858cfc9af8 ("arm: convert sysdev_class to a regular
subsystem") from the driver-core tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-exynos/cpu.c
index 0e3f42b,d4c41f3..0000000
--- a/arch/arm/mach-exynos/cpu.c
+++ b/arch/arm/mach-exynos/cpu.c
@@@ -9,9 -9,7 +9,9 @@@
*/
#include <linux/sched.h>
- #include <linux/sysdev.h>
+ #include <linux/device.h>
+#include <linux/of.h>
+#include <linux/of_irq.h>
#include <asm/mach/map.h>
#include <asm/mach/irq.h>
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the driver-core tree with the tip tree
From: Stephen Rothwell @ 2011-12-28 4:57 UTC (permalink / raw)
To: Greg KH
Cc: linux-next, linux-kernel, Josh Triplett, Paul E. McKenney,
Thomas Gleixner, Ingo Molnar, H. Peter Anvin, Peter Zijlstra,
Kay Sievers
[-- Attachment #1: Type: text/plain, Size: 1705 bytes --]
Hi Greg,
Today's linux-next merge of the driver-core tree got a conflict in
include/linux/cpu.h between commit 2987557f52b9 ("driver-core/cpu: Expose
hotpluggability to the rest of the kernel") from the tip tree and commit
8a25a2fd126c ("cpu: convert 'cpu' and 'machinecheck' sysdev_class to a
regular subsystem") from the driver-core tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc include/linux/cpu.h
index 305c263,fc3da0d..0000000
--- a/include/linux/cpu.h
+++ b/include/linux/cpu.h
@@@ -26,16 -26,15 +26,16 @@@ struct cpu
};
extern int register_cpu(struct cpu *cpu, int num);
- extern struct sys_device *get_cpu_sysdev(unsigned cpu);
+ extern struct device *get_cpu_device(unsigned cpu);
+extern bool cpu_is_hotpluggable(unsigned cpu);
- extern int cpu_add_sysdev_attr(struct sysdev_attribute *attr);
- extern void cpu_remove_sysdev_attr(struct sysdev_attribute *attr);
+ extern int cpu_add_dev_attr(struct device_attribute *attr);
+ extern void cpu_remove_dev_attr(struct device_attribute *attr);
- extern int cpu_add_sysdev_attr_group(struct attribute_group *attrs);
- extern void cpu_remove_sysdev_attr_group(struct attribute_group *attrs);
+ extern int cpu_add_dev_attr_group(struct attribute_group *attrs);
+ extern void cpu_remove_dev_attr_group(struct attribute_group *attrs);
- extern int sched_create_sysfs_power_savings_entries(struct sysdev_class *cls);
+ extern int sched_create_sysfs_power_savings_entries(struct device *dev);
#ifdef CONFIG_HOTPLUG_CPU
extern void unregister_cpu(struct cpu *cpu);
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the workqueues tree with the tip tree
From: Stephen Rothwell @ 2011-12-28 4:37 UTC (permalink / raw)
To: Tejun Heo
Cc: linux-next, linux-kernel, Jan Beulich, Thomas Gleixner,
Ingo Molnar, H. Peter Anvin, Peter Zijlstra, Christoph Lameter
[-- Attachment #1: Type: text/plain, Size: 1629 bytes --]
Hi Tejun,
Today's linux-next merge of the workqueues tree got a conflict in
arch/x86/include/asm/percpu.h between commit cebef5beed3d ("x86: Fix and
improve percpu_cmpxchg{8,16}b_double()") from the tip tree and commit
933393f58fef ("percpu: Remove irqsafe_cpu_xxx variants") from the
workqueues tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/x86/include/asm/percpu.h
index 529bf07e,562ccb5..0000000
--- a/arch/x86/include/asm/percpu.h
+++ b/arch/x86/include/asm/percpu.h
@@@ -462,9 -446,8 +443,8 @@@ do {
__ret; \
})
-#define __this_cpu_cmpxchg_double_4(pcp1, pcp2, o1, o2, n1, n2) percpu_cmpxchg8b_double(pcp1, o1, o2, n1, n2)
-#define this_cpu_cmpxchg_double_4(pcp1, pcp2, o1, o2, n1, n2) percpu_cmpxchg8b_double(pcp1, o1, o2, n1, n2)
+#define __this_cpu_cmpxchg_double_4 percpu_cmpxchg8b_double
+#define this_cpu_cmpxchg_double_4 percpu_cmpxchg8b_double
- #define irqsafe_cpu_cmpxchg_double_4 percpu_cmpxchg8b_double
#endif /* CONFIG_X86_CMPXCHG64 */
/*
@@@ -519,9 -503,8 +492,8 @@@
__ret; \
})
-#define __this_cpu_cmpxchg_double_8(pcp1, pcp2, o1, o2, n1, n2) percpu_cmpxchg16b_double(pcp1, o1, o2, n1, n2)
-#define this_cpu_cmpxchg_double_8(pcp1, pcp2, o1, o2, n1, n2) percpu_cmpxchg16b_double(pcp1, o1, o2, n1, n2)
+#define __this_cpu_cmpxchg_double_8 percpu_cmpxchg16b_double
+#define this_cpu_cmpxchg_double_8 percpu_cmpxchg16b_double
- #define irqsafe_cpu_cmpxchg_double_8 percpu_cmpxchg16b_double
#endif
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the kvm tree with the rr tree
From: Stephen Rothwell @ 2011-12-28 4:17 UTC (permalink / raw)
To: Avi Kivity, Marcelo Tosatti
Cc: linux-next, linux-kernel, Rusty Russell, Xiao Guangrong
[-- Attachment #1: Type: text/plain, Size: 465 bytes --]
Hi all,
Today's linux-next merge of the kvm tree got a conflict in
arch/x86/kvm/mmu.c between commit d6e5215aba76 ("module_param: make bool
parameters really bool (arch)") from the rr tree and commit d750ea28865d
("KVM: MMU: remove oos_shadow parameter") from the kvm tree.
The latter just removed the code modified by the former, so I did that.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: build warnings after merge of the rr tree
From: Stephen Rothwell @ 2011-12-28 2:58 UTC (permalink / raw)
To: Rusty Russell; +Cc: linux-next, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1183 bytes --]
Hi Rusty,
After merging the rr tree, today's linux-next build (x86_64 allmodconfig)
produced these warnings:
security/apparmor/lsm.c: In function '__check_debug':
security/apparmor/lsm.c:712:1: warning: return from incompatible pointer type [enabled by default]
security/apparmor/lsm.c: In function '__check_audit_header':
security/apparmor/lsm.c:724:1: warning: return from incompatible pointer type [enabled by default]
security/apparmor/lsm.c: In function '__check_lock_policy':
security/apparmor/lsm.c:732:1: warning: return from incompatible pointer type [enabled by default]
security/apparmor/lsm.c: In function '__check_logsyscall':
security/apparmor/lsm.c:736:1: warning: return from incompatible pointer type [enabled by default]
security/apparmor/lsm.c: In function '__check_paranoid_load':
security/apparmor/lsm.c:747:1: warning: return from incompatible pointer type [enabled by default]
security/apparmor/lsm.c: In function '__check_enabled':
security/apparmor/lsm.c:751:1: warning: return from incompatible pointer type [enabled by default]
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the drm tree with Linus' tree
From: Stephen Rothwell @ 2011-12-28 2:53 UTC (permalink / raw)
To: Dave Airlie
Cc: linux-next, linux-kernel, Xi Wang, Jesse Barnes,
Ville Syrjälä
[-- Attachment #1: Type: text/plain, Size: 1729 bytes --]
Hi Dave,
Today's linux-next merge of the drm tree got a conflict in
drivers/gpu/drm/vmwgfx/vmwgfx_kms.c between commit 8a78389651b3 ("vmwgfx:
fix incorrect VRAM size check in vmw_kms_fb_create()") from Linus' tree
and commit 308e5bcbdb10 ("drm: add an fb creation ioctl that takes a
pixel format v5") from the drm tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index f94b33a,c4bdef3..0000000
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@@ -1093,17 -1093,25 +1093,25 @@@ static struct drm_framebuffer *vmw_kms_
struct vmw_surface *surface = NULL;
struct vmw_dma_buffer *bo = NULL;
struct ttm_base_object *user_obj;
+ struct drm_mode_fb_cmd mode_cmd;
- u64 required_size;
int ret;
+ mode_cmd.width = mode_cmd2->width;
+ mode_cmd.height = mode_cmd2->height;
+ mode_cmd.pitch = mode_cmd2->pitches[0];
+ mode_cmd.handle = mode_cmd2->handles[0];
+ drm_fb_get_bpp_depth(mode_cmd2->pixel_format, &mode_cmd.depth,
+ &mode_cmd.bpp);
+
/**
* This code should be conditioned on Screen Objects not being used.
* If screen objects are used, we can allocate a GMR to hold the
* requested framebuffer.
*/
- required_size = mode_cmd.pitch * mode_cmd.height;
- if (unlikely(required_size > (u64) dev_priv->vram_size)) {
+ if (!vmw_kms_validate_mode_vram(dev_priv,
- mode_cmd->pitch,
- mode_cmd->height)) {
++ mode_cmd.pitch,
++ mode_cmd.height)) {
DRM_ERROR("VRAM size is too small for requested mode.\n");
return ERR_PTR(-ENOMEM);
}
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the drm tree with Linus' tree
From: Stephen Rothwell @ 2011-12-28 2:44 UTC (permalink / raw)
To: Dave Airlie; +Cc: linux-next, linux-kernel, Alex Deucher, Jerome Glisse
[-- Attachment #1: Type: text/plain, Size: 1560 bytes --]
Hi Dave,
Today's linux-next merge of the drm tree got a conflict in
drivers/gpu/drm/radeon/evergreen.c between commit 77e00f2ea94a
("drm/radeon/kms: bail on BTC parts if MC ucode is missing") from Linus'
tree and commit b15ba51207e5 ("drm/radeon: introduce a sub allocator and
convert ib pool to it v4") from the drm tree.
I think it is just context changes. I fixed it up (see below) and can
carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc drivers/gpu/drm/radeon/evergreen.c
index 92c9628,1934728..0000000
--- a/drivers/gpu/drm/radeon/evergreen.c
+++ b/drivers/gpu/drm/radeon/evergreen.c
@@@ -3264,30 -3337,6 +3337,18 @@@ int evergreen_init(struct radeon_devic
evergreen_pcie_gart_fini(rdev);
rdev->accel_working = false;
}
- if (rdev->accel_working) {
- r = radeon_ib_pool_init(rdev);
- if (r) {
- DRM_ERROR("radeon: failed initializing IB pool (%d).\n", r);
- rdev->accel_working = false;
- }
- r = r600_ib_test(rdev);
- if (r) {
- DRM_ERROR("radeon: failed testing IB (%d).\n", r);
- rdev->accel_working = false;
- }
- }
+
+ /* Don't start up if the MC ucode is missing on BTC parts.
+ * The default clocks and voltages before the MC ucode
+ * is loaded are not suffient for advanced operations.
+ */
+ if (ASIC_IS_DCE5(rdev)) {
+ if (!rdev->mc_fw && !(rdev->flags & RADEON_IS_IGP)) {
+ DRM_ERROR("radeon: MC ucode required for NI+.\n");
+ return -EINVAL;
+ }
+ }
+
return 0;
}
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the l2-mtd tree with the logfs tree
From: Stephen Rothwell @ 2011-12-28 1:48 UTC (permalink / raw)
To: Artem Bityutskiy
Cc: linux-next, linux-kernel, Prasad Joshi, "Jörn Engel"
[-- Attachment #1: Type: text/plain, Size: 2263 bytes --]
Hi Artem,
Today's linux-next merge of the l2-mtd tree got a conflict in
fs/logfs/dev_mtd.c between commit d1cc3ad397f2 ("Logfs: Allow NULL
block_isbad() methods") from the tree and commit 22aed0c2578c ("mtd:
introduce mtd_block_isbad interface") from the l2-mtd tree.
I fixed it up (see below) and can carry the fix as necessary. I am a
little worried that the block_isbad member of struct mtd_info may be
hidden in the future and so break the NULL checks here.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc fs/logfs/dev_mtd.c
index d054d7e,136c736..0000000
--- a/fs/logfs/dev_mtd.c
+++ b/fs/logfs/dev_mtd.c
@@@ -147,16 -150,17 +150,16 @@@ static struct page *logfs_mtd_find_firs
{
struct logfs_super *super = logfs_super(sb);
struct address_space *mapping = super->s_mapping_inode->i_mapping;
- filler_t *filler = mtd_readpage;
+ filler_t *filler = logfs_mtd_readpage;
struct mtd_info *mtd = super->s_mtd;
- if (!mtd->block_isbad)
- return NULL;
-
*ofs = 0;
- while (mtd_block_isbad(mtd, *ofs)) {
- *ofs += mtd->erasesize;
- if (*ofs >= mtd->size)
- return NULL;
+ if (mtd->block_isbad) {
- while (mtd->block_isbad(mtd, *ofs)) {
++ while (mtd_block_isbad(mtd, *ofs)) {
+ *ofs += mtd->erasesize;
+ if (*ofs >= mtd->size)
+ return NULL;
+ }
}
BUG_ON(*ofs & ~PAGE_MASK);
return read_cache_page(mapping, *ofs >> PAGE_SHIFT, filler, sb);
@@@ -166,16 -170,17 +169,16 @@@ static struct page *logfs_mtd_find_last
{
struct logfs_super *super = logfs_super(sb);
struct address_space *mapping = super->s_mapping_inode->i_mapping;
- filler_t *filler = mtd_readpage;
+ filler_t *filler = logfs_mtd_readpage;
struct mtd_info *mtd = super->s_mtd;
- if (!mtd->block_isbad)
- return NULL;
-
*ofs = mtd->size - mtd->erasesize;
- while (mtd_block_isbad(mtd, *ofs)) {
- *ofs -= mtd->erasesize;
- if (*ofs <= 0)
- return NULL;
+ if (mtd->block_isbad) {
- while (mtd->block_isbad(mtd, *ofs)) {
++ while (mtd_block_isbad(mtd, *ofs)) {
+ *ofs -= mtd->erasesize;
+ if (*ofs <= 0)
+ return NULL;
+ }
}
*ofs = *ofs + mtd->erasesize - 0x1000;
BUG_ON(*ofs & ~PAGE_MASK);
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: build failure after merge of the ext3 tree
From: Stephen Rothwell @ 2011-12-28 0:22 UTC (permalink / raw)
To: Jan Kara; +Cc: linux-next, linux-kernel, reiserfs-devel
[-- Attachment #1: Type: text/plain, Size: 1116 bytes --]
Hi Jan,
After merging the ext3 tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:
fs/reiserfs/super.c: In function 'reiserfs_show_options':
fs/reiserfs/super.c:652:20: error: 'struct reiserfs_sb_info' has no member named 's_qf_names'
fs/reiserfs/super.c:653:50: error: 'struct reiserfs_sb_info' has no member named 's_qf_names'
fs/reiserfs/super.c:656:20: error: 'struct reiserfs_sb_info' has no member named 's_qf_names'
fs/reiserfs/super.c:657:50: error: 'struct reiserfs_sb_info' has no member named 's_qf_names'
fs/reiserfs/super.c:660:20: error: 'struct reiserfs_sb_info' has no member named 's_jquota_fmt'
fs/reiserfs/super.c:661:21: error: 'struct reiserfs_sb_info' has no member named 's_jquota_fmt'
fs/reiserfs/super.c:663:26: error: 'struct reiserfs_sb_info' has no member named 's_jquota_fmt'
Caused by commit 5fa84b871b97 ("reiserfs: Properly display mount options
in /proc/mounts"). Hint: CONFIG_QUOTA is not set in this build.
I have used the ext3 tree from next-20111222 for today.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm tree
From: Stephen Rothwell @ 2011-12-27 23:36 UTC (permalink / raw)
To: Kukjin Kim; +Cc: linux-next, linux-kernel, Russell King, Thomas Abraham
[-- Attachment #1: Type: text/plain, Size: 573 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/mach-s5pv210/init.c between commit 3fa754c298b7 ("ARM: 7248/1:
S5PV210: introduce arch/arm/mach-s5pv210/common.[ch]") from the arm tree
and commit afba7f91e640 ("ARM: SAMSUNG: remove struct
's3c24xx_uart_clksrc' and all uses of it") from the s5p tree.
I just removed the file, but the latter patch will probably need applying
in some form to arch/arm/mach-s5pv210//common.c.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm tree
From: Stephen Rothwell @ 2011-12-27 23:33 UTC (permalink / raw)
To: Kukjin Kim; +Cc: linux-next, linux-kernel, Russell King, Rajeshwari Shinde
[-- Attachment #1: Type: text/plain, Size: 533 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/mach-s5p64x0/cpu.c between commit 95af214becab ("ARM: 7246/1:
S5P64X0: introduce arch/arm/mach-s5p64x0/common.[ch]") from the arm tree
and commit ebc433c2890f ("ARM: S5P64X0: Add HSMMC setup for host
Controller") from the s5p tree.
I just removed the file, but the s5p tree patch may need applying to
arch/arm/mach-s5p64x0/common.c.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm-current tree
From: Stephen Rothwell @ 2011-12-27 23:33 UTC (permalink / raw)
To: Kukjin Kim
Cc: linux-next, linux-kernel, Russell King, Javi Merino, Boojin Kim
[-- Attachment #1: Type: text/plain, Size: 565 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/common/pl330.c between commit abb959f8a3f1 ("ARM: 7237/1: PL330:
Fix driver freeze") from the arm-current tree and commit 5f3f34eb0ed2
("DMA: PL330: Merge PL330 driver into drivers/dma/") from the s5p tree.
The latter removed the file and merged it into drivers/dma/pl330.c.
There may be further fixups requires to that file. I just removed
arch/arm/common/pl330.c.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm tree
From: Stephen Rothwell @ 2011-12-27 23:33 UTC (permalink / raw)
To: Kukjin Kim; +Cc: linux-next, linux-kernel, Russell King, Thomas Abraham
[-- Attachment #1: Type: text/plain, Size: 572 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/mach-s5p64x0/init.c between commit 95af214becab ("ARM: 7246/1:
S5P64X0: introduce arch/arm/mach-s5p64x0/common.[ch]") from the arm tree
and commit afba7f91e640 ("ARM: SAMSUNG: remove struct
's3c24xx_uart_clksrc' and all uses of it") from the s5p tree.
I just removed the file, but the latter patch will probably need applying
in some form to arch/arm/mach-s5p64x0/common.c.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm tree
From: Stephen Rothwell @ 2011-12-27 23:21 UTC (permalink / raw)
To: Kukjin Kim; +Cc: linux-next, linux-kernel, Rajeshwari Shinde
[-- Attachment #1: Type: text/plain, Size: 1416 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/mach-s5pv210/Makefile between commit 3fa754c298b7 ("ARM: 7248/1:
S5PV210: introduce arch/arm/mach-s5pv210/common.[ch]") from the arm tree
and commit a60879e7ca17 ("ARM: SAMSUNG: Remove SDHCI bus clocks from
platform data") from the s5p tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s5pv210/Makefile
index 4c59186,471df5d..0000000
--- a/arch/arm/mach-s5pv210/Makefile
+++ b/arch/arm/mach-s5pv210/Makefile
@@@ -29,14 -27,12 +29,13 @@@ obj-$(CONFIG_MACH_TORBRECK) += mach-tor
# device support
obj-y += dev-audio.o
- obj-$(CONFIG_S3C64XX_DEV_SPI) += dev-spi.o
+obj-y += setup-i2c0.o
obj-$(CONFIG_S5PV210_SETUP_FB_24BPP) += setup-fb-24bpp.o
obj-$(CONFIG_S5PV210_SETUP_FIMC) += setup-fimc.o
-obj-$(CONFIG_S5PV210_SETUP_I2C1) += setup-i2c1.o
-obj-$(CONFIG_S5PV210_SETUP_I2C2) += setup-i2c2.o
+obj-$(CONFIG_S5PV210_SETUP_I2C1) += setup-i2c1.o
+obj-$(CONFIG_S5PV210_SETUP_I2C2) += setup-i2c2.o
obj-$(CONFIG_S5PV210_SETUP_IDE) += setup-ide.o
obj-$(CONFIG_S5PV210_SETUP_KEYPAD) += setup-keypad.o
- obj-$(CONFIG_S5PV210_SETUP_SDHCI) += setup-sdhci.o
obj-$(CONFIG_S5PV210_SETUP_SDHCI_GPIO) += setup-sdhci-gpio.o
+ obj-$(CONFIG_S5PV210_SETUP_SPI) += setup-spi.o
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox