| .. | .. |
|---|
| 61 | 61 | wch_ch382_0s1p, |
|---|
| 62 | 62 | wch_ch382_2s1p, |
|---|
| 63 | 63 | brainboxes_5s1p, |
|---|
| 64 | | - sunix_2s1p, |
|---|
| 64 | + sunix_4008a, |
|---|
| 65 | + sunix_5069a, |
|---|
| 66 | + sunix_5079a, |
|---|
| 67 | + sunix_5099a, |
|---|
| 65 | 68 | }; |
|---|
| 66 | 69 | |
|---|
| 67 | 70 | /* each element directly indexed from enum list, above */ |
|---|
| .. | .. |
|---|
| 151 | 154 | /* wch_ch382_0s1p*/ { 1, { { 2, -1}, } }, |
|---|
| 152 | 155 | /* wch_ch382_2s1p*/ { 1, { { 2, -1}, } }, |
|---|
| 153 | 156 | /* brainboxes_5s1p */ { 1, { { 3, -1 }, } }, |
|---|
| 154 | | - /* sunix_2s1p */ { 1, { { 3, -1 }, } }, |
|---|
| 157 | + /* sunix_4008a */ { 1, { { 1, 2 }, } }, |
|---|
| 158 | + /* sunix_5069a */ { 1, { { 1, 2 }, } }, |
|---|
| 159 | + /* sunix_5079a */ { 1, { { 1, 2 }, } }, |
|---|
| 160 | + /* sunix_5099a */ { 1, { { 1, 2 }, } }, |
|---|
| 155 | 161 | }; |
|---|
| 156 | 162 | |
|---|
| 157 | 163 | static struct pci_device_id parport_serial_pci_tbl[] = { |
|---|
| .. | .. |
|---|
| 261 | 267 | { PCI_VENDOR_ID_INTASHIELD, 0x4100, |
|---|
| 262 | 268 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, brainboxes_5s1p }, |
|---|
| 263 | 269 | |
|---|
| 264 | | - /* |
|---|
| 265 | | - * More SUNIX variations. At least one of these has part number |
|---|
| 266 | | - * '5079A but subdevice 0x102. That board reports 0x0708 as |
|---|
| 267 | | - * its PCI Class. |
|---|
| 268 | | - */ |
|---|
| 270 | + /* Sunix boards */ |
|---|
| 269 | 271 | { PCI_VENDOR_ID_SUNIX, PCI_DEVICE_ID_SUNIX_1999, PCI_VENDOR_ID_SUNIX, |
|---|
| 270 | | - 0x0102, 0, 0, sunix_2s1p }, |
|---|
| 272 | + 0x0100, 0, 0, sunix_4008a }, |
|---|
| 273 | + { PCI_VENDOR_ID_SUNIX, PCI_DEVICE_ID_SUNIX_1999, PCI_VENDOR_ID_SUNIX, |
|---|
| 274 | + 0x0101, 0, 0, sunix_5069a }, |
|---|
| 275 | + { PCI_VENDOR_ID_SUNIX, PCI_DEVICE_ID_SUNIX_1999, PCI_VENDOR_ID_SUNIX, |
|---|
| 276 | + 0x0102, 0, 0, sunix_5079a }, |
|---|
| 277 | + { PCI_VENDOR_ID_SUNIX, PCI_DEVICE_ID_SUNIX_1999, PCI_VENDOR_ID_SUNIX, |
|---|
| 278 | + 0x0104, 0, 0, sunix_5099a }, |
|---|
| 271 | 279 | |
|---|
| 272 | 280 | { 0, } /* terminate list */ |
|---|
| 273 | 281 | }; |
|---|
| .. | .. |
|---|
| 516 | 524 | .base_baud = 921600, |
|---|
| 517 | 525 | .uart_offset = 8, |
|---|
| 518 | 526 | }, |
|---|
| 519 | | - [sunix_2s1p] = { |
|---|
| 520 | | - .flags = FL_BASE0|FL_BASE_BARS, |
|---|
| 527 | + [sunix_4008a] = { |
|---|
| 528 | + .num_ports = 0, |
|---|
| 529 | + }, |
|---|
| 530 | + [sunix_5069a] = { |
|---|
| 531 | + .num_ports = 1, |
|---|
| 532 | + .base_baud = 921600, |
|---|
| 533 | + .uart_offset = 0x8, |
|---|
| 534 | + }, |
|---|
| 535 | + [sunix_5079a] = { |
|---|
| 521 | 536 | .num_ports = 2, |
|---|
| 522 | | - .base_baud = 921600, |
|---|
| 523 | | - .uart_offset = 8, |
|---|
| 537 | + .base_baud = 921600, |
|---|
| 538 | + .uart_offset = 0x8, |
|---|
| 539 | + }, |
|---|
| 540 | + [sunix_5099a] = { |
|---|
| 541 | + .num_ports = 4, |
|---|
| 542 | + .base_baud = 921600, |
|---|
| 543 | + .uart_offset = 0x8, |
|---|
| 524 | 544 | }, |
|---|
| 525 | 545 | }; |
|---|
| 526 | 546 | |
|---|
| .. | .. |
|---|
| 660 | 680 | |
|---|
| 661 | 681 | static int __maybe_unused parport_serial_pci_suspend(struct device *dev) |
|---|
| 662 | 682 | { |
|---|
| 663 | | - struct pci_dev *pdev = to_pci_dev(dev); |
|---|
| 664 | | - struct parport_serial_private *priv = pci_get_drvdata(pdev); |
|---|
| 683 | + struct parport_serial_private *priv = dev_get_drvdata(dev); |
|---|
| 665 | 684 | |
|---|
| 666 | 685 | if (priv->serial) |
|---|
| 667 | 686 | pciserial_suspend_ports(priv->serial); |
|---|
| .. | .. |
|---|
| 672 | 691 | |
|---|
| 673 | 692 | static int __maybe_unused parport_serial_pci_resume(struct device *dev) |
|---|
| 674 | 693 | { |
|---|
| 675 | | - struct pci_dev *pdev = to_pci_dev(dev); |
|---|
| 676 | | - struct parport_serial_private *priv = pci_get_drvdata(pdev); |
|---|
| 694 | + struct parport_serial_private *priv = dev_get_drvdata(dev); |
|---|
| 677 | 695 | |
|---|
| 678 | 696 | if (priv->serial) |
|---|
| 679 | 697 | pciserial_resume_ports(priv->serial); |
|---|