All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC][PATCH] parisc: Ignore AUX port of DIVA on rp34xx machines
@ 2017-05-21 21:16 Helge Deller
  2017-05-29 20:05 ` [PATCH v2] serial/parisc: " Helge Deller
  0 siblings, 1 reply; 3+ messages in thread
From: Helge Deller @ 2017-05-21 21:16 UTC (permalink / raw)
  To: linux-parisc, James Bottomley, John David Anglin

On rp34xx machines Linux detects the AUX port of the DIVA GSP card (PCI
subsystem id 0x1291) before the console port of DIVA GSP and as such the
AUX port becomes ttyS0 and the console port becomes ttyS1.  Since the
palo bootloader by default sets the console output to ttyS0 if no
keyboard & monitor is attached, all Linux kernel boot messages get lost.

Avoid this problem by ignoring the AUX port. There is no external serial
port connector for AUX, so we won't miss this serial port either.

(RFC, patch untested)

Signed-off-by: Helge Deller <deller@gmx.de>

diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
index 22d32d2..98261aa 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
@@ -174,6 +174,9 @@ static int pci_hp_diva_init(struct pci_dev *dev)
 	case PCI_DEVICE_ID_HP_DIVA_HURRICANE:
 		rc = 1;
 		break;
+	case PCI_DEVICE_ID_HP_DIVA_AUX2:
+		rc = -ENODEV; /* ignore on rp34xx */
+		break;
 	}
 
 	return rc;
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
index 3e5dbbe..633e738 100644
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
@@ -760,6 +760,7 @@
 #define PCI_DEVICE_ID_HP_SX1000_IOC	0x127c
 #define PCI_DEVICE_ID_HP_DIVA_EVEREST	0x1282
 #define PCI_DEVICE_ID_HP_DIVA_AUX	0x1290
+#define PCI_DEVICE_ID_HP_DIVA_AUX2	0x1291
 #define PCI_DEVICE_ID_HP_DIVA_RMP3	0x1301
 #define PCI_DEVICE_ID_HP_DIVA_HURRICANE	0x132a
 #define PCI_DEVICE_ID_HP_CISSA		0x3220

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH v2] serial/parisc: Ignore AUX port of DIVA on rp34xx machines
  2017-05-21 21:16 [RFC][PATCH] parisc: Ignore AUX port of DIVA on rp34xx machines Helge Deller
@ 2017-05-29 20:05 ` Helge Deller
  2017-05-30 21:21   ` Helge Deller
  0 siblings, 1 reply; 3+ messages in thread
From: Helge Deller @ 2017-05-29 20:05 UTC (permalink / raw)
  To: linux-parisc, James Bottomley, John David Anglin

On rp34xx machines Linux detects the AUX port of the DIVA GSP card (PCI
subsystem id 0x1291) before the console port of DIVA GSP and as such the AUX
port becomes ttyS0 and the console port becomes ttyS1.
Since the palo bootloader by default sets the console output to ttyS0 if no
keyboard & monitor is attached, all Linux kernel boot messages get lost.

Avoid this problem by ignoring the AUX port. There is no external serial
port connector for AUX, so we won't miss this serial port either.

Tested on a rp3410 parisc machine.

Signed-off-by: Helge Deller <deller@gmx.de>

diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
index 00e51a0..2ec120e 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
@@ -174,6 +174,9 @@ static int pci_hp_diva_init(struct pci_dev *dev)
 	case PCI_DEVICE_ID_HP_DIVA_HURRICANE:
 		rc = 1;
 		break;
+	case PCI_DEVICE_ID_HP_DIVA_AUX2:
+		rc = -ENODEV; /* ignore on rp34x0 machines */
+		break;
 	}
 
 	return rc;
@@ -1785,6 +1788,17 @@ static struct pci_serial_quirk pci_serial_quirks[] __refdata = {
 		.setup		= pci_hp_diva_setup,
 	},
 	/*
+	 * HP Diva Auxiliary Serial Port
+	 */
+	{
+		.vendor		= PCI_VENDOR_ID_HP,
+		.device		= PCI_DEVICE_ID_HP_DIVA_AUX,
+		.subvendor	= PCI_VENDOR_ID_HP,
+		.subdevice	= PCI_DEVICE_ID_HP_DIVA_AUX2,
+		.init		= pci_hp_diva_init,
+		.setup		= pci_default_setup,
+	},
+	/*
 	 * Intel
 	 */
 	{
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
index 5f6b71d..ecc88a3 100644
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
@@ -762,6 +762,7 @@
 #define PCI_DEVICE_ID_HP_SX1000_IOC	0x127c
 #define PCI_DEVICE_ID_HP_DIVA_EVEREST	0x1282
 #define PCI_DEVICE_ID_HP_DIVA_AUX	0x1290
+#define PCI_DEVICE_ID_HP_DIVA_AUX2	0x1291
 #define PCI_DEVICE_ID_HP_DIVA_RMP3	0x1301
 #define PCI_DEVICE_ID_HP_DIVA_HURRICANE	0x132a
 #define PCI_DEVICE_ID_HP_CISSA		0x3220

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] serial/parisc: Ignore AUX port of DIVA on rp34xx machines
  2017-05-29 20:05 ` [PATCH v2] serial/parisc: " Helge Deller
@ 2017-05-30 21:21   ` Helge Deller
  0 siblings, 0 replies; 3+ messages in thread
From: Helge Deller @ 2017-05-30 21:21 UTC (permalink / raw)
  To: linux-parisc, James Bottomley, John David Anglin

On 29.05.2017 22:05, Helge Deller wrote:
> On rp34xx machines Linux detects the AUX port of the DIVA GSP card (PCI
> subsystem id 0x1291) before the console port of DIVA GSP and as such the AUX
> port becomes ttyS0 and the console port becomes ttyS1.
> Since the palo bootloader by default sets the console output to ttyS0 if no
> keyboard & monitor is attached, all Linux kernel boot messages get lost.
> 
> Avoid this problem by ignoring the AUX port. There is no external serial
> port connector for AUX, so we won't miss this serial port either.
> 
> Tested on a rp3410 parisc machine.

I will drop this patch.
Instead I've committed changes to the palo bootloader
to default to ttyS1 on rp34x0 machines.
Patch is in palo git tree, palo v1.98 release will include that fix:
https://git.kernel.org/pub/scm/linux/kernel/git/deller/palo.git/commit/?id=9bb40b5ab775a077fd847c6ff99462249cc3f426

Helge

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-05-30 21:21 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-21 21:16 [RFC][PATCH] parisc: Ignore AUX port of DIVA on rp34xx machines Helge Deller
2017-05-29 20:05 ` [PATCH v2] serial/parisc: " Helge Deller
2017-05-30 21:21   ` Helge Deller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.