15762613eSGovind Singh /* SPDX-License-Identifier: BSD-3-Clause-Clear */ 25762613eSGovind Singh /* 35762613eSGovind Singh * Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. 45762613eSGovind Singh */ 55762613eSGovind Singh 65762613eSGovind Singh #include "core.h" 75762613eSGovind Singh 85697a564SGovind Singh struct ath11k_msi_user { 95697a564SGovind Singh char *name; 105697a564SGovind Singh int num_vectors; 115697a564SGovind Singh u32 base_vector; 125697a564SGovind Singh }; 135697a564SGovind Singh 145697a564SGovind Singh struct ath11k_msi_config { 155697a564SGovind Singh int total_vectors; 165697a564SGovind Singh int total_users; 175697a564SGovind Singh struct ath11k_msi_user *users; 185697a564SGovind Singh }; 195697a564SGovind Singh 205762613eSGovind Singh struct ath11k_pci { 215762613eSGovind Singh struct pci_dev *pdev; 225762613eSGovind Singh struct ath11k_base *ab; 235762613eSGovind Singh u16 dev_id; 245697a564SGovind Singh u32 msi_ep_base_data; 255762613eSGovind Singh }; 265762613eSGovind Singh 275762613eSGovind Singh static inline struct ath11k_pci *ath11k_pci_priv(struct ath11k_base *ab) 285762613eSGovind Singh { 295762613eSGovind Singh return (struct ath11k_pci *)ab->drv_priv; 305762613eSGovind Singh } 31