Commit 7dc4dbfe authored by Helge Deller's avatar Helge Deller
Browse files

parisc: Drop locking in pdc console code



No need to have specific locking for console I/O since
the PDC functions provide an own locking.

Signed-off-by: default avatarHelge Deller <deller@gmx.de>
Cc: <stable@vger.kernel.org> # 6.1+
parent 7e6652c7
Loading
Loading
Loading
Loading
+3 −13
Original line number Diff line number Diff line
@@ -12,37 +12,27 @@
#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 = {