Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[PATCH] DMI: move dmi_scan.c from arch/i386 to drivers/firmware/

dmi_scan.c is arch-independent and is used by i386, x86_64, and ia64.
Currently all three arches compile it from arch/i386, which means that ia64
and x86_64 depend on things in arch/i386 that they wouldn't otherwise care
about.

This is simply "mv arch/i386/kernel/dmi_scan.c drivers/firmware/" (removing
trailing whitespace) and the associated Makefile changes. All three
architectures already set CONFIG_DMI in their top-level Kconfig files.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Andi Kleen <ak@muc.de>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Andrey Panin <pazke@orbita1.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Bjorn Helgaas and committed by
Greg Kroah-Hartman
4f705ae3 02669492

+11 -13
+1 -1
arch/i386/kernel/Makefile
··· 6 6 7 7 obj-y := process.o semaphore.o signal.o entry.o traps.o irq.o \ 8 8 ptrace.o time.o ioport.o ldt.o setup.o i8259.o sys_i386.o \ 9 - pci-dma.o i386_ksyms.o i387.o dmi_scan.o bootflag.o \ 9 + pci-dma.o i386_ksyms.o i387.o bootflag.o \ 10 10 quirks.o i8237.o topology.o alternative.o 11 11 12 12 obj-y += cpu/
+6 -6
arch/i386/kernel/dmi_scan.c drivers/firmware/dmi_scan.c
··· 27 27 else 28 28 printk(KERN_ERR "dmi_string: out of memory.\n"); 29 29 } 30 - } 30 + } 31 31 32 32 return str; 33 33 } ··· 41 41 { 42 42 u8 *buf, *data; 43 43 int i = 0; 44 - 44 + 45 45 buf = dmi_ioremap(base, len); 46 46 if (buf == NULL) 47 47 return -1; ··· 49 49 data = buf; 50 50 51 51 /* 52 - * Stop when we see all the items the table claimed to have 53 - * OR we run off the end of the table (also happens) 54 - */ 52 + * Stop when we see all the items the table claimed to have 53 + * OR we run off the end of the table (also happens) 54 + */ 55 55 while ((i < num) && (data - buf + sizeof(struct dmi_header)) <= len) { 56 56 struct dmi_header *dm = (struct dmi_header *)data; 57 57 /* ··· 75 75 { 76 76 u8 sum = 0; 77 77 int a; 78 - 78 + 79 79 for (a = 0; a < 15; a++) 80 80 sum += buf[a]; 81 81
+1 -2
arch/ia64/kernel/Makefile
··· 7 7 obj-y := acpi.o entry.o efi.o efi_stub.o gate-data.o fsys.o ia64_ksyms.o irq.o irq_ia64.o \ 8 8 irq_lsapic.o ivt.o machvec.o pal.o patch.o process.o perfmon.o ptrace.o sal.o \ 9 9 salinfo.o semaphore.o setup.o signal.o sys_ia64.o time.o traps.o unaligned.o \ 10 - unwind.o mca.o mca_asm.o topology.o dmi_scan.o 10 + unwind.o mca.o mca_asm.o topology.o 11 11 12 12 obj-$(CONFIG_IA64_BRL_EMU) += brl_emu.o 13 13 obj-$(CONFIG_IA64_GENERIC) += acpi-ext.o ··· 30 30 obj-$(CONFIG_KPROBES) += kprobes.o jprobes.o 31 31 obj-$(CONFIG_IA64_UNCACHED_ALLOCATOR) += uncached.o 32 32 mca_recovery-y += mca_drv.o mca_drv_asm.o 33 - dmi_scan-y += ../../i386/kernel/dmi_scan.o 34 33 35 34 # The gate DSO image is built using a special linker script. 36 35 targets += gate.so gate-syms.o
+1 -3
arch/x86_64/kernel/Makefile
··· 8 8 ptrace.o time.o ioport.o ldt.o setup.o i8259.o sys_x86_64.o \ 9 9 x8664_ksyms.o i387.o syscall.o vsyscall.o \ 10 10 setup64.o bootflag.o e820.o reboot.o quirks.o i8237.o \ 11 - dmi_scan.o pci-dma.o pci-nommu.o 11 + pci-dma.o pci-nommu.o 12 12 13 13 obj-$(CONFIG_X86_MCE) += mce.o 14 14 obj-$(CONFIG_X86_MCE_INTEL) += mce_intel.o ··· 49 49 quirks-y += ../../i386/kernel/quirks.o 50 50 i8237-y += ../../i386/kernel/i8237.o 51 51 msr-$(subst m,y,$(CONFIG_X86_MSR)) += ../../i386/kernel/msr.o 52 - dmi_scan-y += ../../i386/kernel/dmi_scan.o 53 -
+2 -1
drivers/firmware/Makefile
··· 1 1 # 2 2 # Makefile for the linux kernel. 3 3 # 4 - obj-$(CONFIG_EDD) += edd.o 4 + obj-$(CONFIG_DMI) += dmi_scan.o 5 + obj-$(CONFIG_EDD) += edd.o 5 6 obj-$(CONFIG_EFI_VARS) += efivars.o 6 7 obj-$(CONFIG_EFI_PCDP) += pcdp.o 7 8 obj-$(CONFIG_DELL_RBU) += dell_rbu.o