linux/drivers/net/ethernet/engleder/tsnep_tc.c

// SPDX-License-Identifier: GPL-2.0
/* Copyright (C) 2021 Gerhard Engleder <[email protected]> */

#include "tsnep.h"

#include <net/pkt_sched.h>

/* save one operation at the end for additional operation at list change */
#define TSNEP_MAX_GCL_NUM

static int tsnep_validate_gcl(struct tc_taprio_qopt_offload *qopt)
{}

static void tsnep_write_gcl_operation(struct tsnep_gcl *gcl, int index,
				      u32 properties, u32 interval, bool flush)
{}

static u64 tsnep_change_duration(struct tsnep_gcl *gcl, int index)
{}

static void tsnep_write_gcl(struct tsnep_gcl *gcl,
			    struct tc_taprio_qopt_offload *qopt)
{}

static u64 tsnep_gcl_start_after(struct tsnep_gcl *gcl, u64 limit)
{}

static u64 tsnep_gcl_start_before(struct tsnep_gcl *gcl, u64 limit)
{}

static u64 tsnep_set_gcl_change(struct tsnep_gcl *gcl, int index, u64 change,
				bool insert)
{}

static void tsnep_clean_gcl(struct tsnep_gcl *gcl)
{}

static u64 tsnep_insert_gcl_operation(struct tsnep_gcl *gcl, int ref,
				      u64 change, u32 interval)
{}

static u64 tsnep_extend_gcl(struct tsnep_gcl *gcl, u64 start, u32 extension)
{}

static u64 tsnep_cut_gcl(struct tsnep_gcl *gcl, u64 start, u64 cycle_time)
{}

static int tsnep_enable_gcl(struct tsnep_adapter *adapter,
			    struct tsnep_gcl *gcl, struct tsnep_gcl *curr)
{}

static int tsnep_taprio(struct tsnep_adapter *adapter,
			struct tc_taprio_qopt_offload *qopt)
{}

static int tsnep_tc_query_caps(struct tsnep_adapter *adapter,
			       struct tc_query_caps_base *base)
{}

int tsnep_tc_setup(struct net_device *netdev, enum tc_setup_type type,
		   void *type_data)
{}

int tsnep_tc_init(struct tsnep_adapter *adapter)
{}

void tsnep_tc_cleanup(struct tsnep_adapter *adapter)
{}