@@ -372,7 +372,7 @@ static ssize_t field ## _show(struct device *dev, \
372372 if (stdev->gen == SWITCHTEC_GEN3) \
373373 return io_string_show(buf, &si->gen3.field, \
374374 sizeof(si->gen3.field)); \
375- else if (stdev->gen = = SWITCHTEC_GEN4) \
375+ else if (stdev->gen > = SWITCHTEC_GEN4) \
376376 return io_string_show(buf, &si->gen4.field, \
377377 sizeof(si->gen4.field)); \
378378 else \
@@ -663,7 +663,7 @@ static int ioctl_flash_info(struct switchtec_dev *stdev,
663663 if (stdev -> gen == SWITCHTEC_GEN3 ) {
664664 info .flash_length = ioread32 (& fi -> gen3 .flash_length );
665665 info .num_partitions = SWITCHTEC_NUM_PARTITIONS_GEN3 ;
666- } else if (stdev -> gen = = SWITCHTEC_GEN4 ) {
666+ } else if (stdev -> gen > = SWITCHTEC_GEN4 ) {
667667 info .flash_length = ioread32 (& fi -> gen4 .flash_length );
668668 info .num_partitions = SWITCHTEC_NUM_PARTITIONS_GEN4 ;
669669 } else {
@@ -870,7 +870,7 @@ static int ioctl_flash_part_info(struct switchtec_dev *stdev,
870870 ret = flash_part_info_gen3 (stdev , & info );
871871 if (ret )
872872 return ret ;
873- } else if (stdev -> gen = = SWITCHTEC_GEN4 ) {
873+ } else if (stdev -> gen > = SWITCHTEC_GEN4 ) {
874874 ret = flash_part_info_gen4 (stdev , & info );
875875 if (ret )
876876 return ret ;
@@ -1610,7 +1610,7 @@ static int switchtec_init_pci(struct switchtec_dev *stdev,
16101610
16111611 if (stdev -> gen == SWITCHTEC_GEN3 )
16121612 part_id = & stdev -> mmio_sys_info -> gen3 .partition_id ;
1613- else if (stdev -> gen = = SWITCHTEC_GEN4 )
1613+ else if (stdev -> gen > = SWITCHTEC_GEN4 )
16141614 part_id = & stdev -> mmio_sys_info -> gen4 .partition_id ;
16151615 else
16161616 return - EOPNOTSUPP ;
@@ -1784,6 +1784,42 @@ static const struct pci_device_id switchtec_pci_tbl[] = {
17841784 SWITCHTEC_PCI_DEVICE (0x4552 , SWITCHTEC_GEN4 ), /* PAXA 52XG4 */
17851785 SWITCHTEC_PCI_DEVICE (0x4536 , SWITCHTEC_GEN4 ), /* PAXA 36XG4 */
17861786 SWITCHTEC_PCI_DEVICE (0x4528 , SWITCHTEC_GEN4 ), /* PAXA 28XG4 */
1787+ SWITCHTEC_PCI_DEVICE (0x5000 , SWITCHTEC_GEN5 ), /* PFX 100XG5 */
1788+ SWITCHTEC_PCI_DEVICE (0x5084 , SWITCHTEC_GEN5 ), /* PFX 84XG5 */
1789+ SWITCHTEC_PCI_DEVICE (0x5068 , SWITCHTEC_GEN5 ), /* PFX 68XG5 */
1790+ SWITCHTEC_PCI_DEVICE (0x5052 , SWITCHTEC_GEN5 ), /* PFX 52XG5 */
1791+ SWITCHTEC_PCI_DEVICE (0x5036 , SWITCHTEC_GEN5 ), /* PFX 36XG5 */
1792+ SWITCHTEC_PCI_DEVICE (0x5028 , SWITCHTEC_GEN5 ), /* PFX 28XG5 */
1793+ SWITCHTEC_PCI_DEVICE (0x5100 , SWITCHTEC_GEN5 ), /* PSX 100XG5 */
1794+ SWITCHTEC_PCI_DEVICE (0x5184 , SWITCHTEC_GEN5 ), /* PSX 84XG5 */
1795+ SWITCHTEC_PCI_DEVICE (0x5168 , SWITCHTEC_GEN5 ), /* PSX 68XG5 */
1796+ SWITCHTEC_PCI_DEVICE (0x5152 , SWITCHTEC_GEN5 ), /* PSX 52XG5 */
1797+ SWITCHTEC_PCI_DEVICE (0x5136 , SWITCHTEC_GEN5 ), /* PSX 36XG5 */
1798+ SWITCHTEC_PCI_DEVICE (0x5128 , SWITCHTEC_GEN5 ), /* PSX 28XG5 */
1799+ SWITCHTEC_PCI_DEVICE (0x5200 , SWITCHTEC_GEN5 ), /* PAX 100XG5 */
1800+ SWITCHTEC_PCI_DEVICE (0x5284 , SWITCHTEC_GEN5 ), /* PAX 84XG5 */
1801+ SWITCHTEC_PCI_DEVICE (0x5268 , SWITCHTEC_GEN5 ), /* PAX 68XG5 */
1802+ SWITCHTEC_PCI_DEVICE (0x5252 , SWITCHTEC_GEN5 ), /* PAX 52XG5 */
1803+ SWITCHTEC_PCI_DEVICE (0x5236 , SWITCHTEC_GEN5 ), /* PAX 36XG5 */
1804+ SWITCHTEC_PCI_DEVICE (0x5228 , SWITCHTEC_GEN5 ), /* PAX 28XG5 */
1805+ SWITCHTEC_PCI_DEVICE (0x5300 , SWITCHTEC_GEN5 ), /* PFXA 100XG5 */
1806+ SWITCHTEC_PCI_DEVICE (0x5384 , SWITCHTEC_GEN5 ), /* PFXA 84XG5 */
1807+ SWITCHTEC_PCI_DEVICE (0x5368 , SWITCHTEC_GEN5 ), /* PFXA 68XG5 */
1808+ SWITCHTEC_PCI_DEVICE (0x5352 , SWITCHTEC_GEN5 ), /* PFXA 52XG5 */
1809+ SWITCHTEC_PCI_DEVICE (0x5336 , SWITCHTEC_GEN5 ), /* PFXA 36XG5 */
1810+ SWITCHTEC_PCI_DEVICE (0x5328 , SWITCHTEC_GEN5 ), /* PFXA 28XG5 */
1811+ SWITCHTEC_PCI_DEVICE (0x5400 , SWITCHTEC_GEN5 ), /* PSXA 100XG5 */
1812+ SWITCHTEC_PCI_DEVICE (0x5484 , SWITCHTEC_GEN5 ), /* PSXA 84XG5 */
1813+ SWITCHTEC_PCI_DEVICE (0x5468 , SWITCHTEC_GEN5 ), /* PSXA 68XG5 */
1814+ SWITCHTEC_PCI_DEVICE (0x5452 , SWITCHTEC_GEN5 ), /* PSXA 52XG5 */
1815+ SWITCHTEC_PCI_DEVICE (0x5436 , SWITCHTEC_GEN5 ), /* PSXA 36XG5 */
1816+ SWITCHTEC_PCI_DEVICE (0x5428 , SWITCHTEC_GEN5 ), /* PSXA 28XG5 */
1817+ SWITCHTEC_PCI_DEVICE (0x5500 , SWITCHTEC_GEN5 ), /* PAXA 100XG5 */
1818+ SWITCHTEC_PCI_DEVICE (0x5584 , SWITCHTEC_GEN5 ), /* PAXA 84XG5 */
1819+ SWITCHTEC_PCI_DEVICE (0x5568 , SWITCHTEC_GEN5 ), /* PAXA 68XG5 */
1820+ SWITCHTEC_PCI_DEVICE (0x5552 , SWITCHTEC_GEN5 ), /* PAXA 52XG5 */
1821+ SWITCHTEC_PCI_DEVICE (0x5536 , SWITCHTEC_GEN5 ), /* PAXA 36XG5 */
1822+ SWITCHTEC_PCI_DEVICE (0x5528 , SWITCHTEC_GEN5 ), /* PAXA 28XG5 */
17871823 {0 }
17881824};
17891825MODULE_DEVICE_TABLE (pci , switchtec_pci_tbl );
0 commit comments