linux/net/dsa/tag_none.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * net/dsa/tag_none.c - Traffic handling for switches with no tag
 * Copyright (c) 2008-2009 Marvell Semiconductor
 * Copyright (c) 2013 Florian Fainelli <[email protected]>
 *
 * WARNING: do not use this for new switches. In case of no hardware
 * tagging support, look at tag_8021q.c instead.
 */

#include "tag.h"

#define NONE_NAME	"none"

static struct sk_buff *dsa_user_notag_xmit(struct sk_buff *skb,
					   struct net_device *dev)
{
	/* Just return the original SKB */
	return skb;
}

static const struct dsa_device_ops none_ops = {
	.name	= NONE_NAME,
	.proto	= DSA_TAG_PROTO_NONE,
	.xmit	= dsa_user_notag_xmit,
};

module_dsa_tag_driver(none_ops);
MODULE_ALIAS_DSA_TAG_DRIVER(DSA_TAG_PROTO_NONE, NONE_NAME);
MODULE_DESCRIPTION("DSA no-op tag driver");
MODULE_LICENSE("GPL");