Hi all, currently arch/i386/kernel/dmi_scan.c file looks like complete mess. Interfacing with other kernel subsystem made using ad-hoc ways, mostly with ugly global variables, additionaly coding style is ... not good. So these patches appear: patch-dmi-1-matches - simplify DMI blacklist table by removing the need to fill unused slots with NO_MATCH macro. patch-dmi-2-api - separate and export dmi_check_system() function (along with some needed declarations) which checks given DMI id table against system DMI data and runs callback functions when necessary. patch-dmi-3-whitespace - various coding style cleanups. patch-dmi-4-sonypi - make sonypi driver use dmi_check_system() function and remove is_sony_vaio_laptop global variable. patch-dmi-5-apm - make APM BIOS driver use dmi_check_system() function and move all related quirks into apm.c. patch-dmi-6-pciirq - make pci irq routing code use dmi_check_system() function and make broken_hp_bios_irq9 variable static. patch-dmi-7-smbus - make PIIX4 I2C use dmi_check_system() function and remove is_unsafe_smbus global variable. Please take a look. Best regards. -- Andrey Panin | Linux and UNIX system administrator pazke@donpac.ru | PGP key: wwwkeys.pgp.net