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

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

#include "dp_rx.h"
#include "debug.h"
#include "hif.h"

const struct ce_attr ath11k_host_ce_config_ipq8074[] =;

const struct ce_attr ath11k_host_ce_config_qca6390[] =;

const struct ce_attr ath11k_host_ce_config_qcn9074[] =;

static bool ath11k_ce_need_shadow_fix(int ce_id)
{}

void ath11k_ce_stop_shadow_timers(struct ath11k_base *ab)
{}

static int ath11k_ce_rx_buf_enqueue_pipe(struct ath11k_ce_pipe *pipe,
					 struct sk_buff *skb, dma_addr_t paddr)
{}

static int ath11k_ce_rx_post_pipe(struct ath11k_ce_pipe *pipe)
{}

static int ath11k_ce_completed_recv_next(struct ath11k_ce_pipe *pipe,
					 struct sk_buff **skb, int *nbytes)
{}

static void ath11k_ce_recv_process_cb(struct ath11k_ce_pipe *pipe)
{}

static struct sk_buff *ath11k_ce_completed_send_next(struct ath11k_ce_pipe *pipe)
{}

static void ath11k_ce_tx_process_cb(struct ath11k_ce_pipe *pipe)
{}

static void ath11k_ce_srng_msi_ring_params_setup(struct ath11k_base *ab, u32 ce_id,
						 struct hal_srng_params *ring_params)
{}

static int ath11k_ce_init_ring(struct ath11k_base *ab,
			       struct ath11k_ce_ring *ce_ring,
			       int ce_id, enum hal_ring_type type)
{}

static struct ath11k_ce_ring *
ath11k_ce_alloc_ring(struct ath11k_base *ab, int nentries, int desc_sz)
{}

static int ath11k_ce_alloc_pipe(struct ath11k_base *ab, int ce_id)
{}

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

void ath11k_ce_poll_send_completed(struct ath11k_base *ab, u8 pipe_id)
{}
EXPORT_SYMBOL();

int ath11k_ce_send(struct ath11k_base *ab, struct sk_buff *skb, u8 pipe_id,
		   u16 transfer_id)
{}

static void ath11k_ce_rx_pipe_cleanup(struct ath11k_ce_pipe *pipe)
{}

static void ath11k_ce_shadow_config(struct ath11k_base *ab)
{}

void ath11k_ce_get_shadow_config(struct ath11k_base *ab,
				 u32 **shadow_cfg, u32 *shadow_cfg_len)
{}
EXPORT_SYMBOL();

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

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

void ath11k_ce_rx_replenish_retry(struct timer_list *t)
{}

int ath11k_ce_init_pipes(struct ath11k_base *ab)
{}

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

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

/* For Big Endian Host, Copy Engine byte_swap is enabled
 * When Copy Engine does byte_swap, need to byte swap again for the
 * Host to get/put buffer content in the correct byte order
 */
void ath11k_ce_byte_swap(void *mem, u32 len)
{}

int ath11k_ce_get_attr_flags(struct ath11k_base *ab, int ce_id)
{}
EXPORT_SYMBOL();