This patchset backports ASIX AX99100 pcie serial/parallel port controller support to linux 6.1 5.15 5.10 5.4. It just add a device ID, no functional changes included.
The commit 3029ad913353("can: ems_pci: move ASIX AX99100 ids to pci_ids.h") was renamed to "PCI: add ASIX AX99100 ids to pci_ids.h", and changes in drivers/net/can/sja1000/ems_pci.c were dropped as the ems_pci change are only relevant for linux 6.3 and later.
Tomita Moeko (3): PCI: add ASIX AX99100 ids to pci_ids.h serial: 8250_pci: add support for ASIX AX99100 parport_pc: add support for ASIX AX99100
drivers/parport/parport_pc.c | 5 +++++ drivers/tty/serial/8250/8250_pci.c | 10 ++++++++++ include/linux/pci_ids.h | 4 ++++ 3 files changed, 19 insertions(+)
[ Upstream commit 3029ad91335353a70feb42acd24d580d70ab258b ]
Move PCI Vendor and Device ID of ASIX AX99100 PCIe to Multi I/O Controller to pci_ids.h for its serial and parallel port driver support in subsequent patches.
[Moeko: Rename from "can: ems_pci: move ASIX AX99100 ids to pci_ids.h"] [Moeko: Drop changes in drivers/net/can/sja1000/ems_pci.c]
Signed-off-by: Jiaqing Zhao jiaqing.zhao@linux.intel.com Reviewed-by: Andy Shevchenko andriy.shevchenko@linux.intel.com Acked-by: Bjorn Helgaas bhelgaas@google.com Acked-by: Marc Kleine-Budde mkl@pengutronix.de Link: https://lore.kernel.org/r/20230724083933.3173513-3-jiaqing.zhao@linux.intel.... Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org Signed-off-by: Tomita Moeko tomitamoeko@gmail.com --- include/linux/pci_ids.h | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 69b8c46a42ea..9d7fb137bd93 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -1754,6 +1754,10 @@ #define PCI_SUBDEVICE_ID_AT_2700FX 0x2701 #define PCI_SUBDEVICE_ID_AT_2701FX 0x2703
+#define PCI_VENDOR_ID_ASIX 0x125b +#define PCI_DEVICE_ID_ASIX_AX99100 0x9100 +#define PCI_DEVICE_ID_ASIX_AX99100_LB 0x9110 + #define PCI_VENDOR_ID_ESS 0x125d #define PCI_DEVICE_ID_ESS_ESS1968 0x1968 #define PCI_DEVICE_ID_ESS_ESS1978 0x1978
[ Sasha's backport helper bot ]
Hi,
The upstream commit SHA1 provided is correct: 3029ad91335353a70feb42acd24d580d70ab258b
WARNING: Author mismatch between patch and upstream commit: Backport author: Tomita Moekotomitamoeko@gmail.com Commit author: Jiaqing Zhaojiaqing.zhao@linux.intel.com
Status in newer kernel trees: 6.13.y | Present (exact SHA1) 6.12.y | Present (exact SHA1) 6.6.y | Present (exact SHA1) 6.1.y | Not found
Note: The patch differs from the upstream commit: --- 1: 3029ad9133535 ! 1: 32a751d45e995 can: ems_pci: move ASIX AX99100 ids to pci_ids.h @@ ## Metadata ## -Author: Jiaqing Zhao jiaqing.zhao@linux.intel.com +Author: Tomita Moeko tomitamoeko@gmail.com
## Commit message ## - can: ems_pci: move ASIX AX99100 ids to pci_ids.h + PCI: add ASIX AX99100 ids to pci_ids.h + + [ Upstream commit 3029ad91335353a70feb42acd24d580d70ab258b ]
Move PCI Vendor and Device ID of ASIX AX99100 PCIe to Multi I/O Controller to pci_ids.h for its serial and parallel port driver support in subsequent patches.
+ [Moeko: Rename from "can: ems_pci: move ASIX AX99100 ids to pci_ids.h"] + [Moeko: Drop changes in drivers/net/can/sja1000/ems_pci.c] + Signed-off-by: Jiaqing Zhao jiaqing.zhao@linux.intel.com Reviewed-by: Andy Shevchenko andriy.shevchenko@linux.intel.com Acked-by: Bjorn Helgaas bhelgaas@google.com Acked-by: Marc Kleine-Budde mkl@pengutronix.de Link: https://lore.kernel.org/r/20230724083933.3173513-3-jiaqing.zhao@linux.intel.... Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org - - ## drivers/net/can/sja1000/ems_pci.c ## -@@ drivers/net/can/sja1000/ems_pci.c: struct ems_pci_card { - - #define EMS_PCI_BASE_SIZE 4096 /* size of controller area */ - --#ifndef PCI_VENDOR_ID_ASIX --#define PCI_VENDOR_ID_ASIX 0x125b --#define PCI_DEVICE_ID_ASIX_9110 0x9110 --#endif - #define PCI_SUBDEVICE_ID_EMS 0x4010 - - static const struct pci_device_id ems_pci_tbl[] = { -@@ drivers/net/can/sja1000/ems_pci.c: static const struct pci_device_id ems_pci_tbl[] = { - /* CPC-104P v2 */ - {PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9030, PCI_VENDOR_ID_PLX, 0x4002}, - /* CPC-PCIe v3 */ -- {PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_9110, 0xa000, PCI_SUBDEVICE_ID_EMS}, -+ {PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_AX99100_LB, 0xa000, PCI_SUBDEVICE_ID_EMS}, - {0,} - }; - MODULE_DEVICE_TABLE(pci, ems_pci_tbl); + Signed-off-by: Tomita Moeko tomitamoeko@gmail.com
## include/linux/pci_ids.h ## @@ ---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-6.1.y | Success | Failed | | stable/linux-5.15.y | Success | Failed | | stable/linux-5.10.y | Success | Failed | | stable/linux-5.4.y | Success | Failed |
Build Errors: Build error for stable/linux-6.1.y: ssh: connect to host 192.168.1.58 port 22: No route to host
Build error for stable/linux-5.15.y: ssh: connect to host 192.168.1.58 port 22: No route to host
Build error for stable/linux-5.10.y: ssh: connect to host 192.168.1.58 port 22: No route to host
Build error for stable/linux-5.4.y: ssh: connect to host 192.168.1.58 port 22: No route to host
[ Upstream commit 0b32216557ce3b2a468d1282d99b428bf72ff532 ]
Each of the 4 PCI functions on ASIX AX99100 PCIe to Multi I/O Controller can be configured as a single-port serial port controller. The subvendor id is 0x1000 when configured as serial port and MSI interrupts are supported.
Signed-off-by: Jiaqing Zhao jiaqing.zhao@linux.intel.com Reviewed-by: Andy Shevchenko andriy.shevchenko@linux.intel.com Link: https://lore.kernel.org/r/20230724083933.3173513-4-jiaqing.zhao@linux.intel.... Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org Signed-off-by: Tomita Moeko tomitamoeko@gmail.com --- drivers/tty/serial/8250/8250_pci.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c index 38fb7126ab0e..6026cc50a7ea 100644 --- a/drivers/tty/serial/8250/8250_pci.c +++ b/drivers/tty/serial/8250/8250_pci.c @@ -66,6 +66,8 @@ static const struct pci_device_id pci_use_msi[] = { 0xA000, 0x1000) }, { PCI_DEVICE_SUB(PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9922, 0xA000, 0x1000) }, + { PCI_DEVICE_SUB(PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_AX99100, + 0xA000, 0x1000) }, { PCI_DEVICE_SUB(PCI_VENDOR_ID_HP_3PAR, PCI_DEVICE_ID_HPE_PCI_SERIAL, PCI_ANY_ID, PCI_ANY_ID) }, { } @@ -5890,6 +5892,14 @@ static const struct pci_device_id serial_pci_tbl[] = { { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9865, 0xA000, 0x3004, 0, 0, pbn_b0_bt_4_115200 }, + + /* + * ASIX AX99100 PCIe to Multi I/O Controller + */ + { PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_AX99100, + 0xA000, 0x1000, + 0, 0, pbn_b0_1_115200 }, + /* Intel CE4100 */ { PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_CE4100_UART, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
[ Upstream commit 16aae4c64600a6319a6f10dbff833fa198bf9599 ]
The PCI function 2 on ASIX AX99100 PCIe to Multi I/O Controller can be configured as a single-port parallel port controller. The subvendor id is 0x2000 when configured as parallel port. It supports IEEE-1284 EPP / ECP with its ECR on BAR1.
Signed-off-by: Jiaqing Zhao jiaqing.zhao@linux.intel.com Reviewed-by: Andy Shevchenko andriy.shevchenko@linux.intel.com Acked-by: Sudip Mukherjee sudipm.mukherjee@gmail.com Link: https://lore.kernel.org/r/20230724083933.3173513-5-jiaqing.zhao@linux.intel.... Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org Signed-off-by: Tomita Moeko tomitamoeko@gmail.com --- drivers/parport/parport_pc.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/drivers/parport/parport_pc.c b/drivers/parport/parport_pc.c index 4605758d3214..2e921ddbe748 100644 --- a/drivers/parport/parport_pc.c +++ b/drivers/parport/parport_pc.c @@ -2612,6 +2612,7 @@ enum parport_pc_pci_cards { netmos_9815, netmos_9901, netmos_9865, + asix_ax99100, quatech_sppxp100, wch_ch382l, brainboxes_uc146, @@ -2678,6 +2679,7 @@ static struct parport_pc_pci { /* netmos_9815 */ { 2, { { 0, 1 }, { 2, 3 }, } }, /* netmos_9901 */ { 1, { { 0, -1 }, } }, /* netmos_9865 */ { 1, { { 0, -1 }, } }, + /* asix_ax99100 */ { 1, { { 0, 1 }, } }, /* quatech_sppxp100 */ { 1, { { 0, 1 }, } }, /* wch_ch382l */ { 1, { { 2, -1 }, } }, /* brainboxes_uc146 */ { 1, { { 3, -1 }, } }, @@ -2770,6 +2772,9 @@ static const struct pci_device_id parport_pc_pci_tbl[] = { 0xA000, 0x1000, 0, 0, netmos_9865 }, { PCI_VENDOR_ID_NETMOS, PCI_DEVICE_ID_NETMOS_9865, 0xA000, 0x2000, 0, 0, netmos_9865 }, + /* ASIX AX99100 PCIe to Multi I/O Controller */ + { PCI_VENDOR_ID_ASIX, PCI_DEVICE_ID_ASIX_AX99100, + 0xA000, 0x2000, 0, 0, asix_ax99100 }, /* Quatech SPPXP-100 Parallel port PCI ExpressCard */ { PCI_VENDOR_ID_QUATECH, PCI_DEVICE_ID_QUATECH_SPPXP_100, PCI_ANY_ID, PCI_ANY_ID, 0, 0, quatech_sppxp100 },
linux-stable-mirror@lists.linaro.org