AgereSystems/LSI develops Linux code for a chipset, when some major buyer of their chips sponsors the developement. They are obligated to make profit or at least break even on the Linux work. Within that constraint, their staff has been as helpful as possible over the years. If their core Intellectual Property were Open Source, it would put them at a competitive disadvantage. MarvS 2009/5/18 Nikolay Zhuravlev <xxor@xxxxxxx>: > > In this particular case it is not clear whether the problem is with the > closed-source agrmodemlib.o or with the source code surrounding it. > Besides, they probably know better when they decide not to release > the code. Agere once accused Microsoft of using its VoIP secrets. > > -- > WBR, Nikolay Zhuravlev > > -----Original Message----- > >> In that case, I think we can deduce that the 0630 modem is not supported >> by the agrsm driver... >> Rather unfortunate... >> LSI doesn't seem to realize that if they open-source their core, or at >> least give the linux community specs, that it will >> a) increase sales as linux users buy their supported modems. >> B) reduce coding costs for them, >> and c) make many people a lot happier :) >> >> >> >> Antonio Olivares wrote: >> > Thanks Nikolay, >> > >> > But the mdv sources do not support my modem. The support is >> > experimental as Marv has added the 11c1:0630 chipset: >> > >> > For candidate card in slot 03:00.0, firmware information and bootup >> > diagnostics are: >> > PCI slot PCI ID SubsystemID Name >> > ---------- --------- --------- -------------- >> > 03:00.0 11c1:0630 11c1:0630 Communication >> > controller: Agere Systems >> > Unknown device 0630 >> > >> > >> > I tried to follow the directions carefully but to no avail. The >> > kernel encounters a bug. This was just to try it out and report back >> > output. >> > >> > >> > root@slax:~/agrsm-20090502# make clean >> > rm -fR agrsoftmodem.o serial26.o \ >> > *.ko *.mod.* \ >> > agrmodem.o agrserial.o serial26.o lib.o \ >> > agrmodem.{o,ko,mod.{c,o}} \ >> > agrserial.{o,ko,mod.{c,o}} \ >> > Module.* modules.order \ >> > .*.cmd .tmp_versions >> > root@slax:~/agrsm-20090502# ./configure >> > bash: ./configure: No such file or directory >> > root@slax:~/agrsm-20090502# make KERNEL_DIR=/lib/modules/2.6.27.8/build >> > make -C /lib/modules/2.6.27.8/build SUBDIRS=/root/agrsm-20090502 modules >> > make[1]: Entering directory `/usr/src/linux-2.6.27.8' >> > >> > WARNING: Symbol version dump /usr/src/linux-2.6.27.8/Module.symvers >> > is missing; modules will have no dependencies and modversions. >> > >> > CC [M] /root/agrsm-20090502/agrsoftmodem.o >> > CC [M] /root/agrsm-20090502/lib.o >> > /root/agrsm-20090502/lib.c: In function 'agr_pci_find_device': >> > /root/agrsm-20090502/lib.c:134: warning: 'pci_find_device' is >> > deprecated (declared at include/linux/pci.h:543) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_read_config_byte': >> > /root/agrsm-20090502/lib.c:145: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_read_config_word': >> > /root/agrsm-20090502/lib.c:148: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_read_config_dword': >> > /root/agrsm-20090502/lib.c:151: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_write_config_byte': >> > /root/agrsm-20090502/lib.c:154: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_write_config_word': >> > /root/agrsm-20090502/lib.c:157: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > /root/agrsm-20090502/lib.c: In function 'x_pcibios_write_config_dword': >> > /root/agrsm-20090502/lib.c:160: warning: 'pci_find_slot' is deprecated >> > (declared at include/linux/pci.h:545) >> > CC [M] /root/agrsm-20090502/serial26.o >> > /root/agrsm-20090502/serial26.c: In function 'serial8250_get_mctrl': >> > /root/agrsm-20090502/serial26.c:1371: warning: unused variable 'flags' >> > /root/agrsm-20090502/serial26.c: In function 'serial8250_config_port': >> > /root/agrsm-20090502/serial26.c:2039: warning: unused variable 'ret' >> > /root/agrsm-20090502/serial26.c: At top level: >> > /root/agrsm-20090502/serial26.c:2131: warning: initialization from >> > incompatible pointer type >> > /root/agrsm-20090502/serial26.c:2132: warning: initialization from >> > incompatible pointer type >> > /root/agrsm-20090502/serial26.c:1922: warning: >> > 'serial8250_request_rsa_resource' defined but not used >> > LD [M] /root/agrsm-20090502/agrmodem.o >> > LD [M] /root/agrsm-20090502/agrserial.o >> > Building modules, stage 2. >> > MODPOST 2 modules >> > WARNING: modpost: Found 3 section mismatch(es). >> > To see full details build your kernel with: >> > 'make CONFIG_DEBUG_SECTION_MISMATCH=y' >> > CC /root/agrsm-20090502/agrmodem.mod.o >> > LD [M] /root/agrsm-20090502/agrmodem.ko >> > CC /root/agrsm-20090502/agrserial.mod.o >> > LD [M] /root/agrsm-20090502/agrserial.ko >> > make[1]: Leaving directory `/usr/src/linux-2.6.27.8' >> > root@slax:~/agrsm-20090502# make install >> > make -C /lib/modules/2.6.27.8/build M="/root/agrsm-20090502" modules_install >> > make[1]: Entering directory `/usr/src/linux-2.6.27.8' >> > INSTALL /root/agrsm-20090502/agrmodem.ko >> > INSTALL /root/agrsm-20090502/agrserial.ko >> > DEPMOD 2.6.27.8 >> > make[1]: Leaving directory `/usr/src/linux-2.6.27.8' >> > if ! /sbin/modprobe -nq agrmodem.ko ; then /sbin/depmod -a; fi >> > root@slax:~/agrsm-20090502# ls /lib/modules/2.6.27.8/extra/ >> > agrmodem.ko agrserial.ko >> > root@slax:~/agrsm-20090502# ls /lib/modules/2.6.27.8/extra/agr >> > agrmodem.ko agrserial.ko >> > >> > Part of dmesg follows: >> > >> > agrmodem: module license 'Proprietary' taints kernel. >> > agrsm: created 0 infos >> > Loading module Agere Modem Controller driver version 2.1.60.0.Linspire >> > (2005-11-16) >> > ttyAGS3 at I/O 0x400 (irq = 3) is a AgereModem >> > agrserial: Loading module Agere Modem Interface driver version >> > 2.1.60.0.Linspire (2005-11-16) >> > BUG: unable to handle kernel NULL pointer dereference at 00000004 >> > IP: [<f97bbd33>] :agrmodem:LXSoftModemStart+0x23/0x230 >> > *pde = 00000000 >> > Oops: 0000 [#1] SMP >> > Modules linked in: agrserial agrmodem(P) snd_seq_dummy snd_seq_oss >> > snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss >> > pcmcia pcmcia_core agpgart lp ppdev parport_pc parport pcspkr isp1760 >> > snd_hda_intel forcedeth sg snd_pcm snd_timer snd_page_alloc snd_hwdep >> > psmouse serio_raw k8temp hwmon i2c_nforce2 snd soundcore evdev fuse >> > aufs squashfs sqlzma unlzma [last unloaded: pcmcia_core] >> > >> > Pid: 8607, comm: kppp Tainted: P (2.6.27.8 #1) >> > EIP: 0060:[<f97bbd33>] EFLAGS: 00010292 CPU: 0 >> > EIP is at LXSoftModemStart+0x23/0x230 [agrmodem] >> > EAX: 00000008 EBX: f9422a08 ECX: fffb6000 EDX: f9421580 >> > ESI: 00000000 EDI: e684b378 EBP: e68b3dec ESP: e68b3d64 >> > DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 >> > Process kppp (pid: 8607, ti=e68b2000 task=f71f8000 task.ti=e68b2000) >> > Stack: c0882784 00000008 f97f6821 00000001 c14d05a0 c0156647 00000001 00000044 >> > e682d000 c08fe200 00000080 00000001 00000000 00000000 000280d0 c0882784 >> > 00000246 00000000 00000001 00000000 00000000 c087ed00 c087ed00 f9422a08 >> > Call Trace: >> > [<c0156647>] get_page_from_freelist+0x2c7/0x440 >> > [<f97b7306>] linux_modem_open+0x26/0x110 [agrmodem] >> > [<f9711395>] modemPortOpen+0x5/0x10 [agrmodem] >> > [<f941fee5>] serial8250_startup+0x195/0x2f0 [agrserial] >> > [<c03cd0e5>] uart_startup+0x45/0x140 >> > [<c03ceb11>] uart_open+0xf1/0x3f0 >> > [<c03b8954>] check_tty_count+0x14/0xb0 >> > [<c036141f>] kobject_get+0xf/0x20 >> > [<c03cea20>] uart_open+0x0/0x3f0 >> > [<c03bb56c>] tty_open+0x14c/0x2f0 >> > [<c0178834>] chrdev_open+0x94/0x180 >> > [<c0173db3>] __dentry_open+0xb3/0x230 >> > [<c0173f77>] nameidata_to_filp+0x47/0x60 >> > [<c01787a0>] chrdev_open+0x0/0x180 >> > [<c01806dc>] do_filp_open+0x17c/0x750 >> > [<c0160435>] handle_mm_fault+0x105/0x640 >> > [<c0173ba2>] do_sys_open+0x52/0xf0 >> > [<c0173cbc>] sys_open+0x2c/0x40 >> > [<c0103262>] syscall_call+0x7/0xb >> > ======================= >> > Code: 00 89 d8 eb a7 8d 76 00 55 b8 21 68 7f f9 89 e5 57 56 53 83 ec >> > 7c 8b 75 08 89 44 24 08 c7 45 e4 78 56 34 12 8d 46 08 89 44 24 04 <8b> >> > 46 04 89 04 24 e8 e2 13 00 00 85 c0 89 c3 0f 88 68 01 00 00 >> > EIP: [<f97bbd33>] LXSoftModemStart+0x23/0x230 [agrmodem] SS:ESP 0068:e68b3d64 >> > ---[ end trace 5deb0852d40a7e52 ]--- >> > >> > On the other hand I made a module(slax module) that could be tested >> > with 11c11040 chipsets. I posted on slax forum and would like more >> > feedback on it so that I can fix it and hope that more users benefit >> > from these drivers. >> > >> > Thanks, >> > >> > Antonio >> > >> > On 5/17/09, Nikolay Zhuravlev <xxor@xxxxxxx> wrote: >> >> Antonio, >> >> >> >> Thus spake Antonio Olivares (olivares14031@xxxxxxxxx): >> >> >> >> [skip] >> >>> root@slax:~# ln -s /dev/ttyAGS3 /dev/ttySAG >> >> The name of the device shall be /dev/ttySAGR >> >> To better diagnose the problem, I would suggest building >> >> the driver "7mdv" manually from source, >> >> install it with 'make modules_install' and see if >> >> wvdialconf can recognize it: >> >> >> >> # kill all the funny Agr...Daemons, etc first, next: >> >> $ sudo modprobe -r agrserial >> >> $ sudo modprobe -r agrmodem >> >> $ sudo find /lib/modules -name "agr*" -type f -exec rm -f {} \; >> >> $ make >> >> $ sudo make modules_install >> >> $ sudo modprobe agrmodem >> >> $ sudo modprobe agrserial >> >> $ sudo ln -s /dev/ttyAGS3 /dev/ttySAGR >> >> $ sudo wvdialconf /dev/wvdial.conf >> >> >> >> >> >> [skip] >> >>> I also see some differences between the packages, namely the >> >>> agrms-2.1.80-7mdv2009.0 and the agrsm-20090502 packages. >> >> They are for the different hardware, I think. The "7mdv" shall work for the >> >> 11c11140 chipset that sits on the HDA audio. I am not sure what other >> >> chipset >> >> it supports and how well. The agrsm-20090502 does not have the HDA layer >> >> support, hence it doesn't support 11c11140 on HDA, and its codebase is/was >> >> different from the "mdv" sources. >> >> >> >>> 5) I am more confused now than what I was before, the >> >>> agrsm-2.1.80mdv2009.0 package should be more appropriate for the >> >>> 11c11040 chipset than the others: >> >>> >> >>> 11c1:0630, 11c1:0620, 11c1:0630 and 11c1:048c(or f) >> >>> >> >>> This is how I interpret the results. >> >> Were the chipsets that you mention (11c1:0630, 11c1:0620, >> >> 11c1:0630 and 11c1:048) supported by earlier release >> >> of the "mdv" sources, like the "4mdv" sources available >> >> at the Zsolt site, for example? What did you use before? >> >> >> >> -- >> >> WBR, Nikolay Zhuravlev >> >> >> > >> >> >> ATTACHMENT: application/pgp-signature (signature.asc) >> > >