kernel: reset asix88179 twice like in older kernels
Commit Message
the kernel developers has removed a reset at bring the
device fist up to save time. At my test's this result in
not detecting the link correct. This readd the reset and at
my tests the device has worked.
fixes #13692
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
---
lfs/linux | 3 +++
.../linux/linux-6.6.32-asix88179_reset.patch | 17 +++++++++++++++++
2 files changed, 20 insertions(+)
create mode 100644 src/patches/linux/linux-6.6.32-asix88179_reset.patch
Comments
Could you please make sure to report this upstream so that this fix gets included in mainline?
Best,
-Michael
> On 4 Jun 2024, at 13:08, Arne Fitzenreiter <arne_f@ipfire.org> wrote:
>
> the kernel developers has removed a reset at bring the
> device fist up to save time. At my test's this result in
> not detecting the link correct. This readd the reset and at
> my tests the device has worked.
>
> fixes #13692
>
> Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
> ---
> lfs/linux | 3 +++
> .../linux/linux-6.6.32-asix88179_reset.patch | 17 +++++++++++++++++
> 2 files changed, 20 insertions(+)
> create mode 100644 src/patches/linux/linux-6.6.32-asix88179_reset.patch
>
> diff --git a/lfs/linux b/lfs/linux
> index ca3b05119..3f5e60838 100644
> --- a/lfs/linux
> +++ b/lfs/linux
> @@ -133,6 +133,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> # https://bugzilla.ipfire.org/show_bug.cgi?id=12760
> cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.15-NFQUEUE-Hold-RCU-read-lock-while-calling-nf_reinject.patch
>
> + # reset ax88179 twice like in older kernels
> + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-6.6.32-asix88179_reset.patch
> +
> # Fix external module compile
> cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-6.0-fix_external_module_build.patch
>
> diff --git a/src/patches/linux/linux-6.6.32-asix88179_reset.patch b/src/patches/linux/linux-6.6.32-asix88179_reset.patch
> new file mode 100644
> index 000000000..f0e7d09f1
> --- /dev/null
> +++ b/src/patches/linux/linux-6.6.32-asix88179_reset.patch
> @@ -0,0 +1,17 @@
> +diff -Naur linux-6.6.32.org/drivers/net/usb/ax88179_178a.c linux-6.6.32/drivers/net/usb/ax88179_178a.c
> +--- linux-6.6.32.org/drivers/net/usb/ax88179_178a.c 2024-05-25 16:22:56.000000000 +0200
> ++++ linux-6.6.32/drivers/net/usb/ax88179_178a.c 2024-06-04 10:45:18.113453100 +0200
> +@@ -1678,10 +1678,10 @@
> + {
> + struct ax88179_data *ax179_data = dev->driver_priv;
> +
> +- if (ax179_data->initialized)
> ++// if (ax179_data->initialized)
> + ax88179_reset(dev);
> +- else
> +- ax179_data->initialized = 1;
> ++// else
> ++// ax179_data->initialized = 1;
> +
> + return 0;
> + }
> --
> 2.39.2
>
@@ -133,6 +133,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
# https://bugzilla.ipfire.org/show_bug.cgi?id=12760
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-5.15-NFQUEUE-Hold-RCU-read-lock-while-calling-nf_reinject.patch
+ # reset ax88179 twice like in older kernels
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-6.6.32-asix88179_reset.patch
+
# Fix external module compile
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux/linux-6.0-fix_external_module_build.patch
new file mode 100644
@@ -0,0 +1,17 @@
+diff -Naur linux-6.6.32.org/drivers/net/usb/ax88179_178a.c linux-6.6.32/drivers/net/usb/ax88179_178a.c
+--- linux-6.6.32.org/drivers/net/usb/ax88179_178a.c 2024-05-25 16:22:56.000000000 +0200
++++ linux-6.6.32/drivers/net/usb/ax88179_178a.c 2024-06-04 10:45:18.113453100 +0200
+@@ -1678,10 +1678,10 @@
+ {
+ struct ax88179_data *ax179_data = dev->driver_priv;
+
+- if (ax179_data->initialized)
++// if (ax179_data->initialized)
+ ax88179_reset(dev);
+- else
+- ax179_data->initialized = 1;
++// else
++// ax179_data->initialized = 1;
+
+ return 0;
+ }