diff options
author | Alex Dubov <oakad@yahoo.com> | 2007-04-12 02:59:14 -0400 |
---|---|---|
committer | Pierre Ossman <drzeus@drzeus.cx> | 2007-05-01 07:04:13 -0400 |
commit | e23f2b8a1a52c00f0150659eb0bfde3a73976ffe (patch) | |
tree | cd12f24c3b414e01929c323d23dd86e8bc5384f0 /include/linux | |
parent | 8dc4a61eca31dd45a9d45f9bc9c67d959f0f6cbd (diff) |
tifm: simplify bus match and uevent handlers
Remove code duplicating the kernel functionality and clean up data
structures involved in driver matching.
Signed-off-by: Alex Dubov <oakad@yahoo.com>
Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/tifm.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/include/linux/tifm.h b/include/linux/tifm.h index ee1056396b95..57b2653494cf 100644 --- a/include/linux/tifm.h +++ b/include/linux/tifm.h | |||
@@ -74,13 +74,19 @@ enum { | |||
74 | #define TIFM_DMA_TX 0x00008000 /* Meaning of this constant is unverified */ | 74 | #define TIFM_DMA_TX 0x00008000 /* Meaning of this constant is unverified */ |
75 | #define TIFM_DMA_EN 0x00000001 /* Meaning of this constant is unverified */ | 75 | #define TIFM_DMA_EN 0x00000001 /* Meaning of this constant is unverified */ |
76 | 76 | ||
77 | typedef enum {FM_NULL = 0, FM_XD = 0x01, FM_MS = 0x02, FM_SD = 0x03} tifm_media_id; | 77 | #define TIFM_TYPE_XD 1 |
78 | #define TIFM_TYPE_MS 2 | ||
79 | #define TIFM_TYPE_SD 3 | ||
80 | |||
81 | struct tifm_device_id { | ||
82 | unsigned char type; | ||
83 | }; | ||
78 | 84 | ||
79 | struct tifm_driver; | 85 | struct tifm_driver; |
80 | struct tifm_dev { | 86 | struct tifm_dev { |
81 | char __iomem *addr; | 87 | char __iomem *addr; |
82 | spinlock_t lock; | 88 | spinlock_t lock; |
83 | tifm_media_id media_id; | 89 | unsigned char type; |
84 | unsigned int socket_id; | 90 | unsigned int socket_id; |
85 | 91 | ||
86 | void (*card_event)(struct tifm_dev *sock); | 92 | void (*card_event)(struct tifm_dev *sock); |
@@ -90,7 +96,7 @@ struct tifm_dev { | |||
90 | }; | 96 | }; |
91 | 97 | ||
92 | struct tifm_driver { | 98 | struct tifm_driver { |
93 | tifm_media_id *id_table; | 99 | struct tifm_device_id *id_table; |
94 | int (*probe)(struct tifm_dev *dev); | 100 | int (*probe)(struct tifm_dev *dev); |
95 | void (*remove)(struct tifm_dev *dev); | 101 | void (*remove)(struct tifm_dev *dev); |
96 | int (*suspend)(struct tifm_dev *dev, | 102 | int (*suspend)(struct tifm_dev *dev, |
@@ -141,8 +147,4 @@ static inline void tifm_set_drvdata(struct tifm_dev *dev, void *data) | |||
141 | dev_set_drvdata(&dev->dev, data); | 147 | dev_set_drvdata(&dev->dev, data); |
142 | } | 148 | } |
143 | 149 | ||
144 | struct tifm_device_id { | ||
145 | tifm_media_id media_id; | ||
146 | }; | ||
147 | |||
148 | #endif | 150 | #endif |