drivers/net/ethernet/microchip/vcap/vcap_model_kunit.c

Source file repositories/reference/linux-study-clean/drivers/net/ethernet/microchip/vcap/vcap_model_kunit.c

File Facts

System
Linux kernel
Corpus path
drivers/net/ethernet/microchip/vcap/vcap_model_kunit.c
Extension
.c
Size
83546 bytes
Lines
4063
Domain
Driver Families
Bucket
drivers/net
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

// SPDX-License-Identifier: BSD-3-Clause
/* Copyright (C) 2023 Microchip Technology Inc. and its subsidiaries.
 * Microchip VCAP test model interface for kunit testing
 */

/* This file is autogenerated by cml-utils 2023-02-10 11:16:00 +0100.
 * Commit ID: c30fb4bf0281cd4a7133bdab6682f9e43c872ada
 */

#include <linux/types.h>
#include <linux/kernel.h>

#include "vcap_api.h"
#include "vcap_model_kunit.h"

/* keyfields */
static const struct vcap_field is0_ll_full_keyfield[] = {
	[VCAP_KF_TYPE] = {
		.type = VCAP_FIELD_U32,
		.offset = 0,
		.width = 2,
	},
	[VCAP_KF_LOOKUP_FIRST_IS] = {
		.type = VCAP_FIELD_BIT,
		.offset = 2,
		.width = 1,
	},
	[VCAP_KF_IF_IGR_PORT] = {
		.type = VCAP_FIELD_U32,
		.offset = 3,
		.width = 7,
	},
	[VCAP_KF_8021Q_VLAN_TAGS] = {
		.type = VCAP_FIELD_U32,
		.offset = 10,
		.width = 3,
	},
	[VCAP_KF_8021Q_TPID0] = {
		.type = VCAP_FIELD_U32,
		.offset = 13,
		.width = 3,
	},
	[VCAP_KF_8021Q_PCP0] = {
		.type = VCAP_FIELD_U32,
		.offset = 16,
		.width = 3,
	},
	[VCAP_KF_8021Q_DEI0] = {
		.type = VCAP_FIELD_BIT,
		.offset = 19,
		.width = 1,
	},
	[VCAP_KF_8021Q_VID0] = {
		.type = VCAP_FIELD_U32,
		.offset = 20,
		.width = 12,
	},
	[VCAP_KF_8021Q_TPID1] = {
		.type = VCAP_FIELD_U32,
		.offset = 32,
		.width = 3,
	},
	[VCAP_KF_8021Q_PCP1] = {
		.type = VCAP_FIELD_U32,
		.offset = 35,
		.width = 3,
	},
	[VCAP_KF_8021Q_DEI1] = {
		.type = VCAP_FIELD_BIT,
		.offset = 38,
		.width = 1,
	},
	[VCAP_KF_8021Q_VID1] = {
		.type = VCAP_FIELD_U32,
		.offset = 39,
		.width = 12,
	},
	[VCAP_KF_8021Q_TPID2] = {
		.type = VCAP_FIELD_U32,
		.offset = 51,
		.width = 3,
	},
	[VCAP_KF_8021Q_PCP2] = {
		.type = VCAP_FIELD_U32,
		.offset = 54,
		.width = 3,
	},
	[VCAP_KF_8021Q_DEI2] = {
		.type = VCAP_FIELD_BIT,
		.offset = 57,

Annotation

Implementation Notes