1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
2 | /* Copyright (c) 2015-2016 Quantenna Communications. All rights reserved. */ |
3 | |
4 | #ifndef _QTN_HW_IDS_H_ |
5 | #define _QTN_HW_IDS_H_ |
6 | |
7 | #include <linux/pci_ids.h> |
8 | |
9 | #define PCIE_VENDOR_ID_QUANTENNA (0x1bb5) |
10 | |
11 | /* PCIE Device IDs */ |
12 | |
13 | #define PCIE_DEVICE_ID_QSR (0x0008) |
14 | |
15 | #define QTN_REG_SYS_CTRL_CSR 0x14 |
16 | #define QTN_CHIP_ID_MASK 0xF0 |
17 | #define QTN_CHIP_ID_TOPAZ 0x40 |
18 | #define QTN_CHIP_ID_PEARL 0x50 |
19 | #define QTN_CHIP_ID_PEARL_B 0x60 |
20 | #define QTN_CHIP_ID_PEARL_C 0x70 |
21 | |
22 | /* FW names */ |
23 | |
24 | #define QTN_PCI_PEARL_FW_NAME "qtn/fmac_qsr10g.img" |
25 | #define QTN_PCI_TOPAZ_FW_NAME "qtn/fmac_qsr1000.img" |
26 | #define QTN_PCI_TOPAZ_BOOTLD_NAME "qtn/uboot_qsr1000.img" |
27 | |
28 | static inline unsigned int qtnf_chip_id_get(const void __iomem *regs_base) |
29 | { |
30 | u32 board_rev = readl(addr: regs_base + QTN_REG_SYS_CTRL_CSR); |
31 | |
32 | return board_rev & QTN_CHIP_ID_MASK; |
33 | } |
34 | |
35 | #endif /* _QTN_HW_IDS_H_ */ |
36 | |