X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fmedia%2Fradio%2Fmiropcm20-rds.c;h=c1b1db65e66821544b541ca37eed4d9fa2491643;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=f98d4c50bcb0cec289a73bbd99616e35d32fc9d1;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/drivers/media/radio/miropcm20-rds.c b/drivers/media/radio/miropcm20-rds.c index f98d4c50b..c1b1db65e 100644 --- a/drivers/media/radio/miropcm20-rds.c +++ b/drivers/media/radio/miropcm20-rds.c @@ -14,6 +14,8 @@ #include #include #include +#include /* current, TASK_*, schedule_timeout() */ +#include #include #include "miropcm20-rds-core.h" @@ -46,22 +48,21 @@ static int rds_f_release(struct inode *in, struct file *fi) static void print_matrix(char *ch, char out[]) { - int j; + int j; for (j=7; j>=0; j--) { out[7-j] = ((*ch >> j) & 0x1) + '0'; } } -static ssize_t rds_f_read(struct file *file, char *buffer, size_t length, loff_t *offset) +static ssize_t rds_f_read(struct file *file, char __user *buffer, size_t length, loff_t *offset) { // i = sprintf(text_buffer, "length: %d, offset: %d\n", length, *offset); char c; char bits[8]; - current->state=TASK_UNINTERRUPTIBLE; - schedule_timeout(2*HZ); + msleep(2000); aci_rds_cmd(RDS_STATUS, &c, 1); print_matrix(&c, bits); if (copy_to_user(buffer, bits, 8)) @@ -114,7 +115,6 @@ static struct file_operations rds_fops = { static struct miscdevice rds_miscdev = { .minor = MISC_DYNAMIC_MINOR, .name = "radiotext", - .devfs_name = "v4l/rds/radiotext", .fops = &rds_fops, };