hardkernel / linux

Linux kernel source tree
Other
427 stars 408 forks source link

Fix huawei cdc backport #250

Closed svpcom closed 7 years ago

svpcom commented 7 years ago

Remove CONFIG_USB_USBNET due to enabled CONFIG_BACKPORT_USB_USBNET. This fix undefined symbols during kernel build.

mdrjr commented 7 years ago

Can't take this patch as it is.. It will break all the USB Ethernet cards... Anyone using this on a C1 will kill me.

svpcom commented 7 years ago

usbnet driver builds from backports:

root@odroid:~# modinfo usbnet
filename:       /lib/modules/3.10.104/kernel/backports/drivers/net/usb/usbnet.ko
license:        GPL
description:    USB network driver framework
author:         David Brownell
version:        backported from Linux (next-20150129-0-g828f79f) using backports backports-20150129-0-gdd4a670
srcversion:     758DC9B5FFC42E3E6ABECA0
depends:        
intree:         Y
vermagic:       3.10.104 SMP preempt mod_unload ARMv7 
parm:           msg_level:Override default message level (int)

Now (without patch) kernel build two usbnet drivers: kernel/backports/drivers/net/usb/usbnet.ko and kernel/drivers/net/usb/usbnet.ko

mdrjr commented 7 years ago

That's correct, but on backports there's no USB Ethernet drivers.. Just the usbnet framework to support whatever uses it and its present.

svpcom commented 7 years ago

Could rollback bd104ef9ce8156cf2adfaf7203b8458e8db06480? To build kernel with two usbnet.ko drivers (to avoid ERROR: cdc_ncm_tx_fixup [backports/drivers/net/usb/huawei_cdc_ncm.ko] undefined) you need to retry make -j or run make without '-j' switch. Because with two identical usbnet.ko one of which provides cdc_ncm_tx/rx_fixup and other not, build result depends of order which modules build

mdrjr commented 7 years ago

I couldn't build with make only. same issue here

BR,Mauro

-------- Mensagem original -------- De : Vasily Evseenko notifications@github.com Data: 14/11/16 12:13 (GMT-03:00) Para: hardkernel/linux linux@noreply.github.com Cc: Mauro Ribeiro mauro.ribeiro@hardkernel.com, Comment comment@noreply.github.com Assunto: Re: [hardkernel/linux] Fix huawei cdc backport (#250)

Could rollback bd104ef? To build kernel with two usbnet.ko drivers (to avoid ERROR: cdc_ncm_tx_fixup [backports/drivers/net/usb/huawei_cdc_ncm.ko] undefined) you need to retry make -j or run make without '-j' switch. Because with two identical usbnet.ko one of which provides cdc_ncm_tx/rx_fixup and other not build result depends of order which modules build

— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/hardkernel/linux","title":"hardkernel/linux","subtitle":"GitHub repository","main_image_url":"https://cloud.githubusercontent.com/assets/143418/17495839/a5054eac-5d88-11e6-95fc-7290892c7bb5.png","avatar_image_url":"https://cloud.githubusercontent.com/assets/143418/15842166/7c72db34-2c0b-11e6-9aed-b52498112777.png","action":{"name":"Open in GitHub","url":"https://github.com/hardkernel/linux"}},"updates":{"snippets":[{"icon":"PERSON","message":"@svpcom in #250: Could rollback bd104ef9ce8156cf2adfaf7203b8458e8db06480? To build kernel with two usbnet.ko drivers (to avoid ERROR: cdc_ncm_tx_fixup [backports/drivers/net/usb/huawei_cdc_ncm.ko] undefined) you need to retry make -j or run make without '-j' switch. Because with two identical usbnet.ko one of which provides cdc_ncm_tx/rx_fixup and other not build result depends of order which modules build"}],"action":{"name":"View Pull Request","url":"https://github.com/hardkernel/linux/pull/250#issuecomment-260344793"}}}

svpcom commented 7 years ago

Can you retry make after fail? In my case it succeed.

svpcom commented 7 years ago

I've reenable all modem drivers from backports.

mdrjr commented 7 years ago

This patch doesn't change ANYTHING... You just enabled the Symbols.. nice.. so.. What about the Makefile? Did you enabled it? Will it build?

svpcom commented 7 years ago

Yes, it builds and loads into kernel without problems:

root@odroid:/lib/modules/3.10.104/kernel/backports/drivers/net/usb# ls
asix.ko          cdc_eem.ko    cdc_mbim.ko  cdc_subset.ko   dm9601.ko  huawei_cdc_ncm.ko  ipheth.ko  mcs7830.ko  plusb.ko     rndis_host.ko  smsc75xx.ko  sr9700.ko  usbnet.ko
ax88179_178a.ko  cdc_ether.ko  cdc_ncm.ko   cx82310_eth.ko  gl620a.ko  int51x1.ko         kalmia.ko  net1080.ko  qmi_wwan.ko  sierra_net.ko  smsc95xx.ko  sr9800.ko  zaurus.ko
root@odroid:/lib/modules/3.10.104/kernel/backports/drivers/net/usb# lsmod
Module                  Size  Used by
sr9800                  8455  0
sr9700                  5149  0
smsc95xx               17560  0
smsc75xx               22315  0
sierra_net              7668  0
rndis_host              6112  0
qmi_wwan               11060  0
plusb                   1330  0
net1080                 2670  0
mcs7830                 5141  0
kalmia                  3277  0
ipheth                  6285  0
int51x1                 2466  0
gl620a                  1924  0
dm9601                  6135  0
cx82310_eth             3345  0
cdc_subset               954  0
cdc_mbim                4166  0
cdc_eem                 2550  0
ax88179_178a           12209  0
asix                   18598  0
zaurus                  2802  0
cdc_ether               4966  2 rndis_host,zaurus
usbtv                  10998  0
huawei_cdc_ncm          2150  0
cdc_wdm                 9318  3 qmi_wwan,cdc_mbim,huawei_cdc_ncm
cdc_ncm                15150  2 cdc_mbim,huawei_cdc_ncm
usbnet                 21044  24 asix,plusb,rndis_host,mcs7830,dm9601,gl620a,net1080,kalmia,sierra_net,qmi_wwan,sr9700,sr9800,cdc_mbim,cdc_subset,huawei_cdc_ncm,zaurus,cdc_eem,cdc_ncm,smsc75xx,smsc95xx,int51x1,ax88179_178a,cdc_ether,cx82310_eth
option                 28926  1
usb_wwan                6874  1 option
nls_cp437               5117  1
uvcvideo               70062  0
snd_usb_audio         122468  0
videobuf2_vmalloc       2731  2 usbtv,uvcvideo
snd_hwdep               5784  1 snd_usb_audio
snd_usbmidi_lib        17426  1 snd_usb_audio
snd_rawmidi            19333  1 snd_usbmidi_lib
snd_seq_device          5941  1 snd_rawmidi
w1_gpio                 3434  0
wire                   20535  1 w1_gpio
sunrpc                194559  1
autofs4                22310  2
svpcom commented 7 years ago

@mdrjr Is it sufficient to merge?

mdrjr commented 7 years ago

Now it looks pretty damn good :) I like it.. Thank you very much for your time and patience to get this nice :)