projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] m68k: namespace pollution fix (custom->amiga_custom)
[powerpc.git]
/
drivers
/
char
/
hvcs.c
diff --git
a/drivers/char/hvcs.c
b/drivers/char/hvcs.c
index
3236d24
..
831eb4e
100644
(file)
--- a/
drivers/char/hvcs.c
+++ b/
drivers/char/hvcs.c
@@
-456,12
+456,11
@@
static int hvcs_io(struct hvcs_struct *hvcsd)
/* remove the read masks */
hvcsd->todo_mask &= ~(HVCS_READ_MASK);
/* remove the read masks */
hvcsd->todo_mask &= ~(HVCS_READ_MASK);
- if (
(tty->flip.count + HVCS_BUFF_LEN) < TTY_FLIPBUF_SIZE
) {
+ if (
tty_buffer_request_room(tty, HVCS_BUFF_LEN) >= HVCS_BUFF_LEN
) {
got = hvc_get_chars(unit_address,
&buf[0],
HVCS_BUFF_LEN);
got = hvc_get_chars(unit_address,
&buf[0],
HVCS_BUFF_LEN);
- for (i=0;got && i<got;i++)
- tty_insert_flip_char(tty, buf[i], TTY_NORMAL);
+ tty_insert_flip_string(tty, buf, got);
}
/* Give the TTY time to process the data we just sent. */
}
/* Give the TTY time to process the data we just sent. */
@@
-469,10
+468,9
@@
static int hvcs_io(struct hvcs_struct *hvcsd)
hvcsd->todo_mask |= HVCS_QUICK_READ;
spin_unlock_irqrestore(&hvcsd->lock, flags);
hvcsd->todo_mask |= HVCS_QUICK_READ;
spin_unlock_irqrestore(&hvcsd->lock, flags);
- if (tty->flip.count) {
- /* This is synch because tty->low_latency == 1 */
+ /* This is synch because tty->low_latency == 1 */
+ if(got)
tty_flip_buffer_push(tty);
tty_flip_buffer_push(tty);
- }
if (!got) {
/* Do this _after_ the flip_buffer_push */
if (!got) {
/* Do this _after_ the flip_buffer_push */
@@
-527,7
+525,7
@@
static int khvcsd(void *unused)
static struct vio_device_id hvcs_driver_table[] __devinitdata= {
{"serial-server", "hvterm2"},
static struct vio_device_id hvcs_driver_table[] __devinitdata= {
{"serial-server", "hvterm2"},
- {
NULL,
}
+ {
"", ""
}
};
MODULE_DEVICE_TABLE(vio, hvcs_driver_table);
};
MODULE_DEVICE_TABLE(vio, hvcs_driver_table);
@@
-720,10
+718,13
@@
static int __devexit hvcs_remove(struct vio_dev *dev)
};
static struct vio_driver hvcs_vio_driver = {
};
static struct vio_driver hvcs_vio_driver = {
- .name = hvcs_driver_name,
.id_table = hvcs_driver_table,
.probe = hvcs_probe,
.remove = hvcs_remove,
.id_table = hvcs_driver_table,
.probe = hvcs_probe,
.remove = hvcs_remove,
+ .driver = {
+ .name = hvcs_driver_name,
+ .owner = THIS_MODULE,
+ }
};
/* Only called from hvcs_get_pi please */
};
/* Only called from hvcs_get_pi please */