parisc: Drop locking in pdc console code
authorHelge Deller <deller@gmx.de>
Sat, 17 Dec 2022 16:45:40 +0000 (17:45 +0100)
committerHelge Deller <deller@gmx.de>
Sun, 18 Dec 2022 21:18:49 +0000 (22:18 +0100)
No need to have specific locking for console I/O since
the PDC functions provide an own locking.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: <stable@vger.kernel.org> # 6.1+
arch/parisc/kernel/pdc_cons.c

index 7d0989f..cf3bf82 100644 (file)
 #include <asm/page.h>          /* for PAGE0 */
 #include <asm/pdc.h>           /* for iodc_call() proto and friends */
 
-static DEFINE_SPINLOCK(pdc_console_lock);
-
 static void pdc_console_write(struct console *co, const char *s, unsigned count)
 {
        int i = 0;
-       unsigned long flags;
 
-       spin_lock_irqsave(&pdc_console_lock, flags);
        do {
                i += pdc_iodc_print(s + i, count - i);
        } while (i < count);
-       spin_unlock_irqrestore(&pdc_console_lock, flags);
 }
 
 #ifdef CONFIG_KGDB
 static int kgdb_pdc_read_char(void)
 {
-       int c;
-       unsigned long flags;
-
-       spin_lock_irqsave(&pdc_console_lock, flags);
-       c = pdc_iodc_getc();
-       spin_unlock_irqrestore(&pdc_console_lock, flags);
+       int c = pdc_iodc_getc();
 
        return (c <= 0) ? NO_POLL_CHAR : c;
 }
 
 static void kgdb_pdc_write_char(u8 chr)
 {
-       if (PAGE0->mem_cons.cl_class != CL_DUPLEX)
-               pdc_console_write(NULL, &chr, 1);
+       /* no need to print char as it's shown on standard console */
+       /* pdc_iodc_print(&chr, 1); */
 }
 
 static struct kgdb_io kgdb_pdc_io_ops = {