The patch titled Change ACPI to use dev_archdata instead of firmware_data has been removed from the -mm tree. Its filename was change-acpi-to-use-dev_archdata-instead-of-firmware_data.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: Change ACPI to use dev_archdata instead of firmware_data From: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Change ACPI to use dev_archdata instead of firmware_data This patch changes ACPI to use the new dev_archdata on i386, x86_64 and ia64 (is there any other arch using ACPI ?) to store it's acpi_handle. It also removes the firmware_data field from struct device as this was the only user. Only build-tested on x86 Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx> Cc: Greg KH <greg@xxxxxxxxx> Acked-by: Andi Kleen <ak@xxxxxxx> Acked-by: David Howells <dhowells@xxxxxxxxxx> Cc: "Brown, Len" <len.brown@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/acpi/glue.c | 20 +++++++++++--------- include/acpi/acpi_bus.h | 2 +- include/asm-i386/device.h | 10 +++++++++- include/asm-ia64/device.h | 10 +++++++++- include/asm-x86_64/device.h | 10 +++++++++- include/linux/device.h | 2 -- 6 files changed, 39 insertions(+), 15 deletions(-) diff -puN drivers/acpi/glue.c~change-acpi-to-use-dev_archdata-instead-of-firmware_data drivers/acpi/glue.c --- a/drivers/acpi/glue.c~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/drivers/acpi/glue.c @@ -271,9 +271,9 @@ static int acpi_bind_one(struct device * { acpi_status status; - if (dev->firmware_data) { + if (dev->archdata.acpi_handle) { printk(KERN_WARNING PREFIX - "Drivers changed 'firmware_data' for %s\n", dev->bus_id); + "Drivers changed 'acpi_handle' for %s\n", dev->bus_id); return -EINVAL; } get_device(dev); @@ -282,25 +282,26 @@ static int acpi_bind_one(struct device * put_device(dev); return -EINVAL; } - dev->firmware_data = handle; + dev->archdata.acpi_handle = handle; return 0; } static int acpi_unbind_one(struct device *dev) { - if (!dev->firmware_data) + if (!dev->archdata.acpi_handle) return 0; - if (dev == acpi_get_physical_device(dev->firmware_data)) { + if (dev == acpi_get_physical_device(dev->archdata.acpi_handle)) { /* acpi_get_physical_device increase refcnt by one */ put_device(dev); - acpi_detach_data(dev->firmware_data, acpi_glue_data_handler); - dev->firmware_data = NULL; + acpi_detach_data(dev->archdata.acpi_handle, + acpi_glue_data_handler); + dev->archdata.acpi_handle = NULL; /* acpi_bind_one increase refcnt by one */ put_device(dev); } else { printk(KERN_ERR PREFIX - "Oops, 'firmware_data' corrupt for %s\n", dev->bus_id); + "Oops, 'acpi_handle' corrupt for %s\n", dev->bus_id); } return 0; } @@ -332,7 +333,8 @@ static int acpi_platform_notify(struct d if (!ret) { struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL }; - acpi_get_name(dev->firmware_data, ACPI_FULL_PATHNAME, &buffer); + acpi_get_name(dev->archdata.acpi_handle, + ACPI_FULL_PATHNAME, &buffer); DBG("Device %s -> %s\n", dev->bus_id, (char *)buffer.pointer); kfree(buffer.pointer); } else diff -puN include/acpi/acpi_bus.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data include/acpi/acpi_bus.h --- a/include/acpi/acpi_bus.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/include/acpi/acpi_bus.h @@ -357,7 +357,7 @@ struct device *acpi_get_physical_device( /* helper */ acpi_handle acpi_get_child(acpi_handle, acpi_integer); acpi_handle acpi_get_pci_rootbridge_handle(unsigned int, unsigned int); -#define DEVICE_ACPI_HANDLE(dev) ((acpi_handle)((dev)->firmware_data)) +#define DEVICE_ACPI_HANDLE(dev) ((acpi_handle)((dev)->archdata.acpi_handle)) #endif /* CONFIG_ACPI */ diff -puN include/asm-i386/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data include/asm-i386/device.h --- a/include/asm-i386/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/include/asm-i386/device.h @@ -3,5 +3,13 @@ * * This file is released under the GPLv2 */ -#include <asm-generic/device.h> +#ifndef _ASM_I386_DEVICE_H +#define _ASM_I386_DEVICE_H +struct dev_archdata { +#ifdef CONFIG_ACPI + void *acpi_handle; +#endif +}; + +#endif /* _ASM_I386_DEVICE_H */ diff -puN include/asm-ia64/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data include/asm-ia64/device.h --- a/include/asm-ia64/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/include/asm-ia64/device.h @@ -3,5 +3,13 @@ * * This file is released under the GPLv2 */ -#include <asm-generic/device.h> +#ifndef _ASM_IA64_DEVICE_H +#define _ASM_IA64_DEVICE_H +struct dev_archdata { +#ifdef CONFIG_ACPI + void *acpi_handle; +#endif +}; + +#endif /* _ASM_IA64_DEVICE_H */ diff -puN include/asm-x86_64/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data include/asm-x86_64/device.h --- a/include/asm-x86_64/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/include/asm-x86_64/device.h @@ -3,5 +3,13 @@ * * This file is released under the GPLv2 */ -#include <asm-generic/device.h> +#ifndef _ASM_X86_64_DEVICE_H +#define _ASM_X86_64_DEVICE_H +struct dev_archdata { +#ifdef CONFIG_ACPI + void *acpi_handle; +#endif +}; + +#endif /* _ASM_X86_64_DEVICE_H */ diff -puN include/linux/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data include/linux/device.h --- a/include/linux/device.h~change-acpi-to-use-dev_archdata-instead-of-firmware_data +++ a/include/linux/device.h @@ -344,8 +344,6 @@ struct device { void *driver_data; /* data private to the driver */ void *platform_data; /* Platform specific data, device core doesn't touch it */ - void *firmware_data; /* Firmware specific data (e.g. ACPI, - BIOS data),reserved for device core*/ struct dev_pm_info power; u64 *dma_mask; /* dma mask (if dma'able device) */ _ Patches currently in -mm which might be from benh@xxxxxxxxxxxxxxxxxxx are origin.patch hugetlb-prepare_hugepage_range-check-offset-too.patch macintosh-mangle-caps-lock-events-on-adb-keyboards.patch ppc-booke-reg-mcsr-msg-misquoted.patch ppc4xx-compilation-fixes-for-pci-less-configs.patch powerpc-add-of_platform-support-for-ohci-bigendian-hc.patch shared-page-table-for-hugetlb-page-v4.patch htlb-forget-rss-with-pt-sharing.patch correct-misc_register-return-code-handling-in-several-drivers.patch generic-bug-implementation.patch generic-bug-for-i386.patch generic-bug-for-x86-64.patch use-generic-bug-for-ppc.patch bug-test-1.patch log2-implement-a-general-integer-log2-facility-in-the-kernel.patch log2-implement-a-general-integer-log2-facility-in-the-kernel-ppc-fix.patch log2-alter-roundup_pow_of_two-so-that-it-can-use-a-ilog2-on-a-constant.patch log2-alter-get_order-so-that-it-can-make-use-of-ilog2-on-a-constant.patch log2-provide-ilog2-fallbacks-for-powerpc.patch add-missing-page_copy-export-for-ppc-and-powerpc.patch ioremap-balanced-with-iounmap-for-drivers-video-platinumfb.patch ioremap-balanced-with-iounmap-for-drivers-video-offb.patch ioremap-balanced-with-iounmap-for-drivers-video-macfb.patch ioremap-balanced-with-iounmap-for-drivers-video-atyfb_base.patch radeonfb-atom-bios-support-new-head-code-fixes.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html