git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
memstick: initial commit for Sony MemoryStick support
[safe/jmp/linux-2.6]
/
drivers
/
misc
/
tifm_core.c
diff --git
a/drivers/misc/tifm_core.c
b/drivers/misc/tifm_core.c
index
d195fb0
..
82dc72a
100644
(file)
--- a/
drivers/misc/tifm_core.c
+++ b/
drivers/misc/tifm_core.c
@@
-57,16
+57,11
@@
static int tifm_bus_match(struct device *dev, struct device_driver *drv)
return 0;
}
return 0;
}
-static int tifm_uevent(struct device *dev, char **envp, int num_envp,
- char *buffer, int buffer_size)
+static int tifm_uevent(struct device *dev, struct kobj_uevent_env *env)
{
struct tifm_dev *sock = container_of(dev, struct tifm_dev, dev);
{
struct tifm_dev *sock = container_of(dev, struct tifm_dev, dev);
- int i = 0;
- int length = 0;
- if (add_uevent_var(envp, num_envp, &i, buffer, buffer_size, &length,
- "TIFM_CARD_TYPE=%s",
- tifm_media_type_name(sock->type, 1)))
+ if (add_uevent_var(env, "TIFM_CARD_TYPE=%s", tifm_media_type_name(sock->type, 1)))
return -ENOMEM;
return 0;
return -ENOMEM;
return 0;
@@
-165,16
+160,16
@@
static struct bus_type tifm_bus_type = {
.resume = tifm_device_resume
};
.resume = tifm_device_resume
};
-static void tifm_free(struct
class_device *c
dev)
+static void tifm_free(struct
device *
dev)
{
{
- struct tifm_adapter *fm = container_of(
cdev, struct tifm_adapter, c
dev);
+ struct tifm_adapter *fm = container_of(
dev, struct tifm_adapter,
dev);
kfree(fm);
}
static struct class tifm_adapter_class = {
.name = "tifm_adapter",
kfree(fm);
}
static struct class tifm_adapter_class = {
.name = "tifm_adapter",
- .release = tifm_free
+ .
dev_
release = tifm_free
};
struct tifm_adapter *tifm_alloc_adapter(unsigned int num_sockets,
};
struct tifm_adapter *tifm_alloc_adapter(unsigned int num_sockets,
@@
-185,9
+180,9
@@
struct tifm_adapter *tifm_alloc_adapter(unsigned int num_sockets,
fm = kzalloc(sizeof(struct tifm_adapter)
+ sizeof(struct tifm_dev*) * num_sockets, GFP_KERNEL);
if (fm) {
fm = kzalloc(sizeof(struct tifm_adapter)
+ sizeof(struct tifm_dev*) * num_sockets, GFP_KERNEL);
if (fm) {
- fm->
c
dev.class = &tifm_adapter_class;
- fm->
cdev.dev
= dev;
-
class_device_initialize(&fm->c
dev);
+ fm->dev.class = &tifm_adapter_class;
+ fm->
dev.parent
= dev;
+
device_initialize(&fm->
dev);
spin_lock_init(&fm->lock);
fm->num_sockets = num_sockets;
}
spin_lock_init(&fm->lock);
fm->num_sockets = num_sockets;
}
@@
-208,8
+203,8
@@
int tifm_add_adapter(struct tifm_adapter *fm)
if (rc)
return rc;
if (rc)
return rc;
- snprintf(fm->
cdev.clas
s_id, BUS_ID_SIZE, "tifm%u", fm->id);
- rc =
class_device_add(&fm->c
dev);
+ snprintf(fm->
dev.bu
s_id, BUS_ID_SIZE, "tifm%u", fm->id);
+ rc =
device_add(&fm->
dev);
if (rc) {
spin_lock(&tifm_adapter_lock);
idr_remove(&tifm_adapter_idr, fm->id);
if (rc) {
spin_lock(&tifm_adapter_lock);
idr_remove(&tifm_adapter_idr, fm->id);
@@
-233,13
+228,13
@@
void tifm_remove_adapter(struct tifm_adapter *fm)
spin_lock(&tifm_adapter_lock);
idr_remove(&tifm_adapter_idr, fm->id);
spin_unlock(&tifm_adapter_lock);
spin_lock(&tifm_adapter_lock);
idr_remove(&tifm_adapter_idr, fm->id);
spin_unlock(&tifm_adapter_lock);
-
class_device_del(&fm->c
dev);
+
device_del(&fm->
dev);
}
EXPORT_SYMBOL(tifm_remove_adapter);
void tifm_free_adapter(struct tifm_adapter *fm)
{
}
EXPORT_SYMBOL(tifm_remove_adapter);
void tifm_free_adapter(struct tifm_adapter *fm)
{
-
class_device_put(&fm->c
dev);
+
put_device(&fm->
dev);
}
EXPORT_SYMBOL(tifm_free_adapter);
}
EXPORT_SYMBOL(tifm_free_adapter);
@@
-266,9
+261,9
@@
struct tifm_dev *tifm_alloc_device(struct tifm_adapter *fm, unsigned int id,
sock->card_event = tifm_dummy_event;
sock->data_event = tifm_dummy_event;
sock->card_event = tifm_dummy_event;
sock->data_event = tifm_dummy_event;
- sock->dev.parent = fm->
cdev.dev
;
+ sock->dev.parent = fm->
dev.parent
;
sock->dev.bus = &tifm_bus_type;
sock->dev.bus = &tifm_bus_type;
- sock->dev.dma_mask = fm->
cdev.dev
->dma_mask;
+ sock->dev.dma_mask = fm->
dev.parent
->dma_mask;
sock->dev.release = tifm_free_device;
snprintf(sock->dev.bus_id, BUS_ID_SIZE,
sock->dev.release = tifm_free_device;
snprintf(sock->dev.bus_id, BUS_ID_SIZE,
@@
-289,6
+284,13
@@
void tifm_eject(struct tifm_dev *sock)
}
EXPORT_SYMBOL(tifm_eject);
}
EXPORT_SYMBOL(tifm_eject);
+int tifm_has_ms_pif(struct tifm_dev *sock)
+{
+ struct tifm_adapter *fm = dev_get_drvdata(sock->dev.parent);
+ return fm->has_ms_pif(fm, sock);
+}
+EXPORT_SYMBOL(tifm_has_ms_pif);
+
int tifm_map_sg(struct tifm_dev *sock, struct scatterlist *sg, int nents,
int direction)
{
int tifm_map_sg(struct tifm_dev *sock, struct scatterlist *sg, int nents,
int direction)
{