X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=include%2Flinux%2Fserio.h;h=e0417e4d3f15ad3fdd66ef845c7ef8854f72aaae;hb=1597cd82504174c816c39cefabacd8a27b993ce0;hp=3a697cc6ecaeccd6476e0db37adef8ca53612b2f;hpb=7d12e780e003f93433d49ce78cfedf4b4c52adc5;p=safe%2Fjmp%2Flinux-2.6 diff --git a/include/linux/serio.h b/include/linux/serio.h index 3a697cc..e0417e4 100644 --- a/include/linux/serio.h +++ b/include/linux/serio.h @@ -41,6 +41,7 @@ struct serio { void (*stop)(struct serio *); struct serio *parent, *child; + unsigned int depth; /* level of nesting in serio hierarchy */ struct serio_driver *drv; /* accessed from interrupt, must be protected by serio->lock and serio->sem */ struct mutex drv_mutex; /* protects serio->drv so attributes can pin driver */ @@ -84,18 +85,12 @@ static inline void serio_register_port(struct serio *serio) void serio_unregister_port(struct serio *serio); void serio_unregister_child_port(struct serio *serio); -void __serio_unregister_port_delayed(struct serio *serio, struct module *owner); -static inline void serio_unregister_port_delayed(struct serio *serio) -{ - __serio_unregister_port_delayed(serio, THIS_MODULE); -} -void __serio_register_driver(struct serio_driver *drv, struct module *owner); -static inline void serio_register_driver(struct serio_driver *drv) +int __serio_register_driver(struct serio_driver *drv, struct module *owner, const char *mod_name); +static inline int __must_check serio_register_driver(struct serio_driver *drv) { - __serio_register_driver(drv, THIS_MODULE); + return __serio_register_driver(drv, THIS_MODULE, KBUILD_MODNAME); } - void serio_unregister_driver(struct serio_driver *drv); static inline int serio_write(struct serio *serio, unsigned char data) @@ -112,12 +107,6 @@ static inline void serio_drv_write_wakeup(struct serio *serio) serio->drv->write_wakeup(serio); } -static inline void serio_cleanup(struct serio *serio) -{ - if (serio->drv && serio->drv->cleanup) - serio->drv->cleanup(serio); -} - /* * Use the following functions to manipulate serio's per-port * driver-specific data. @@ -185,7 +174,7 @@ static inline void serio_unpin_driver(struct serio *serio) #define SERIO_8042_XL 0x06 /* - * Serio types + * Serio protocols */ #define SERIO_UNKNOWN 0x00 #define SERIO_MSC 0x01 @@ -219,5 +208,11 @@ static inline void serio_unpin_driver(struct serio *serio) #define SERIO_PENMOUNT 0x31 #define SERIO_TOUCHRIGHT 0x32 #define SERIO_TOUCHWIN 0x33 +#define SERIO_TAOSEVM 0x34 +#define SERIO_FUJITSU 0x35 +#define SERIO_ZHENHUA 0x36 +#define SERIO_INEXIO 0x37 +#define SERIO_TOUCHIT213 0x38 +#define SERIO_W8001 0x39 #endif