#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "light_ring.h" #include "led.h" #include "ssegment.h" #include "ec_version.h" #include "buzzer.h" #include "fan.h" #include "writeprotect.h" struct kobject *vfiec_kobj = NULL; static int __init all_driver_init(void) { int ret = 0; /* 创建 /sys/kernel/vfiec */ vfiec_kobj = kobject_create_and_add("vfiec", kernel_kobj); if (!vfiec_kobj) { ret = -ENOMEM; } writeprotect_init(); fan_init(); buzzer_init(); ec_version_init(); light_ring_init(); led_init(); ssegment_init(); printk(KERN_INFO "all_driver_init\n"); return ret; } static void __exit all_driver_exit(void) { writeprotect_exit(); fan_exit(); buzzer_exit(); ec_version_exit(); ssegment_exit(); led_exit(); light_ring_exit(); kobject_put(vfiec_kobj); } module_init(all_driver_init); module_exit(all_driver_exit); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Your Name"); MODULE_DESCRIPTION("Fixed I2C Bus Driver for Intel N97 (0000:00:1f.4)"); MODULE_VERSION("1.0");