linux/drivers/net/wireless/ath/ath11k/ahb.c

// SPDX-License-Identifier: BSD-3-Clause-Clear
/*
 * Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
 * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved.
 */

#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/property.h>
#include <linux/of_device.h>
#include <linux/of.h>
#include <linux/dma-mapping.h>
#include <linux/of_address.h>
#include <linux/iommu.h>
#include "ahb.h"
#include "debug.h"
#include "hif.h"
#include "qmi.h"
#include <linux/remoteproc.h>
#include "pcic.h"
#include <linux/soc/qcom/smem.h>
#include <linux/soc/qcom/smem_state.h>

static const struct of_device_id ath11k_ahb_of_match[] =;

MODULE_DEVICE_TABLE(of, ath11k_ahb_of_match);

#define ATH11K_IRQ_CE0_OFFSET

static const char *irq_name[ATH11K_IRQ_NUM_MAX] =;

/* enum ext_irq_num - irq numbers that can be used by external modules
 * like datapath
 */
enum ext_irq_num {};

static int
ath11k_ahb_get_msi_irq_wcn6750(struct ath11k_base *ab, unsigned int vector)
{}

static inline u32
ath11k_ahb_get_window_start_wcn6750(struct ath11k_base *ab, u32 offset)
{}

static void
ath11k_ahb_window_write32_wcn6750(struct ath11k_base *ab, u32 offset, u32 value)
{}

static u32 ath11k_ahb_window_read32_wcn6750(struct ath11k_base *ab, u32 offset)
{}

static const struct ath11k_pci_ops ath11k_ahb_pci_ops_wcn6750 =;

static inline u32 ath11k_ahb_read32(struct ath11k_base *ab, u32 offset)
{}

static inline void ath11k_ahb_write32(struct ath11k_base *ab, u32 offset, u32 value)
{}

static void ath11k_ahb_kill_tasklets(struct ath11k_base *ab)
{}

static void ath11k_ahb_ext_grp_disable(struct ath11k_ext_irq_grp *irq_grp)
{}

static void __ath11k_ahb_ext_irq_disable(struct ath11k_base *ab)
{}

static void ath11k_ahb_ext_grp_enable(struct ath11k_ext_irq_grp *irq_grp)
{}

static void ath11k_ahb_setbit32(struct ath11k_base *ab, u8 bit, u32 offset)
{}

static void ath11k_ahb_clearbit32(struct ath11k_base *ab, u8 bit, u32 offset)
{}

static void ath11k_ahb_ce_irq_enable(struct ath11k_base *ab, u16 ce_id)
{}

static void ath11k_ahb_ce_irq_disable(struct ath11k_base *ab, u16 ce_id)
{}

static void ath11k_ahb_sync_ce_irqs(struct ath11k_base *ab)
{}

static void ath11k_ahb_sync_ext_irqs(struct ath11k_base *ab)
{}

static void ath11k_ahb_ce_irqs_enable(struct ath11k_base *ab)
{}

static void ath11k_ahb_ce_irqs_disable(struct ath11k_base *ab)
{}

static int ath11k_ahb_start(struct ath11k_base *ab)
{}

static void ath11k_ahb_ext_irq_enable(struct ath11k_base *ab)
{}

static void ath11k_ahb_ext_irq_disable(struct ath11k_base *ab)
{}

static void ath11k_ahb_stop(struct ath11k_base *ab)
{}

static int ath11k_ahb_power_up(struct ath11k_base *ab)
{}

static void ath11k_ahb_power_down(struct ath11k_base *ab, bool is_suspend)
{}

static void ath11k_ahb_init_qmi_ce_config(struct ath11k_base *ab)
{}

static void ath11k_ahb_free_ext_irq(struct ath11k_base *ab)
{}

static void ath11k_ahb_free_irq(struct ath11k_base *ab)
{}

static void ath11k_ahb_ce_tasklet(struct tasklet_struct *t)
{}

static irqreturn_t ath11k_ahb_ce_interrupt_handler(int irq, void *arg)
{}

static int ath11k_ahb_ext_grp_napi_poll(struct napi_struct *napi, int budget)
{}

static irqreturn_t ath11k_ahb_ext_interrupt_handler(int irq, void *arg)
{}

static int ath11k_ahb_config_ext_irq(struct ath11k_base *ab)
{}

static int ath11k_ahb_config_irq(struct ath11k_base *ab)
{}

static int ath11k_ahb_map_service_to_pipe(struct ath11k_base *ab, u16 service_id,
					  u8 *ul_pipe, u8 *dl_pipe)
{}

static int ath11k_ahb_hif_suspend(struct ath11k_base *ab)
{}

static int ath11k_ahb_hif_resume(struct ath11k_base *ab)
{}

static const struct ath11k_hif_ops ath11k_ahb_hif_ops_ipq8074 =;

static const struct ath11k_hif_ops ath11k_ahb_hif_ops_wcn6750 =;

static int ath11k_core_get_rproc(struct ath11k_base *ab)
{}

static int ath11k_ahb_setup_msi_resources(struct ath11k_base *ab)
{}

static int ath11k_ahb_setup_smp2p_handle(struct ath11k_base *ab)
{}

static void ath11k_ahb_release_smp2p_handle(struct ath11k_base *ab)
{}

static int ath11k_ahb_setup_resources(struct ath11k_base *ab)
{}

static int ath11k_ahb_setup_msa_resources(struct ath11k_base *ab)
{}

static int ath11k_ahb_ce_remap(struct ath11k_base *ab)
{}

static void ath11k_ahb_ce_unmap(struct ath11k_base *ab)
{}

static int ath11k_ahb_fw_resources_init(struct ath11k_base *ab)
{}

static int ath11k_ahb_fw_resource_deinit(struct ath11k_base *ab)
{}

static int ath11k_ahb_probe(struct platform_device *pdev)
{}

static void ath11k_ahb_remove_prepare(struct ath11k_base *ab)
{}

static void ath11k_ahb_free_resources(struct ath11k_base *ab)
{}

static void ath11k_ahb_remove(struct platform_device *pdev)
{}

static void ath11k_ahb_shutdown(struct platform_device *pdev)
{}

static struct platform_driver ath11k_ahb_driver =;

module_platform_driver();

MODULE_DESCRIPTION();
MODULE_LICENSE();