cyclades: remove block_til_ready
[safe/jmp/linux-2.6] / drivers / char / hvc_beat.c
index 6f019f1..0afc8b8 100644 (file)
@@ -44,7 +44,7 @@ static int hvc_beat_get_chars(uint32_t vtermno, char *buf, int cnt)
        static unsigned char q[sizeof(unsigned long) * 2]
                __attribute__((aligned(sizeof(unsigned long))));
        static int qlen = 0;
-       unsigned long got;
+       u64 got;
 
 again:
        if (qlen) {
@@ -63,7 +63,7 @@ again:
                }
        }
        if (beat_get_term_char(vtermno, &got,
-               ((unsigned long *)q), ((unsigned long *)q) + 1) == 0) {
+               ((u64 *)q), ((u64 *)q) + 1) == 0) {
                qlen = got;
                goto again;
        }
@@ -78,8 +78,8 @@ static int hvc_beat_put_chars(uint32_t vtermno, const char *buf, int cnt)
        for (rest = cnt; rest > 0; rest -= nlen) {
                nlen = (rest > 16) ? 16 : rest;
                memcpy(kb, buf, nlen);
-               beat_put_term_char(vtermno, rest, kb[0], kb[1]);
-               rest -= nlen;
+               beat_put_term_char(vtermno, nlen, kb[0], kb[1]);
+               buf += nlen;
        }
        return cnt;
 }
@@ -97,7 +97,7 @@ static int hvc_beat_config(char *p)
        return 0;
 }
 
-static int hvc_beat_console_init(void)
+static int __init hvc_beat_console_init(void)
 {
        if (hvc_beat_useit && machine_is_compatible("Beat")) {
                hvc_instantiate(0, 0, &hvc_beat_get_put_ops);
@@ -106,7 +106,7 @@ static int hvc_beat_console_init(void)
 }
 
 /* temp */
-static int hvc_beat_init(void)
+static int __init hvc_beat_init(void)
 {
        struct hvc_struct *hp;