From 523d81ebd560fd97cd239d10c9d749c79b6e158c Mon Sep 17 00:00:00 2001 From: Revanth Kumar Uppala Date: Thu, 6 Jun 2024 06:50:11 +0000 Subject: [PATCH] ethernet: Add dummy driver for r8126 r8126 driver build is disabled on K6.10 and later. This is causing the packaging failure where module is not available. Add dummy driver when real driver is not available to make packaging success. Bug 4478230 Change-Id: I6ceef7f92863499c58edaf4ddd19ae65b12a2a00 Signed-off-by: Revanth Kumar Uppala Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3158781 Reviewed-by: Bibek Basu GVS: buildbot_gerritrpt --- drivers/net/ethernet/realtek/r8126/Makefile | 11 +++++++++++ drivers/net/ethernet/realtek/r8126/r8126_dummy.c | 16 ++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 drivers/net/ethernet/realtek/r8126/r8126_dummy.c diff --git a/drivers/net/ethernet/realtek/r8126/Makefile b/drivers/net/ethernet/realtek/r8126/Makefile index 56dc0152..7038f251 100644 --- a/drivers/net/ethernet/realtek/r8126/Makefile +++ b/drivers/net/ethernet/realtek/r8126/Makefile @@ -30,6 +30,15 @@ # US6,570,884, US6,115,776, and US6,327,625. ################################################################################ +LINUX_VERSION := $(shell expr $(VERSION) \* 256 + $(PATCHLEVEL)) +LINUX_VERSION_6_9 := $(shell expr 6 \* 256 + 9) + +# Use dummy R8126 driver for Kernel versions greater that K69 +ifeq ($(shell test $(LINUX_VERSION) -gt $(LINUX_VERSION_6_9); echo $$?),0) +obj-m := r8126.o +r8126-objs := r8126_dummy.o +else + CONFIG_SOC_LAN = n ENABLE_REALWOW_SUPPORT = n ENABLE_DASH_SUPPORT = n @@ -130,3 +139,5 @@ endif ifeq ($(ENABLE_RX_PACKET_FRAGMENT), y) EXTRA_CFLAGS += -DENABLE_RX_PACKET_FRAGMENT endif + +endif diff --git a/drivers/net/ethernet/realtek/r8126/r8126_dummy.c b/drivers/net/ethernet/realtek/r8126/r8126_dummy.c new file mode 100644 index 00000000..bf28c49c --- /dev/null +++ b/drivers/net/ethernet/realtek/r8126/r8126_dummy.c @@ -0,0 +1,16 @@ +// SPDX-License-Identifier: GPL-2.0-only +// SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + +#include + +/* Dummy implementation for module */ +static int __init r8126_dummy_dummy_init(void) +{ + return 0; +} +device_initcall(r8126_dummy_dummy_init); + +MODULE_AUTHOR("Revanth Kumar Uppala "); +MODULE_DESCRIPTION("Dummy R8126 dummy driver"); +MODULE_LICENSE("GPL"); +