diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-05 15:55:49 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-05 15:55:49 -0800 |
commit | d7906de1d774ca70d696d3047223bb3e5e759d92 (patch) | |
tree | 6065caea25668f9fd33c23a24047cecb2c5b5cd7 /drivers/pcmcia/socket_sysfs.c | |
parent | fbd91ac22229fdb89f0dd2eaa11dd663f2ba1a92 (diff) | |
parent | 725a6abfe37025975c125ace1c7da35f27ce5384 (diff) | |
download | op-kernel-dev-d7906de1d774ca70d696d3047223bb3e5e759d92.zip op-kernel-dev-d7906de1d774ca70d696d3047223bb3e5e759d92.tar.gz |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6
Diffstat (limited to 'drivers/pcmcia/socket_sysfs.c')
-rw-r--r-- | drivers/pcmcia/socket_sysfs.c | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/drivers/pcmcia/socket_sysfs.c b/drivers/pcmcia/socket_sysfs.c index 4a3150a..7a77446 100644 --- a/drivers/pcmcia/socket_sysfs.c +++ b/drivers/pcmcia/socket_sysfs.c @@ -42,35 +42,28 @@ static ssize_t pccard_show_type(struct class_device *dev, char *buf) { - int val; struct pcmcia_socket *s = to_socket(dev); if (!(s->state & SOCKET_PRESENT)) return -ENODEV; - s->ops->get_status(s, &val); - if (val & SS_CARDBUS) + if (s->state & SOCKET_CARDBUS) return sprintf(buf, "32-bit\n"); - if (val & SS_DETECT) - return sprintf(buf, "16-bit\n"); - return sprintf(buf, "invalid\n"); + return sprintf(buf, "16-bit\n"); } -static CLASS_DEVICE_ATTR(card_type, 0400, pccard_show_type, NULL); +static CLASS_DEVICE_ATTR(card_type, 0444, pccard_show_type, NULL); static ssize_t pccard_show_voltage(struct class_device *dev, char *buf) { - int val; struct pcmcia_socket *s = to_socket(dev); if (!(s->state & SOCKET_PRESENT)) return -ENODEV; - s->ops->get_status(s, &val); - if (val & SS_3VCARD) - return sprintf(buf, "3.3V\n"); - if (val & SS_XVCARD) - return sprintf(buf, "X.XV\n"); - return sprintf(buf, "5.0V\n"); + if (s->socket.Vcc) + return sprintf(buf, "%d.%dV\n", s->socket.Vcc / 10, + s->socket.Vcc % 10); + return sprintf(buf, "X.XV\n"); } -static CLASS_DEVICE_ATTR(card_voltage, 0400, pccard_show_voltage, NULL); +static CLASS_DEVICE_ATTR(card_voltage, 0444, pccard_show_voltage, NULL); static ssize_t pccard_show_vpp(struct class_device *dev, char *buf) { @@ -79,7 +72,7 @@ static ssize_t pccard_show_vpp(struct class_device *dev, char *buf) return -ENODEV; return sprintf(buf, "%d.%dV\n", s->socket.Vpp / 10, s->socket.Vpp % 10); } -static CLASS_DEVICE_ATTR(card_vpp, 0400, pccard_show_vpp, NULL); +static CLASS_DEVICE_ATTR(card_vpp, 0444, pccard_show_vpp, NULL); static ssize_t pccard_show_vcc(struct class_device *dev, char *buf) { @@ -88,7 +81,7 @@ static ssize_t pccard_show_vcc(struct class_device *dev, char *buf) return -ENODEV; return sprintf(buf, "%d.%dV\n", s->socket.Vcc / 10, s->socket.Vcc % 10); } -static CLASS_DEVICE_ATTR(card_vcc, 0400, pccard_show_vcc, NULL); +static CLASS_DEVICE_ATTR(card_vcc, 0444, pccard_show_vcc, NULL); static ssize_t pccard_store_insert(struct class_device *dev, const char *buf, size_t count) @@ -292,10 +285,9 @@ static ssize_t pccard_store_cis(struct kobject *kobj, char *buf, loff_t off, siz if (!(s->state & SOCKET_PRESENT)) return -ENODEV; - cis = kmalloc(sizeof(cisdump_t), GFP_KERNEL); + cis = kzalloc(sizeof(cisdump_t), GFP_KERNEL); if (!cis) return -ENOMEM; - memset(cis, 0, sizeof(cisdump_t)); cis->Length = count + 1; memcpy(cis->Data, buf, count); |