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

// SPDX-License-Identifier: BSD-3-Clause-Clear
/*
 * Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
 * Copyright (c) 2021-2024 Qualcomm Innovation Center, Inc. All rights reserved.
 */
#include <linux/dma-mapping.h>
#include "hal_tx.h"
#include "debug.h"
#include "hal_desc.h"
#include "hif.h"

static const struct hal_srng_config hw_srng_config_template[] =;

static int ath11k_hal_alloc_cont_rdp(struct ath11k_base *ab)
{}

static void ath11k_hal_free_cont_rdp(struct ath11k_base *ab)
{}

static int ath11k_hal_alloc_cont_wrp(struct ath11k_base *ab)
{}

static void ath11k_hal_free_cont_wrp(struct ath11k_base *ab)
{}

static void ath11k_hal_ce_dst_setup(struct ath11k_base *ab,
				    struct hal_srng *srng, int ring_num)
{}

static void ath11k_hal_srng_dst_hw_init(struct ath11k_base *ab,
					struct hal_srng *srng)
{}

static void ath11k_hal_srng_src_hw_init(struct ath11k_base *ab,
					struct hal_srng *srng)
{}

static void ath11k_hal_srng_hw_init(struct ath11k_base *ab,
				    struct hal_srng *srng)
{}

static int ath11k_hal_srng_get_ring_id(struct ath11k_base *ab,
				       enum hal_ring_type type,
				       int ring_num, int mac_id)
{}

int ath11k_hal_srng_get_entrysize(struct ath11k_base *ab, u32 ring_type)
{}

int ath11k_hal_srng_get_max_entries(struct ath11k_base *ab, u32 ring_type)
{}

void ath11k_hal_srng_get_params(struct ath11k_base *ab, struct hal_srng *srng,
				struct hal_srng_params *params)
{}

dma_addr_t ath11k_hal_srng_get_hp_addr(struct ath11k_base *ab,
				       struct hal_srng *srng)
{}

dma_addr_t ath11k_hal_srng_get_tp_addr(struct ath11k_base *ab,
				       struct hal_srng *srng)
{}

u32 ath11k_hal_ce_get_desc_size(enum hal_ce_desc type)
{}

void ath11k_hal_ce_src_set_desc(void *buf, dma_addr_t paddr, u32 len, u32 id,
				u8 byte_swap_data)
{}

void ath11k_hal_ce_dst_set_desc(void *buf, dma_addr_t paddr)
{}

u32 ath11k_hal_ce_dst_status_get_length(void *buf)
{}

void ath11k_hal_set_link_desc_addr(struct hal_wbm_link_desc *desc, u32 cookie,
				   dma_addr_t paddr)
{}

u32 *ath11k_hal_srng_dst_peek(struct ath11k_base *ab, struct hal_srng *srng)
{}

static u32 *ath11k_hal_srng_dst_peek_with_dma(struct ath11k_base *ab,
					      struct hal_srng *srng, dma_addr_t *paddr)
{}

static void ath11k_hal_srng_prefetch_desc(struct ath11k_base *ab,
					  struct hal_srng *srng)
{}

u32 *ath11k_hal_srng_dst_get_next_entry(struct ath11k_base *ab,
					struct hal_srng *srng)
{}

int ath11k_hal_srng_dst_num_free(struct ath11k_base *ab, struct hal_srng *srng,
				 bool sync_hw_ptr)
{}

/* Returns number of available entries in src ring */
int ath11k_hal_srng_src_num_free(struct ath11k_base *ab, struct hal_srng *srng,
				 bool sync_hw_ptr)
{}

u32 *ath11k_hal_srng_src_get_next_entry(struct ath11k_base *ab,
					struct hal_srng *srng)
{}

u32 *ath11k_hal_srng_src_reap_next(struct ath11k_base *ab,
				   struct hal_srng *srng)
{}

u32 *ath11k_hal_srng_src_get_next_reaped(struct ath11k_base *ab,
					 struct hal_srng *srng)
{}

u32 *ath11k_hal_srng_src_next_peek(struct ath11k_base *ab, struct hal_srng *srng)
{}

u32 *ath11k_hal_srng_src_peek(struct ath11k_base *ab, struct hal_srng *srng)
{}

void ath11k_hal_srng_access_begin(struct ath11k_base *ab, struct hal_srng *srng)
{}

/* Update cached ring head/tail pointers to HW. ath11k_hal_srng_access_begin()
 * should have been called before this.
 */
void ath11k_hal_srng_access_end(struct ath11k_base *ab, struct hal_srng *srng)
{}

void ath11k_hal_setup_link_idle_list(struct ath11k_base *ab,
				     struct hal_wbm_idle_scatter_list *sbuf,
				     u32 nsbufs, u32 tot_link_desc,
				     u32 end_offset)
{}

int ath11k_hal_srng_setup(struct ath11k_base *ab, enum hal_ring_type type,
			  int ring_num, int mac_id,
			  struct hal_srng_params *params)
{}

static void ath11k_hal_srng_update_hp_tp_addr(struct ath11k_base *ab,
					      int shadow_cfg_idx,
					  enum hal_ring_type ring_type,
					  int ring_num)
{}

int ath11k_hal_srng_update_shadow_config(struct ath11k_base *ab,
					 enum hal_ring_type ring_type,
					 int ring_num)
{}

void ath11k_hal_srng_shadow_config(struct ath11k_base *ab)
{}

void ath11k_hal_srng_get_shadow_config(struct ath11k_base *ab,
				       u32 **cfg, u32 *len)
{}

void ath11k_hal_srng_shadow_update_hp_tp(struct ath11k_base *ab,
					 struct hal_srng *srng)
{}

static int ath11k_hal_srng_create_config(struct ath11k_base *ab)
{}

static void ath11k_hal_register_srng_key(struct ath11k_base *ab)
{}

static void ath11k_hal_unregister_srng_key(struct ath11k_base *ab)
{}

int ath11k_hal_srng_init(struct ath11k_base *ab)
{}
EXPORT_SYMBOL();

void ath11k_hal_srng_deinit(struct ath11k_base *ab)
{}
EXPORT_SYMBOL();

void ath11k_hal_dump_srng_stats(struct ath11k_base *ab)
{}