linux/drivers/net/wireless/ath/ath12k/hw.c

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

#include <linux/types.h>
#include <linux/bitops.h>
#include <linux/bitfield.h>

#include "debug.h"
#include "core.h"
#include "ce.h"
#include "hw.h"
#include "mhi.h"
#include "dp_rx.h"

static const guid_t wcn7850_uuid =;

static u8 ath12k_hw_qcn9274_mac_from_pdev_id(int pdev_idx)
{}

static int ath12k_hw_mac_id_to_pdev_id_qcn9274(const struct ath12k_hw_params *hw,
					       int mac_id)
{}

static int ath12k_hw_mac_id_to_srng_id_qcn9274(const struct ath12k_hw_params *hw,
					       int mac_id)
{}

static u8 ath12k_hw_get_ring_selector_qcn9274(struct sk_buff *skb)
{}

static bool ath12k_dp_srng_is_comp_ring_qcn9274(int ring_num)
{}

static int ath12k_hw_mac_id_to_pdev_id_wcn7850(const struct ath12k_hw_params *hw,
					       int mac_id)
{}

static int ath12k_hw_mac_id_to_srng_id_wcn7850(const struct ath12k_hw_params *hw,
					       int mac_id)
{}

static u8 ath12k_hw_get_ring_selector_wcn7850(struct sk_buff *skb)
{}

static bool ath12k_dp_srng_is_comp_ring_wcn7850(int ring_num)
{}

static const struct ath12k_hw_ops qcn9274_ops =;

static const struct ath12k_hw_ops wcn7850_ops =;

#define ATH12K_TX_RING_MASK_0
#define ATH12K_TX_RING_MASK_1
#define ATH12K_TX_RING_MASK_2
#define ATH12K_TX_RING_MASK_3
#define ATH12K_TX_RING_MASK_4

#define ATH12K_RX_RING_MASK_0
#define ATH12K_RX_RING_MASK_1
#define ATH12K_RX_RING_MASK_2
#define ATH12K_RX_RING_MASK_3

#define ATH12K_RX_ERR_RING_MASK_0

#define ATH12K_RX_WBM_REL_RING_MASK_0

#define ATH12K_REO_STATUS_RING_MASK_0

#define ATH12K_HOST2RXDMA_RING_MASK_0

#define ATH12K_RX_MON_RING_MASK_0
#define ATH12K_RX_MON_RING_MASK_1
#define ATH12K_RX_MON_RING_MASK_2

#define ATH12K_TX_MON_RING_MASK_0
#define ATH12K_TX_MON_RING_MASK_1

/* Target firmware's Copy Engine configuration. */
static const struct ce_pipe_config ath12k_target_ce_config_wlan_qcn9274[] =;

/* Target firmware's Copy Engine configuration. */
static const struct ce_pipe_config ath12k_target_ce_config_wlan_wcn7850[] =;

/* Map from service/endpoint to Copy Engine.
 * This table is derived from the CE_PCI TABLE, above.
 * It is passed to the Target at startup for use by firmware.
 */
static const struct service_to_pipe ath12k_target_service_to_ce_map_wlan_qcn9274[] =;

static const struct service_to_pipe ath12k_target_service_to_ce_map_wlan_wcn7850[] =;

static const struct ath12k_hw_ring_mask ath12k_hw_ring_mask_qcn9274 =;

static const struct ath12k_hw_ring_mask ath12k_hw_ring_mask_wcn7850 =;

static const struct ath12k_hw_regs qcn9274_v1_regs =;

static const struct ath12k_hw_regs qcn9274_v2_regs =;

static const struct ath12k_hw_regs wcn7850_regs =;

static const struct ath12k_hw_hal_params ath12k_hw_hal_params_qcn9274 =;

static const struct ath12k_hw_hal_params ath12k_hw_hal_params_wcn7850 =;

static const struct ath12k_hw_params ath12k_hw_params[] =;

int ath12k_hw_init(struct ath12k_base *ab)
{}