Skip to content

Commit 41df604

Browse files
authored
Merge pull request #104 from xyan264/gen5_devel
Rebase Gen5-devel and merge to devel
2 parents 303a672 + ba8256c commit 41df604

File tree

2 files changed

+35
-4
lines changed

2 files changed

+35
-4
lines changed

linux/switchtec.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ enum {
5050
enum switchtec_gen {
5151
SWITCHTEC_GEN3,
5252
SWITCHTEC_GEN4,
53+
SWITCHTEC_GEN5,
5354
};
5455

5556
struct mrpc_regs {

switchtec.c

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -371,7 +371,7 @@ static ssize_t field ## _show(struct device *dev, \
371371
if (stdev->gen == SWITCHTEC_GEN3) \
372372
return io_string_show(buf, &si->gen3.field, \
373373
sizeof(si->gen3.field)); \
374-
else if (stdev->gen == SWITCHTEC_GEN4) \
374+
else if (stdev->gen >= SWITCHTEC_GEN4) \
375375
return io_string_show(buf, &si->gen4.field, \
376376
sizeof(si->gen4.field)); \
377377
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 {
@@ -869,7 +869,7 @@ static int ioctl_flash_part_info(struct switchtec_dev *stdev,
869869
ret = flash_part_info_gen3(stdev, &info);
870870
if (ret)
871871
return ret;
872-
} else if (stdev->gen == SWITCHTEC_GEN4) {
872+
} else if (stdev->gen >= SWITCHTEC_GEN4) {
873873
ret = flash_part_info_gen4(stdev, &info);
874874
if (ret)
875875
return ret;
@@ -1612,7 +1612,7 @@ static int switchtec_init_pci(struct switchtec_dev *stdev,
16121612

16131613
if (stdev->gen == SWITCHTEC_GEN3)
16141614
part_id = &stdev->mmio_sys_info->gen3.partition_id;
1615-
else if (stdev->gen == SWITCHTEC_GEN4)
1615+
else if (stdev->gen >= SWITCHTEC_GEN4)
16161616
part_id = &stdev->mmio_sys_info->gen4.partition_id;
16171617
else
16181618
return -ENOTSUPP;
@@ -1893,6 +1893,36 @@ static const struct pci_device_id switchtec_pci_tbl[] = {
18931893
SWITCHTEC_PCI_DEVICE(0x4552, SWITCHTEC_GEN4), //PAXA 52XG4
18941894
SWITCHTEC_PCI_DEVICE(0x4536, SWITCHTEC_GEN4), //PAXA 36XG4
18951895
SWITCHTEC_PCI_DEVICE(0x4528, SWITCHTEC_GEN4), //PAXA 28XG4
1896+
SWITCHTEC_PCI_DEVICE(0x5000, SWITCHTEC_GEN5), //PFX 100XG5
1897+
SWITCHTEC_PCI_DEVICE(0x5084, SWITCHTEC_GEN5), //PFX 84XG5
1898+
SWITCHTEC_PCI_DEVICE(0x5068, SWITCHTEC_GEN5), //PFX 68XG5
1899+
SWITCHTEC_PCI_DEVICE(0x5052, SWITCHTEC_GEN5), //PFX 52XG5
1900+
SWITCHTEC_PCI_DEVICE(0x5036, SWITCHTEC_GEN5), //PFX 36XG5
1901+
SWITCHTEC_PCI_DEVICE(0x5028, SWITCHTEC_GEN5), //PFX 28XG5
1902+
SWITCHTEC_PCI_DEVICE(0x5100, SWITCHTEC_GEN5), //PSX 100XG5
1903+
SWITCHTEC_PCI_DEVICE(0x5184, SWITCHTEC_GEN5), //PSX 84XG5
1904+
SWITCHTEC_PCI_DEVICE(0x5168, SWITCHTEC_GEN5), //PSX 68XG5
1905+
SWITCHTEC_PCI_DEVICE(0x5152, SWITCHTEC_GEN5), //PSX 52XG5
1906+
SWITCHTEC_PCI_DEVICE(0x5136, SWITCHTEC_GEN5), //PSX 36XG5
1907+
SWITCHTEC_PCI_DEVICE(0x5128, SWITCHTEC_GEN5), //PSX 28XG5
1908+
SWITCHTEC_PCI_DEVICE(0x5200, SWITCHTEC_GEN5), //PAX 100XG5
1909+
SWITCHTEC_PCI_DEVICE(0x5284, SWITCHTEC_GEN5), //PAX 84XG5
1910+
SWITCHTEC_PCI_DEVICE(0x5268, SWITCHTEC_GEN5), //PAX 68XG5
1911+
SWITCHTEC_PCI_DEVICE(0x5252, SWITCHTEC_GEN5), //PAX 52XG5
1912+
SWITCHTEC_PCI_DEVICE(0x5236, SWITCHTEC_GEN5), //PAX 36XG5
1913+
SWITCHTEC_PCI_DEVICE(0x5228, SWITCHTEC_GEN5), //PAX 28XG5
1914+
SWITCHTEC_PCI_DEVICE(0x5300, SWITCHTEC_GEN5), //PAX-A 100XG5
1915+
SWITCHTEC_PCI_DEVICE(0x5384, SWITCHTEC_GEN5), //PAX-A 84XG5
1916+
SWITCHTEC_PCI_DEVICE(0x5368, SWITCHTEC_GEN5), //PAX-A 68XG5
1917+
SWITCHTEC_PCI_DEVICE(0x5352, SWITCHTEC_GEN5), //PAX-A 52XG5
1918+
SWITCHTEC_PCI_DEVICE(0x5336, SWITCHTEC_GEN5), //PAX-A 36XG5
1919+
SWITCHTEC_PCI_DEVICE(0x5328, SWITCHTEC_GEN5), //PAX-A 28XG5
1920+
SWITCHTEC_PCI_DEVICE(0x5400, SWITCHTEC_GEN5), //PFX-A 100XG5
1921+
SWITCHTEC_PCI_DEVICE(0x5484, SWITCHTEC_GEN5), //PFX-A 84XG5
1922+
SWITCHTEC_PCI_DEVICE(0x5468, SWITCHTEC_GEN5), //PFX-A 68XG5
1923+
SWITCHTEC_PCI_DEVICE(0x5452, SWITCHTEC_GEN5), //PFX-A 52XG5
1924+
SWITCHTEC_PCI_DEVICE(0x5436, SWITCHTEC_GEN5), //PFX-A 36XG5
1925+
SWITCHTEC_PCI_DEVICE(0x5428, SWITCHTEC_GEN5), //PFX-A 28XG5
18961926
{0}
18971927
};
18981928
MODULE_DEVICE_TABLE(pci, switchtec_pci_tbl);

0 commit comments

Comments
 (0)