gpu: nvgpu: PCIE table update for TU104-QS

-Added PCIE device info for TU104-QS chip & marked as FUSA SKU
 using device flag
-is_fusa_sku flag will be set if device flag has FUSA SKU flag set
 & this will be checked in driver to execute functionality
 specific to FUSA SKU

JIRA NVGPU-3727

Change-Id: I49ea357133ce0b9bbf52dae72afcf8139ab01346
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2161163
GVS: Gerrit_Virtual_Submit
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Mahantesh Kumbar
2019-07-25 15:46:59 +05:30
committed by mobile promotions
parent ca73f9207a
commit 6290d92926
2 changed files with 20 additions and 0 deletions

View File

@@ -2173,6 +2173,7 @@ struct gk20a {
u16 pci_subsystem_vendor_id, pci_subsystem_device_id;
u16 pci_class;
u8 pci_revision;
bool is_fusa_sku;
/*
* PCI power management: i2c device index, port and address for

View File

@@ -158,6 +158,7 @@ static struct gk20a_platform nvgpu_pci_device[] = {
#define PCI_DEVICE_FLAGS(driver_data) ((driver_data) & 0xFFFF0000U)
#define PCI_DEVICE_F_INTERNAL_CHIP_SKU BIT(31)
#define PCI_DEVICE_F_FUSA_CHIP_SKU BIT(30)
static struct pci_device_id nvgpu_pci_table[] = {
{
@@ -202,6 +203,20 @@ static struct pci_device_id nvgpu_pci_table[] = {
.class_mask = 0xff << 16,
.driver_data = 1 | PCI_DEVICE_F_INTERNAL_CHIP_SKU,
},
{
/* TU104-QS SKU*/
PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, 0x1ebc),
.class = PCI_BASE_CLASS_DISPLAY << 16,
.class_mask = 0xff << 16,
.driver_data = 1 | PCI_DEVICE_F_FUSA_CHIP_SKU,
},
{
/* TU104-QS SKU*/
PCI_DEVICE(PCI_VENDOR_ID_NVIDIA, 0x1efc),
.class = PCI_BASE_CLASS_DISPLAY << 16,
.class_mask = 0xff << 16,
.driver_data = 1 | PCI_DEVICE_F_FUSA_CHIP_SKU,
},
{}
};
@@ -453,6 +468,10 @@ static int nvgpu_pci_probe(struct pci_dev *pdev,
nvgpu_err(g, "replace board, or use at your own risks");
}
if ((device_flags & PCI_DEVICE_F_FUSA_CHIP_SKU) != 0U) {
g->is_fusa_sku = true;
}
g->ina3221_dcb_index = platform->ina3221_dcb_index;
g->ina3221_i2c_address = platform->ina3221_i2c_address;
g->ina3221_i2c_port = platform->ina3221_i2c_port;