diff mbox series

Add support for new HPE serial device

Message ID 1621009614-28836-1-git-send-email-rwright@hpe.com
State New
Headers show
Series Add support for new HPE serial device | expand

Commit Message

Randy Wright May 14, 2021, 4:26 p.m. UTC
Add support for new HPE serial device.  It is MSI enabled,
but otherwise similar to legacy HP server serial devices.

Signed-off-by: Randy Wright <rwright@hpe.com>
---
 drivers/tty/serial/8250/8250_pci.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

Comments

Jerry Hoemann May 14, 2021, 5:09 p.m. UTC | #1
On Fri, May 14, 2021 at 10:26:54AM -0600, Randy Wright wrote:
> Add support for new HPE serial device.  It is MSI enabled,
> but otherwise similar to legacy HP server serial devices.
> 
> Signed-off-by: Randy Wright <rwright@hpe.com>


Tested-by: Jerry Hoemann <jerry.hoemann@hpe.com>


> ---
>  drivers/tty/serial/8250/8250_pci.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
> index 689d822..04fe424 100644
> --- a/drivers/tty/serial/8250/8250_pci.c
> +++ b/drivers/tty/serial/8250/8250_pci.c
> @@ -56,6 +56,8 @@ struct serial_private {
>  	int			line[];
>  };
>  
> +#define PCI_DEVICE_ID_HPE_PCI_SERIAL	0x37e
> +
>  static const struct pci_device_id pci_use_msi[] = {
>  	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9900,
>  			 0xA000, 0x1000) },
> @@ -63,6 +65,8 @@ struct serial_private {
>  			 0xA000, 0x1000) },
>  	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9922,
>  			 0xA000, 0x1000) },
> +	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_HP_3PAR, PCI_DEVICE_ID_HPE_PCI_SERIAL,
> +			 PCI_ANY_ID, PCI_ANY_ID) },
>  	{ }
>  };
>  
> @@ -1998,6 +2002,16 @@ static void pci_wch_ch38x_exit(struct pci_dev *dev)
>  		.setup		= pci_hp_diva_setup,
>  	},
>  	/*
> +	 * HPE PCI serial device
> +	 */
> +	{
> +		.vendor         = PCI_VENDOR_ID_HP_3PAR,
> +		.device         = PCI_DEVICE_ID_HPE_PCI_SERIAL,
> +		.subvendor      = PCI_ANY_ID,
> +		.subdevice      = PCI_ANY_ID,
> +		.setup		= pci_hp_diva_setup,
> +	},
> +	/*
>  	 * Intel
>  	 */
>  	{
> @@ -4973,6 +4987,10 @@ static SIMPLE_DEV_PM_OPS(pciserial_pm_ops, pciserial_suspend_one,
>  	{	PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_DIVA_AUX,
>  		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
>  		pbn_b2_1_115200 },
> +	/* HPE PCI serial device */
> +	{	PCI_VENDOR_ID_HP_3PAR, PCI_DEVICE_ID_HPE_PCI_SERIAL,
> +		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
> +		pbn_b1_1_115200 },
>  
>  	{	PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM2,
>  		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
> -- 
> 1.8.3.1
diff mbox series

Patch

diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
index 689d822..04fe424 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
@@ -56,6 +56,8 @@  struct serial_private {
 	int			line[];
 };
 
+#define PCI_DEVICE_ID_HPE_PCI_SERIAL	0x37e
+
 static const struct pci_device_id pci_use_msi[] = {
 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9900,
 			 0xA000, 0x1000) },
@@ -63,6 +65,8 @@  struct serial_private {
 			 0xA000, 0x1000) },
 	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9922,
 			 0xA000, 0x1000) },
+	{ PCI_DEVICE_SUB(PCI_VENDOR_ID_HP_3PAR, PCI_DEVICE_ID_HPE_PCI_SERIAL,
+			 PCI_ANY_ID, PCI_ANY_ID) },
 	{ }
 };
 
@@ -1998,6 +2002,16 @@  static void pci_wch_ch38x_exit(struct pci_dev *dev)
 		.setup		= pci_hp_diva_setup,
 	},
 	/*
+	 * HPE PCI serial device
+	 */
+	{
+		.vendor         = PCI_VENDOR_ID_HP_3PAR,
+		.device         = PCI_DEVICE_ID_HPE_PCI_SERIAL,
+		.subvendor      = PCI_ANY_ID,
+		.subdevice      = PCI_ANY_ID,
+		.setup		= pci_hp_diva_setup,
+	},
+	/*
 	 * Intel
 	 */
 	{
@@ -4973,6 +4987,10 @@  static SIMPLE_DEV_PM_OPS(pciserial_pm_ops, pciserial_suspend_one,
 	{	PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_DIVA_AUX,
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
 		pbn_b2_1_115200 },
+	/* HPE PCI serial device */
+	{	PCI_VENDOR_ID_HP_3PAR, PCI_DEVICE_ID_HPE_PCI_SERIAL,
+		PCI_ANY_ID, PCI_ANY_ID, 0, 0,
+		pbn_b1_1_115200 },
 
 	{	PCI_VENDOR_ID_DCI, PCI_DEVICE_ID_DCI_PCCOM2,
 		PCI_ANY_ID, PCI_ANY_ID, 0, 0,