diff options
author | Kay Sievers <kay.sievers@vrfy.org> | 2011-12-19 15:50:32 +0100 |
---|---|---|
committer | Kay Sievers <kay.sievers@vrfy.org> | 2011-12-19 15:50:32 +0100 |
commit | 2c743dc3262d4b2dfef95808d8436bd5cf0e5648 (patch) | |
tree | 8e92d2febc06991af759ff4d4ec737624e0c1952 | |
parent | 9b9a7be448795cfaf1f56dbe882b775fcad47a71 (diff) | |
download | patches-2c743dc3262d4b2dfef95808d8436bd5cf0e5648.tar.gz |
add sh, mips, m86k
-rw-r--r-- | 15-sh-intc.patch | 165 | ||||
-rw-r--r-- | 16-sh-dma.patch | 210 | ||||
-rw-r--r-- | 17-mips-txx9-7segled.patch | 119 | ||||
-rw-r--r-- | 18-mips-txx9_sram.patch | 104 | ||||
-rw-r--r-- | 19-m68k-gpio.patch | 40 | ||||
-rw-r--r-- | series | 6 |
6 files changed, 643 insertions, 1 deletions
diff --git a/15-sh-intc.patch b/15-sh-intc.patch new file mode 100644 index 0000000..7f5facb --- /dev/null +++ b/15-sh-intc.patch @@ -0,0 +1,165 @@ +From: Kay Sievers <kay.sievers@vrfy.org> +Subject: sh: intc - convert sysdev_class to a regular subsystem + +After all sysdev classes are ported to regular driver core entities, the +sysdev implementation will be entirely removed from the kernel. + +Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> +--- + drivers/sh/intc/core.c | 29 +++++++++++++++-------------- + drivers/sh/intc/internals.h | 6 +++--- + drivers/sh/intc/userimask.c | 16 ++++++++-------- + 3 files changed, 26 insertions(+), 25 deletions(-) + +--- a/drivers/sh/intc/core.c ++++ b/drivers/sh/intc/core.c +@@ -25,7 +25,7 @@ + #include <linux/stat.h> + #include <linux/interrupt.h> + #include <linux/sh_intc.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <linux/syscore_ops.h> + #include <linux/list.h> + #include <linux/spinlock.h> +@@ -434,46 +434,47 @@ struct syscore_ops intc_syscore_ops = { + .resume = intc_resume, + }; + +-struct sysdev_class intc_sysdev_class = { ++struct bus_type intc_subsys = { + .name = "intc", ++ .dev_name = "intc", + }; + + static ssize_t +-show_intc_name(struct sys_device *dev, struct sysdev_attribute *attr, char *buf) ++show_intc_name(struct device *dev, struct device_attribute *attr, char *buf) + { + struct intc_desc_int *d; + +- d = container_of(dev, struct intc_desc_int, sysdev); ++ d = container_of(dev, struct intc_desc_int, dev); + + return sprintf(buf, "%s\n", d->chip.name); + } + +-static SYSDEV_ATTR(name, S_IRUGO, show_intc_name, NULL); ++static DEVICE_ATTR(name, S_IRUGO, show_intc_name, NULL); + +-static int __init register_intc_sysdevs(void) ++static int __init register_intc_devs(void) + { + struct intc_desc_int *d; + int error; + + register_syscore_ops(&intc_syscore_ops); + +- error = sysdev_class_register(&intc_sysdev_class); ++ error = subsys_system_register(&intc_subsys, NULL); + if (!error) { + list_for_each_entry(d, &intc_list, list) { +- d->sysdev.id = d->index; +- d->sysdev.cls = &intc_sysdev_class; +- error = sysdev_register(&d->sysdev); ++ d->dev.id = d->index; ++ d->dev.bus = &intc_subsys; ++ error = device_register(&d->dev); + if (error == 0) +- error = sysdev_create_file(&d->sysdev, +- &attr_name); ++ error = device_create_file(&d->dev, ++ &dev_attr_name); + if (error) + break; + } + } + + if (error) +- pr_err("sysdev registration error\n"); ++ pr_err("device registration error\n"); + + return error; + } +-device_initcall(register_intc_sysdevs); ++device_initcall(register_intc_devs); +--- a/drivers/sh/intc/internals.h ++++ b/drivers/sh/intc/internals.h +@@ -4,7 +4,7 @@ + #include <linux/kernel.h> + #include <linux/types.h> + #include <linux/radix-tree.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + + #define _INTC_MK(fn, mode, addr_e, addr_d, width, shift) \ + ((shift) | ((width) << 5) | ((fn) << 9) | ((mode) << 13) | \ +@@ -51,7 +51,7 @@ struct intc_subgroup_entry { + + struct intc_desc_int { + struct list_head list; +- struct sys_device sysdev; ++ struct device dev; + struct radix_tree_root tree; + raw_spinlock_t lock; + unsigned int index; +@@ -157,7 +157,7 @@ void _intc_enable(struct irq_data *data, + extern struct list_head intc_list; + extern raw_spinlock_t intc_big_lock; + extern unsigned int nr_intc_controllers; +-extern struct sysdev_class intc_sysdev_class; ++extern struct bus_type intc_subsys; + + unsigned int intc_get_dfl_prio_level(void); + unsigned int intc_get_prio_level(unsigned int irq); +--- a/drivers/sh/intc/userimask.c ++++ b/drivers/sh/intc/userimask.c +@@ -10,7 +10,7 @@ + #define pr_fmt(fmt) "intc: " fmt + + #include <linux/errno.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <linux/init.h> + #include <linux/io.h> + #include <linux/stat.h> +@@ -20,15 +20,15 @@ + static void __iomem *uimask; + + static ssize_t +-show_intc_userimask(struct sysdev_class *cls, +- struct sysdev_class_attribute *attr, char *buf) ++show_intc_userimask(struct device *dev, ++ struct device_attribute *attr, char *buf) + { + return sprintf(buf, "%d\n", (__raw_readl(uimask) >> 4) & 0xf); + } + + static ssize_t +-store_intc_userimask(struct sysdev_class *cls, +- struct sysdev_class_attribute *attr, ++store_intc_userimask(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t count) + { + unsigned long level; +@@ -55,8 +55,8 @@ store_intc_userimask(struct sysdev_class + return count; + } + +-static SYSDEV_CLASS_ATTR(userimask, S_IRUSR | S_IWUSR, +- show_intc_userimask, store_intc_userimask); ++static DEVICE_ATTR(userimask, S_IRUSR | S_IWUSR, ++ show_intc_userimask, store_intc_userimask); + + + static int __init userimask_sysdev_init(void) +@@ -64,7 +64,7 @@ static int __init userimask_sysdev_init( + if (unlikely(!uimask)) + return -ENXIO; + +- return sysdev_class_create_file(&intc_sysdev_class, &attr_userimask); ++ return device_create_file(intc_subsys.dev_root, &dev_attr_userimask); + } + late_initcall(userimask_sysdev_init); + diff --git a/16-sh-dma.patch b/16-sh-dma.patch new file mode 100644 index 0000000..89f0a11 --- /dev/null +++ b/16-sh-dma.patch @@ -0,0 +1,210 @@ +From: Kay Sievers <kay.sievers@vrfy.org> +Subject: sh: dma - convert sysdev_class to a regular subsystem + +After all sysdev classes are ported to regular driver core entities, the +sysdev implementation will be entirely removed from the kernel. + +Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> +--- + arch/sh/drivers/dma/dma-sysfs.c | 81 ++++++++++++++++++++-------------------- + arch/sh/include/asm/dma.h | 4 - + 2 files changed, 43 insertions(+), 42 deletions(-) + +--- a/arch/sh/drivers/dma/dma-sysfs.c ++++ b/arch/sh/drivers/dma/dma-sysfs.c +@@ -12,18 +12,19 @@ + #include <linux/kernel.h> + #include <linux/init.h> + #include <linux/stat.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <linux/platform_device.h> + #include <linux/err.h> + #include <linux/string.h> + #include <asm/dma.h> + +-static struct sysdev_class dma_sysclass = { ++static struct bus_type dma_subsys = { + .name = "dma", ++ .dev_name = "dma", + }; + +-static ssize_t dma_show_devices(struct sys_device *dev, +- struct sysdev_attribute *attr, char *buf) ++static ssize_t dma_show_devices(struct device *dev, ++ struct device_attribute *attr, char *buf) + { + ssize_t len = 0; + int i; +@@ -43,29 +44,29 @@ static ssize_t dma_show_devices(struct s + return len; + } + +-static SYSDEV_ATTR(devices, S_IRUGO, dma_show_devices, NULL); ++static DEVICE_ATTR(devices, S_IRUGO, dma_show_devices, NULL); + +-static int __init dma_sysclass_init(void) ++static int __init dma_subsys_init(void) + { + int ret; + +- ret = sysdev_class_register(&dma_sysclass); ++ ret = subsys_system_register(&dma_subsys); + if (unlikely(ret)) + return ret; + +- return sysfs_create_file(&dma_sysclass.kset.kobj, &attr_devices.attr); ++ return device_create_file(dma_subsys.dev_root, &dev_attr_devices.attr); + } +-postcore_initcall(dma_sysclass_init); ++postcore_initcall(dma_subsys_init); + +-static ssize_t dma_show_dev_id(struct sys_device *dev, +- struct sysdev_attribute *attr, char *buf) ++static ssize_t dma_show_dev_id(struct device *dev, ++ struct device_attribute *attr, char *buf) + { + struct dma_channel *channel = to_dma_channel(dev); + return sprintf(buf, "%s\n", channel->dev_id); + } + +-static ssize_t dma_store_dev_id(struct sys_device *dev, +- struct sysdev_attribute *attr, ++static ssize_t dma_store_dev_id(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t count) + { + struct dma_channel *channel = to_dma_channel(dev); +@@ -73,10 +74,10 @@ static ssize_t dma_store_dev_id(struct s + return count; + } + +-static SYSDEV_ATTR(dev_id, S_IRUGO | S_IWUSR, dma_show_dev_id, dma_store_dev_id); ++static DEVICE_ATTR(dev_id, S_IRUGO | S_IWUSR, dma_show_dev_id, dma_store_dev_id); + +-static ssize_t dma_store_config(struct sys_device *dev, +- struct sysdev_attribute *attr, ++static ssize_t dma_store_config(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t count) + { + struct dma_channel *channel = to_dma_channel(dev); +@@ -88,17 +89,17 @@ static ssize_t dma_store_config(struct s + return count; + } + +-static SYSDEV_ATTR(config, S_IWUSR, NULL, dma_store_config); ++static DEVICE_ATTR(config, S_IWUSR, NULL, dma_store_config); + +-static ssize_t dma_show_mode(struct sys_device *dev, +- struct sysdev_attribute *attr, char *buf) ++static ssize_t dma_show_mode(struct device *dev, ++ struct device_attribute *attr, char *buf) + { + struct dma_channel *channel = to_dma_channel(dev); + return sprintf(buf, "0x%08x\n", channel->mode); + } + +-static ssize_t dma_store_mode(struct sys_device *dev, +- struct sysdev_attribute *attr, ++static ssize_t dma_store_mode(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t count) + { + struct dma_channel *channel = to_dma_channel(dev); +@@ -106,38 +107,38 @@ static ssize_t dma_store_mode(struct sys + return count; + } + +-static SYSDEV_ATTR(mode, S_IRUGO | S_IWUSR, dma_show_mode, dma_store_mode); ++static DEVICE_ATTR(mode, S_IRUGO | S_IWUSR, dma_show_mode, dma_store_mode); + + #define dma_ro_attr(field, fmt) \ +-static ssize_t dma_show_##field(struct sys_device *dev, \ +- struct sysdev_attribute *attr, char *buf)\ ++static ssize_t dma_show_##field(struct device *dev, \ ++ struct device_attribute *attr, char *buf)\ + { \ + struct dma_channel *channel = to_dma_channel(dev); \ + return sprintf(buf, fmt, channel->field); \ + } \ +-static SYSDEV_ATTR(field, S_IRUGO, dma_show_##field, NULL); ++static DEVICE_ATTR(field, S_IRUGO, dma_show_##field, NULL); + + dma_ro_attr(count, "0x%08x\n"); + dma_ro_attr(flags, "0x%08lx\n"); + + int dma_create_sysfs_files(struct dma_channel *chan, struct dma_info *info) + { +- struct sys_device *dev = &chan->dev; ++ struct device *dev = &chan->dev; + char name[16]; + int ret; + + dev->id = chan->vchan; +- dev->cls = &dma_sysclass; ++ dev->bus = &dma_subsys; + +- ret = sysdev_register(dev); ++ ret = device_register(dev); + if (ret) + return ret; + +- ret |= sysdev_create_file(dev, &attr_dev_id); +- ret |= sysdev_create_file(dev, &attr_count); +- ret |= sysdev_create_file(dev, &attr_mode); +- ret |= sysdev_create_file(dev, &attr_flags); +- ret |= sysdev_create_file(dev, &attr_config); ++ ret |= device_create_file(dev, &dev_attr_dev_id); ++ ret |= device_create_file(dev, &dev_attr_count); ++ ret |= device_create_file(dev, &dev_attr_mode); ++ ret |= device_create_file(dev, &dev_attr_flags); ++ ret |= device_create_file(dev, &dev_attr_config); + + if (unlikely(ret)) { + dev_err(&info->pdev->dev, "Failed creating attrs\n"); +@@ -150,17 +151,17 @@ int dma_create_sysfs_files(struct dma_ch + + void dma_remove_sysfs_files(struct dma_channel *chan, struct dma_info *info) + { +- struct sys_device *dev = &chan->dev; ++ struct device *dev = &chan->dev; + char name[16]; + +- sysdev_remove_file(dev, &attr_dev_id); +- sysdev_remove_file(dev, &attr_count); +- sysdev_remove_file(dev, &attr_mode); +- sysdev_remove_file(dev, &attr_flags); +- sysdev_remove_file(dev, &attr_config); ++ device_remove_file(dev, &dev_attr_dev_id); ++ device_remove_file(dev, &dev_attr_count); ++ device_remove_file(dev, &dev_attr_mode); ++ device_remove_file(dev, &dev_attr_flags); ++ device_remove_file(dev, &dev_attr_config); + + snprintf(name, sizeof(name), "dma%d", chan->chan); + sysfs_remove_link(&info->pdev->dev.kobj, name); + +- sysdev_unregister(dev); ++ device_unregister(dev); + } +--- a/arch/sh/include/asm/dma.h ++++ b/arch/sh/include/asm/dma.h +@@ -14,7 +14,7 @@ + #include <linux/spinlock.h> + #include <linux/wait.h> + #include <linux/sched.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <cpu/dma.h> + #include <asm-generic/dma.h> + +@@ -91,7 +91,7 @@ struct dma_channel { + + wait_queue_head_t wait_queue; + +- struct sys_device dev; ++ struct device dev; + void *priv_data; + }; + diff --git a/17-mips-txx9-7segled.patch b/17-mips-txx9-7segled.patch new file mode 100644 index 0000000..b5ce322 --- /dev/null +++ b/17-mips-txx9-7segled.patch @@ -0,0 +1,119 @@ +From: Kay Sievers <kay.sievers@vrfy.org> +Subject: mips: 7segled - convert sysdev_class to a regular subsystem + +After all sysdev classes are ported to regular driver core entities, the +sysdev implementation will be entirely removed from the kernel. + +Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> +--- + arch/mips/txx9/generic/7segled.c | 44 +++++++++++++++++++-------------------- + 1 file changed, 22 insertions(+), 22 deletions(-) + +--- a/arch/mips/txx9/generic/7segled.c ++++ b/arch/mips/txx9/generic/7segled.c +@@ -9,7 +9,7 @@ + * (C) Copyright TOSHIBA CORPORATION 2005-2007 + * All Rights Reserved. + */ +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <linux/slab.h> + #include <linux/map_to_7segment.h> + #include <asm/txx9/generic.h> +@@ -37,8 +37,8 @@ int txx9_7segled_putc(unsigned int pos, + return 0; + } + +-static ssize_t ascii_store(struct sys_device *dev, +- struct sysdev_attribute *attr, ++static ssize_t ascii_store(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t size) + { + unsigned int ch = dev->id; +@@ -46,8 +46,8 @@ static ssize_t ascii_store(struct sys_de + return size; + } + +-static ssize_t raw_store(struct sys_device *dev, +- struct sysdev_attribute *attr, ++static ssize_t raw_store(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t size) + { + unsigned int ch = dev->id; +@@ -55,19 +55,19 @@ static ssize_t raw_store(struct sys_devi + return size; + } + +-static SYSDEV_ATTR(ascii, 0200, NULL, ascii_store); +-static SYSDEV_ATTR(raw, 0200, NULL, raw_store); ++static DEVICE_ATTR(ascii, 0200, NULL, ascii_store); ++static DEVICE_ATTR(raw, 0200, NULL, raw_store); + +-static ssize_t map_seg7_show(struct sysdev_class *class, +- struct sysdev_class_attribute *attr, ++static ssize_t map_seg7_show(struct device *dev, ++ struct device_attribute *attr, + char *buf) + { + memcpy(buf, &txx9_seg7map, sizeof(txx9_seg7map)); + return sizeof(txx9_seg7map); + } + +-static ssize_t map_seg7_store(struct sysdev_class *class, +- struct sysdev_class_attribute *attr, ++static ssize_t map_seg7_store(struct device *dev, ++ struct device_attribute *attr, + const char *buf, size_t size) + { + if (size != sizeof(txx9_seg7map)) +@@ -76,10 +76,11 @@ static ssize_t map_seg7_store(struct sys + return size; + } + +-static SYSDEV_CLASS_ATTR(map_seg7, 0600, map_seg7_show, map_seg7_store); ++static DEVICE_ATTR(map_seg7, 0600, map_seg7_show, map_seg7_store); + +-static struct sysdev_class tx_7segled_sysdev_class = { +- .name = "7segled", ++static struct bus_type tx_7segled_subsys = { ++ .name = "7segled", ++ .dev_name = "7segled", + }; + + static int __init tx_7segled_init_sysfs(void) +@@ -87,26 +88,25 @@ static int __init tx_7segled_init_sysfs( + int error, i; + if (!tx_7segled_num) + return -ENODEV; +- error = sysdev_class_register(&tx_7segled_sysdev_class); ++ error = subsys_system_register(&tx_7segled_subsys); + if (error) + return error; +- error = sysdev_class_create_file(&tx_7segled_sysdev_class, +- &attr_map_seg7); ++ error = device_create_file(tx_7segled_subsys.dev_root, &dev_attr_map_seg7); + if (error) + return error; + for (i = 0; i < tx_7segled_num; i++) { +- struct sys_device *dev; ++ struct device *dev; + dev = kzalloc(sizeof(*dev), GFP_KERNEL); + if (!dev) { + error = -ENODEV; + break; + } + dev->id = i; +- dev->cls = &tx_7segled_sysdev_class; +- error = sysdev_register(dev); ++ dev->dev = &tx_7segled_subsys; ++ error = device_register(dev); + if (!error) { +- sysdev_create_file(dev, &attr_ascii); +- sysdev_create_file(dev, &attr_raw); ++ device_create_file(dev, &dev_attr_ascii); ++ device_create_file(dev, &dev_attr_raw); + } + } + return error; diff --git a/18-mips-txx9_sram.patch b/18-mips-txx9_sram.patch new file mode 100644 index 0000000..ff3fdf1 --- /dev/null +++ b/18-mips-txx9_sram.patch @@ -0,0 +1,104 @@ +From: Kay Sievers <kay.sievers@vrfy.org> +Subject: mips: txx9_sram - convert sysdev_class to a regular subsystem + +After all sysdev classes are ported to regular driver core entities, the +sysdev implementation will be entirely removed from the kernel. + +Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> +--- + arch/mips/txx9/generic/setup.c | 34 ++++++++++++++++------------------ + 1 file changed, 16 insertions(+), 18 deletions(-) + +--- a/arch/mips/txx9/generic/setup.c ++++ b/arch/mips/txx9/generic/setup.c +@@ -22,7 +22,7 @@ + #include <linux/serial_core.h> + #include <linux/mtd/physmap.h> + #include <linux/leds.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + #include <linux/slab.h> + #include <linux/irq.h> + #include <asm/bootinfo.h> +@@ -897,10 +897,13 @@ void __init txx9_aclc_init(unsigned long + #endif + } + +-static struct sysdev_class txx9_sramc_sysdev_class; ++static struct bus_type txx9_sramc_subsys = { ++ .name = "txx9_sram", ++ .dev_name = "txx9_sram", ++}; + +-struct txx9_sramc_sysdev { +- struct sys_device dev; ++struct txx9_sramc_dev { ++ struct device dev; + struct bin_attribute bindata_attr; + void __iomem *base; + }; +@@ -909,7 +912,7 @@ static ssize_t txx9_sram_read(struct fil + struct bin_attribute *bin_attr, + char *buf, loff_t pos, size_t size) + { +- struct txx9_sramc_sysdev *dev = bin_attr->private; ++ struct txx9_sramc_dev *dev = bin_attr->private; + size_t ramsize = bin_attr->size; + + if (pos >= ramsize) +@@ -924,7 +927,7 @@ static ssize_t txx9_sram_write(struct fi + struct bin_attribute *bin_attr, + char *buf, loff_t pos, size_t size) + { +- struct txx9_sramc_sysdev *dev = bin_attr->private; ++ struct txx9_sramc_dev *dev = bin_attr->private; + size_t ramsize = bin_attr->size; + + if (pos >= ramsize) +@@ -937,18 +940,13 @@ static ssize_t txx9_sram_write(struct fi + + void __init txx9_sramc_init(struct resource *r) + { +- struct txx9_sramc_sysdev *dev; ++ struct txx9_sramc_dev *dev; + size_t size; + int err; + +- if (!txx9_sramc_sysdev_class.name) { +- txx9_sramc_sysdev_class.name = "txx9_sram"; +- err = sysdev_class_register(&txx9_sramc_sysdev_class); +- if (err) { +- txx9_sramc_sysdev_class.name = NULL; +- return; +- } +- } ++ err = subsys_system_register(&txx9_sramc_subsys, NULL); ++ if (err) ++ return; + dev = kzalloc(sizeof(*dev), GFP_KERNEL); + if (!dev) + return; +@@ -956,7 +954,7 @@ void __init txx9_sramc_init(struct resou + dev->base = ioremap(r->start, size); + if (!dev->base) + goto exit; +- dev->dev.cls = &txx9_sramc_sysdev_class; ++ dev->dev.bus = &txx9_sramc_subsys; + sysfs_bin_attr_init(&dev->bindata_attr); + dev->bindata_attr.attr.name = "bindata"; + dev->bindata_attr.attr.mode = S_IRUSR | S_IWUSR; +@@ -964,12 +962,12 @@ void __init txx9_sramc_init(struct resou + dev->bindata_attr.write = txx9_sram_write; + dev->bindata_attr.size = size; + dev->bindata_attr.private = dev; +- err = sysdev_register(&dev->dev); ++ err = device_register(&dev->dev); + if (err) + goto exit; + err = sysfs_create_bin_file(&dev->dev.kobj, &dev->bindata_attr); + if (err) { +- sysdev_unregister(&dev->dev); ++ device_unregister(&dev->dev); + goto exit; + } + return; diff --git a/19-m68k-gpio.patch b/19-m68k-gpio.patch new file mode 100644 index 0000000..021746b --- /dev/null +++ b/19-m68k-gpio.patch @@ -0,0 +1,40 @@ +From: Kay Sievers <kay.sievers@vrfy.org> +Subject: m86k: gpio - convert sysdev_class to a regular subsystem + +After all sysdev classes are ported to regular driver core entities, the +sysdev implementation will be entirely removed from the kernel. + +Signed-off-by: Kay Sievers <kay.sievers@vrfy.org> +--- + arch/m68k/platform/coldfire/gpio.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +--- a/arch/m68k/platform/coldfire/gpio.c ++++ b/arch/m68k/platform/coldfire/gpio.c +@@ -15,7 +15,7 @@ + + #include <linux/kernel.h> + #include <linux/init.h> +-#include <linux/sysdev.h> ++#include <linux/device.h> + + #include <asm/gpio.h> + #include <asm/pinmux.h> +@@ -115,13 +115,14 @@ void mcf_gpio_free(struct gpio_chip *chi + mcf_pinmux_release(mcf_chip->gpio_to_pinmux[offset], 0); + } + +-struct sysdev_class mcf_gpio_sysclass = { +- .name = "gpio", ++struct bus_type mcf_gpio_subsys = { ++ .name = "gpio", ++ .dev_name = "gpio", + }; + + static int __init mcf_gpio_sysinit(void) + { +- return sysdev_class_register(&mcf_gpio_sysclass); ++ return subsys_system_register(&mcf_gpio_subsys, NULL); + } + + core_initcall(mcf_gpio_sysinit); @@ -10,5 +10,9 @@ 12-power-cmm.patch 13-power-qe_ic.patch 14-power-suspend.patch +15-sh-intc.patch +16-sh-dma.patch +17-mips-txx9-7segled.patch +18-mips-txx9_sram.patch +19-m68k-gpio.patch 99-core-remove.patch - |