Skip to content

Commit 93aa47d

Browse files
chenhuacaiNipaLocal
authored andcommitted
net: stmmac: dwmac-loongson: Add new GMAC's PCI device ID support
Add a new GMAC's PCI device ID (0x7a23) support which is used in Loongson-2K3000/Loongson-3B6000M. The new GMAC device use external PHY, so it reuses loongson_gmac_data() as the old GMAC device (0x7a03), and the new GMAC device still doesn't support flow control now. Reviewed-by: Andrew Lunn <[email protected]> Reviewed-by: Yanteng Si <[email protected]> Tested-by: Henry Chen <[email protected]> Tested-by: Biao Dong <[email protected]> Signed-off-by: Baoqi Zhang <[email protected]> Signed-off-by: Huacai Chen <[email protected]> Signed-off-by: NipaLocal <nipa@local>
1 parent a79a4ae commit 93aa47d

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

drivers/net/ethernet/stmicro/stmmac/dwmac-loongson.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@
6666
DMA_STATUS_TPS | DMA_STATUS_TI | \
6767
DMA_STATUS_MSK_COMMON_LOONGSON)
6868

69-
#define PCI_DEVICE_ID_LOONGSON_GMAC 0x7a03
69+
#define PCI_DEVICE_ID_LOONGSON_GMAC1 0x7a03
70+
#define PCI_DEVICE_ID_LOONGSON_GMAC2 0x7a23
7071
#define PCI_DEVICE_ID_LOONGSON_GNET 0x7a13
7172
#define DWMAC_CORE_MULTICHAN_V1 0x10 /* Loongson custom ID 0x10 */
7273
#define DWMAC_CORE_MULTICHAN_V2 0x12 /* Loongson custom ID 0x12 */
@@ -371,7 +372,7 @@ static struct mac_device_info *loongson_dwmac_setup(void *apriv)
371372
/* Loongson GMAC doesn't support the flow control. Loongson GNET
372373
* without multi-channel doesn't support the half-duplex link mode.
373374
*/
374-
if (pdev->device == PCI_DEVICE_ID_LOONGSON_GMAC) {
375+
if (pdev->device != PCI_DEVICE_ID_LOONGSON_GNET) {
375376
mac->link.caps = MAC_10 | MAC_100 | MAC_1000;
376377
} else {
377378
if (ld->multichan)
@@ -659,7 +660,8 @@ static SIMPLE_DEV_PM_OPS(loongson_dwmac_pm_ops, loongson_dwmac_suspend,
659660
loongson_dwmac_resume);
660661

661662
static const struct pci_device_id loongson_dwmac_id_table[] = {
662-
{ PCI_DEVICE_DATA(LOONGSON, GMAC, &loongson_gmac_pci_info) },
663+
{ PCI_DEVICE_DATA(LOONGSON, GMAC1, &loongson_gmac_pci_info) },
664+
{ PCI_DEVICE_DATA(LOONGSON, GMAC2, &loongson_gmac_pci_info) },
663665
{ PCI_DEVICE_DATA(LOONGSON, GNET, &loongson_gnet_pci_info) },
664666
{}
665667
};

0 commit comments

Comments
 (0)