diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt')
-rw-r--r-- | recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt b/recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt new file mode 100644 index 0000000000..93859bdebd --- /dev/null +++ b/recipes/linux/linux-efika-2.6.20/0016-macintosh-Use-the-new-of_device-common-uevent-handler.txt @@ -0,0 +1,130 @@ +From 2507b27c0841752a6f419439896fcb089fa4a5ba Mon Sep 17 00:00:00 2001 +From: Sylvain Munaut <tnt@246tNt.com> +Date: Sat, 23 Dec 2006 23:13:56 +0100 +Subject: [PATCH] [PATCH] macintosh: Use the new of_device common uevent handler + +The generation of the uevent is now common to all bus using +of_device. + +Signed-off-by: Sylvain Munaut <tnt@246tNt.com> +--- + drivers/macintosh/macio_asic.c | 98 +--------------------------------------- + 1 files changed, 1 insertions(+), 97 deletions(-) + +diff --git a/drivers/macintosh/macio_asic.c b/drivers/macintosh/macio_asic.c +index d562160..e851266 100644 +--- a/drivers/macintosh/macio_asic.c ++++ b/drivers/macintosh/macio_asic.c +@@ -134,108 +134,12 @@ static int macio_device_resume(struct device * dev) + return 0; + } + +-static int macio_uevent(struct device *dev, char **envp, int num_envp, +- char *buffer, int buffer_size) +-{ +- struct macio_dev * macio_dev; +- struct of_device * of; +- char *scratch; +- const char *compat, *compat2; +- +- int i = 0; +- int length, cplen, cplen2, seen = 0; +- +- if (!dev) +- return -ENODEV; +- +- macio_dev = to_macio_device(dev); +- if (!macio_dev) +- return -ENODEV; +- +- of = &macio_dev->ofdev; +- +- /* stuff we want to pass to /sbin/hotplug */ +- envp[i++] = scratch = buffer; +- length = scnprintf (scratch, buffer_size, "OF_NAME=%s", of->node->name); +- ++length; +- buffer_size -= length; +- if ((buffer_size <= 0) || (i >= num_envp)) +- return -ENOMEM; +- scratch += length; +- +- envp[i++] = scratch; +- length = scnprintf (scratch, buffer_size, "OF_TYPE=%s", of->node->type); +- ++length; +- buffer_size -= length; +- if ((buffer_size <= 0) || (i >= num_envp)) +- return -ENOMEM; +- scratch += length; +- +- /* Since the compatible field can contain pretty much anything +- * it's not really legal to split it out with commas. We split it +- * up using a number of environment variables instead. */ +- +- compat = get_property(of->node, "compatible", &cplen); +- compat2 = compat; +- cplen2= cplen; +- while (compat && cplen > 0) { +- envp[i++] = scratch; +- length = scnprintf (scratch, buffer_size, +- "OF_COMPATIBLE_%d=%s", seen, compat); +- ++length; +- buffer_size -= length; +- if ((buffer_size <= 0) || (i >= num_envp)) +- return -ENOMEM; +- scratch += length; +- length = strlen (compat) + 1; +- compat += length; +- cplen -= length; +- seen++; +- } +- +- envp[i++] = scratch; +- length = scnprintf (scratch, buffer_size, "OF_COMPATIBLE_N=%d", seen); +- ++length; +- buffer_size -= length; +- if ((buffer_size <= 0) || (i >= num_envp)) +- return -ENOMEM; +- scratch += length; +- +- envp[i++] = scratch; +- length = scnprintf (scratch, buffer_size, "MODALIAS=of:N%sT%s", +- of->node->name, of->node->type); +- /* overwrite '\0' */ +- buffer_size -= length; +- if ((buffer_size <= 0) || (i >= num_envp)) +- return -ENOMEM; +- scratch += length; +- +- if (!compat2) { +- compat2 = ""; +- cplen2 = 1; +- } +- while (cplen2 > 0) { +- length = snprintf (scratch, buffer_size, "C%s", compat2); +- buffer_size -= length; +- if (buffer_size <= 0) +- return -ENOMEM; +- scratch += length; +- length = strlen (compat2) + 1; +- compat2 += length; +- cplen2 -= length; +- } +- +- envp[i] = NULL; +- +- return 0; +-} +- + extern struct device_attribute macio_dev_attrs[]; + + struct bus_type macio_bus_type = { + .name = "macio", + .match = macio_bus_match, +- .uevent = macio_uevent, ++ .uevent = of_device_uevent, + .probe = macio_device_probe, + .remove = macio_device_remove, + .shutdown = macio_device_shutdown, +-- +1.4.4.2 + |