15bcf1649SPavel Belous /* SPDX-License-Identifier: BSD-3-Clause 25bcf1649SPavel Belous * Copyright(c) 2018 Aquantia Corporation 35bcf1649SPavel Belous */ 45bcf1649SPavel Belous 55bcf1649SPavel Belous #ifndef AQ_COMMON_H 65bcf1649SPavel Belous #define AQ_COMMON_H 75bcf1649SPavel Belous 8*a1db7382SIgor Russkikh #define ATL_PMD_DRIVER_VERSION "0.6.7" 95bcf1649SPavel Belous 105bcf1649SPavel Belous #define PCI_VENDOR_ID_AQUANTIA 0x1D6A 115bcf1649SPavel Belous 125bcf1649SPavel Belous #define AQ_DEVICE_ID_0001 0x0001 135bcf1649SPavel Belous #define AQ_DEVICE_ID_D100 0xD100 145bcf1649SPavel Belous #define AQ_DEVICE_ID_D107 0xD107 155bcf1649SPavel Belous #define AQ_DEVICE_ID_D108 0xD108 165bcf1649SPavel Belous #define AQ_DEVICE_ID_D109 0xD109 175bcf1649SPavel Belous 185bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC100 0x00B1 195bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC107 0x07B1 205bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC108 0x08B1 215bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC109 0x09B1 225bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC111 0x11B1 235bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC112 0x12B1 245bcf1649SPavel Belous 255bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC100S 0x80B1 265bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC107S 0x87B1 275bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC108S 0x88B1 285bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC109S 0x89B1 295bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC111S 0x91B1 305bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC112S 0x92B1 315bcf1649SPavel Belous 325bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC111E 0x51B1 335bcf1649SPavel Belous #define AQ_DEVICE_ID_AQC112E 0x52B1 345bcf1649SPavel Belous 355bcf1649SPavel Belous #define HW_ATL_NIC_NAME "aQuantia AQtion 10Gbit Network Adapter" 365bcf1649SPavel Belous 375bcf1649SPavel Belous #define AQ_HWREV_ANY 0 385bcf1649SPavel Belous #define AQ_HWREV_1 1 395bcf1649SPavel Belous #define AQ_HWREV_2 2 405bcf1649SPavel Belous 415bcf1649SPavel Belous #define AQ_NIC_RATE_10G BIT(0) 425bcf1649SPavel Belous #define AQ_NIC_RATE_5G BIT(1) 435bcf1649SPavel Belous #define AQ_NIC_RATE_5G5R BIT(2) 445bcf1649SPavel Belous #define AQ_NIC_RATE_2G5 BIT(3) 455bcf1649SPavel Belous #define AQ_NIC_RATE_1G BIT(4) 465bcf1649SPavel Belous #define AQ_NIC_RATE_100M BIT(5) 475bcf1649SPavel Belous 485bcf1649SPavel Belous #define AQ_NIC_RATE_EEE_10G BIT(6) 495bcf1649SPavel Belous #define AQ_NIC_RATE_EEE_5G BIT(7) 505bcf1649SPavel Belous #define AQ_NIC_RATE_EEE_2G5 BIT(8) 515bcf1649SPavel Belous #define AQ_NIC_RATE_EEE_1G BIT(9) 525bcf1649SPavel Belous 535bcf1649SPavel Belous 545bcf1649SPavel Belous #define ATL_MAX_RING_DESC (8 * 1024 - 8) 555bcf1649SPavel Belous #define ATL_MIN_RING_DESC 32 565bcf1649SPavel Belous #define ATL_RXD_ALIGN 8 575bcf1649SPavel Belous #define ATL_TXD_ALIGN 8 585bcf1649SPavel Belous #define ATL_TX_MAX_SEG 16 595bcf1649SPavel Belous 605bcf1649SPavel Belous #define ATL_MAX_INTR_QUEUE_NUM 15 615bcf1649SPavel Belous 625bcf1649SPavel Belous #define ATL_MISC_VEC_ID 10 635bcf1649SPavel Belous #define ATL_RX_VEC_START 0 645bcf1649SPavel Belous 655bcf1649SPavel Belous #define AQ_NIC_WOL_ENABLED BIT(0) 665bcf1649SPavel Belous 675bcf1649SPavel Belous 685bcf1649SPavel Belous #define AQ_NIC_FC_OFF 0U 695bcf1649SPavel Belous #define AQ_NIC_FC_TX 1U 705bcf1649SPavel Belous #define AQ_NIC_FC_RX 2U 715bcf1649SPavel Belous #define AQ_NIC_FC_FULL 3U 725bcf1649SPavel Belous #define AQ_NIC_FC_AUTO 4U 735bcf1649SPavel Belous 745bcf1649SPavel Belous 755bcf1649SPavel Belous #define AQ_CFG_TX_FRAME_MAX (16U * 1024U) 765bcf1649SPavel Belous #define AQ_CFG_RX_FRAME_MAX (2U * 1024U) 775bcf1649SPavel Belous 785bcf1649SPavel Belous #define AQ_HW_MULTICAST_ADDRESS_MAX 32 795bcf1649SPavel Belous #define AQ_HW_MAX_SEGS_SIZE 40 805bcf1649SPavel Belous 815bcf1649SPavel Belous #define AQ_HW_MAX_RX_QUEUES 8 825bcf1649SPavel Belous #define AQ_HW_MAX_TX_QUEUES 8 835bcf1649SPavel Belous #define AQ_HW_MIN_RX_RING_SIZE 512 845bcf1649SPavel Belous #define AQ_HW_MAX_RX_RING_SIZE 8192 855bcf1649SPavel Belous #define AQ_HW_MIN_TX_RING_SIZE 512 865bcf1649SPavel Belous #define AQ_HW_MAX_TX_RING_SIZE 8192 875bcf1649SPavel Belous 885bcf1649SPavel Belous #define ATL_DEFAULT_RX_FREE_THRESH 64 895bcf1649SPavel Belous #define ATL_DEFAULT_TX_FREE_THRESH 64 905bcf1649SPavel Belous 915bcf1649SPavel Belous #define ATL_IRQ_CAUSE_LINK 0x8 925bcf1649SPavel Belous 935bcf1649SPavel Belous #define AQ_HW_LED_BLINK 0x2U 945bcf1649SPavel Belous #define AQ_HW_LED_DEFAULT 0x0U 955bcf1649SPavel Belous 965bcf1649SPavel Belous #endif /* AQ_COMMON_H */ 97