diff options
author | Michael Paepcke <fbsd@paepcke.de> | 2023-02-16 16:36:03 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2023-02-16 16:36:41 +0000 |
commit | 623346ecb9b3f4390e9f13df4b19e6e41c4e53ee (patch) | |
tree | 5e34ec88366e46c113fe1080e167f653a5304449 | |
parent | e20b6a8ec68e3f6805a5281d2691c2ac97f6bb93 (diff) | |
download | src-623346ecb9b3f4390e9f13df4b19e6e41c4e53ee.tar.gz src-623346ecb9b3f4390e9f13df4b19e6e41c4e53ee.zip |
usb: add support for Huawei E5573Cs322
Switch the now added E5573Cs322_ECM (0x14db) as well per default to NCM.
With this patch we default all devices to simple NCM mode to avoid the
problem and get a consistent reliable behavior. No matter what firmware
version and provider mix are involved.
Rationale:
Even the bigger SOC shows under complex load in ECM (double-nat) mode
the same performance drop from 25Mbit to 2Mbit Line Speed, similar to E3372h.
Reason: Thermal problems (reported via serial debug interface in ACM Mode)
after 2-3 minutes load.
Fix the root cause and bundle a working firmware is out of reach because
Huawei sells the same hardware, different (crippled) firmware versions
at different price points in different markets as strategy.
Reviewed by: imp
Pull Request: https://github.com/freebsd/freebsd-src/pull/633
(cherry picked from commit e66352013a67183dfeec14b2a22913305c26e838)
-rw-r--r-- | sys/dev/usb/net/if_cdce.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/usb/net/if_cdce.c b/sys/dev/usb/net/if_cdce.c index 0b6445e5908d..bb2d08c2a282 100644 --- a/sys/dev/usb/net/if_cdce.c +++ b/sys/dev/usb/net/if_cdce.c @@ -267,7 +267,8 @@ static int cdce_driver_loaded(struct module *, int, void *); static const STRUCT_USB_HOST_ID cdce_switch_devs[] = { {USB_VPI(USB_VENDOR_HUAWEI, USB_PRODUCT_HUAWEI_E3272_INIT, MSC_EJECT_HUAWEI2)}, {USB_VPI(USB_VENDOR_HUAWEI, USB_PRODUCT_HUAWEI_E3372v153_INIT, MSC_EJECT_HUAWEI2)}, - {USB_VPI(USB_VENDOR_HUAWEI, USB_PRODUCT_HUAWEI_E3372_INIT, MSC_EJECT_HUAWEI3)}, + {USB_VPI(USB_VENDOR_HUAWEI, USB_PRODUCT_HUAWEI_E3372_INIT, MSC_EJECT_HUAWEI4)}, + {USB_VPI(USB_VENDOR_HUAWEI, USB_PRODUCT_HUAWEI_E5573Cs322_ECM, MSC_EJECT_HUAWEI3)}, }; static const STRUCT_USB_HOST_ID cdce_host_devs[] = { |