Compiling ALSA competent slmodemd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Rubin,

The default compilation of slmodemd does NOT include ALSA modem driver
support, as slmodemd was intially written to support the Smartlink
slamr.ko  driver.
Libasound code and NOT the kernel-version dependent linux-headers are
used to compile slmodemd.  Thus multiple kernels can be served by the
same "slmodemd",
though matching of ALSA versions is desirable.  Thus to minimize the
need for others to compile, I have been providing the
SLMODEMD-version.tar.gz packages

1) For ALSA modem driver support, there was be installed additionally:
------
$ apt-cache show libasound2-dev
Package: libasound2-dev
Priority: optional
Section: libdevel
Installed-Size: 1816
Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
Original-Maintainer: Debian ALSA Maintainers
<pkg-alsa-devel@xxxxxxxxxxxxxxxxxxxxxxx>
Architecture: i386
****
Source: alsa-lib
Description: ALSA library development files
This package contains files required for developing software
that makes use of libasound2, the ALSA library.
------------
This package has other names for other Distros and its code is used
during the slmodemd compile.

2) from the README
   3. Build application 'slmodemd' with ALSA support. For this in
slmodem-2.9.x dir:
     $ cd modem
     $ make SUPPORT_ALSA=1

3) So below is an example compile.
Afterward

4)
$  sudo  chown  root:root  slmodemd
$  sudo cp slmodemd  /usr/sbin/
and slmodemd is on root's  COMMAND path.

MarvS


slmodem-2.9.11-20070505$ cd modem

slmodem-2.9.11-20070505/modem$ make clean
rm -f slmodemd modem_test modem_main.o modem_cmdline.o modem_test.o
modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o
modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o
dp_sinus.o dp_dummy.o sysdep_common.o
rm -f *~ *.orig *.rej

slmodem-2.9.11-20070505/modem$ make SUPPORT_ALSA=1
rebuild profile...
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_main.o -c modem_main.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_cmdline.o -c modem_cmdline.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o modem.o
-c modem.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_datafile.o -c modem_datafile.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_at.o -c modem_at.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_timer.o -c modem_timer.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_pack.o -c modem_pack.c
modem_pack.c: In function 'modem_async_get_bits':
modem_pack.c:100: warning: pointer targets in passing argument 2 of
'm->get_chars' differ in signedness
modem_pack.c: In function 'modem_async_put_bits':
modem_pack.c:148: warning: pointer targets in passing argument 2 of
'm->put_chars' differ in signedness
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_ec.o -c modem_ec.c
modem_ec.c: In function 'tx_info':
modem_ec.c:723: warning: pointer targets in passing argument 2 of
'l->modem->get_chars' differ in signedness
modem_ec.c: In function 'push_rest_data':
modem_ec.c:811: warning: pointer targets in passing argument 2 of
'l->modem->put_chars' differ in signedness
modem_ec.c: In function 'rx_info':
modem_ec.c:860: warning: pointer targets in passing argument 2 of
'l->modem->put_chars' differ in signedness
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_comp.o -c modem_comp.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_param.o -c modem_param.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_debug.o -c modem_debug.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
homolog_data.o -c homolog_data.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
dp_sinus.o -c dp_sinus.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
dp_dummy.o -c dp_dummy.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
sysdep_common.o -c sysdep_common.c
gcc -lasound -o slmodemd modem_main.o modem_cmdline.o modem.o
modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o
modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o
dp_dummy.o dsplibs.o sysdep_common.o /usr/lib/libasound.so
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM -DSUPPORT_ALSA=1   -o
modem_test.o -c modem_test.c
gcc -lasound -o modem_test modem_test.o modem_cmdline.o modem.o
modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o
modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o
dp_dummy.o dsplibs.o sysdep_common.o

slmodem-2.9.11-20070505/modem$ ls -l slmodemd
-rwxr-xr-x 1 marv marv 1323019 2007-05-29 08:20 slmodemd


slmodem-2.9.11-20070505/modem$ sudo chown root:root slmodemd
Password:

slmodem-2.9.11-20070505/modem$ ls -l slmodemd
-rwxr-xr-x 1 root root 1323019 2007-05-29 08:20 slmodemd

slmodem-2.9.11-20070505/modem$sudo cp slmodemd /usr/sbin/




On 5/28/07, Marvin Stodolsky <marvin.stodolsky@xxxxxxxxx> wrote:
Rubens

The ungrab-winmodem will likely do no harm, but is not needed with HDA
card modems.

RE: > ALSA support is not compiled in (see README for howto).
> I have donwloaded, compiled and installed slmodem-2.9.11-20070430.tar.gz
The standard compile does NOT produce a slmodemd with ALSA support.
As instructed in the README
The slmodemd compile must be done within the modem/  folder, and not
the base folder to get ALSA support

It will be easier if you use the slmodemd I have prepared for  2.6.20-16-generic

 Download from http://linmodems.technion.ac.il/packages/smartlink/
 the package SLMODEMD-1.0.13.tar.gz having a compiled slmodemd. Unpack
under Linux with:
       $ tar zxf SLMODEMD-1.0.13.tar.gz
etc.

MarvS



On 5/28/07, Rubens de Oliveira Jr <rboliver70@xxxxxxxxx> wrote:
> Hi all,
>
> I'm trying to make my built-in modem HDA-Intel om my laptop but so far I
> had no success so far!
>
> I read through some of the archived emails with the same chipset and
> tried to follow some of them, but everytime it seems something is
> missing or failing.
>
> I have donwloaded, compiled and installed slmodem-2.9.11-20070430.tar.gz
> and ungrab-winmodem-20070430.tar.gz and tried to load the
> ungrab-winmodem and slamr modules. I also installed the sl-modem-daemon
> and although everything seems fine, when I run:
>
> sudo /etc/init.d/sl-modem-daemon status
>
> I get this message:
>
> Status of SmartLink modem daemon: slmodemd is not running but
> /var/run/slmodemd.pid exists
>
> Besides this, when running:
>
> sudo slmodemd -c BRAZIL --alsa hw:0,6
>
> I get this:
>
> ALSA support is not compiled in (see README for howto).
>
> However, I believe I already have the ALSA driver installed, since I see it
> in the Synaptic manager and if I run cat /proc/asound/version I get:
>
> Advanced Linux Sound Architecture Driver Version 1.0.14rc1 (Tue Jan 09
> 09:56:17 2007 UTC).
>
> Which is a newer version than the 1.0.13 driver I read about in the
> archives. Am I wrong and I must compiled the ALSA driver with the extra
> commands for my kernel and HDA-intel modem?
>
> The output for cat /proc/asound/pcm is
>
> 00-06: Si3054 Modem : Si3054 Modem : playback 1 : capture 1
> 00-02: ALC880 Analog : ALC880 Analog : capture 2
> 00-01: ALC880 Digital : ALC880 Digital : playback 1
> 00-00: ALC880 Analog : ALC880 Analog : playback 1 : capture 2
>
> I'm lost so I dont know what to do next. Any ideas?
>
> I have uninstalled everything with make uninstall and make clean and
> unloaded the modules with rmmod so as to have a fresh start.
>
> Attached is ModemData.txt
>
> Thanks in advance.
>
> Rubens Oliveira
>
>
>
>
>
>
>
>  Only plain text email is forwarded by the  DISCUSS@xxxxxxxxxxxxx List Server.
>  Do use the following as the email Subject Line:
>            SomeName, YourCountry Ubuntu 7.04  kernel 2.6.20-16-generic
>  This will alert cogent experts, and  distinguish cases in the Archives.
>  YourCountry will enable Country Code guidance.
>  Occassionally responses are blocked by an Internet Provider mail filters.
>  So in a day, also check the Archived responses at http://www.linmodems.org .
>  Local Linux experts can be found through: http://www.linux.org/groups/index.html
> --------------------------  System information ----------------------------
> CPU=i686,  Ubuntu 7.04
> Linux version 2.6.20-16-generic (root@terranova) (gcc version 4.1.2 (Ubuntu 4.1.2-0ubuntu4)) #2 SMP Wed May 23 01:46:23 UTC 2007
>  scanModem update of:  2007_May_11
> The modem symbolic link is /dev/modem -> ttySL0
>
> ALSAversion 1.0.13
> USB modem not detected by lsusb
>
> Modem or host audio card candidates have firmware information:
>
>  PCI slot       PCI ID          SubsystemID     Name
>  ----------     ---------       ---------       --------------
>  00:1b.0        8086:27d8       1558:5405       Audio device: Intel Corporation 82801G
>
>  Modem interrupt assignment and sharing:
>  21:        810          0   IO-APIC-fasteoi   HDA Intel
>
>  --- Bootup diagnositcs for card in PCI slot 00:1b.0 ----
> [   20.840000] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 21
> [   20.840000] PCI: Setting latency timer of device 0000:00:1b.0 to 64
>
>  === Finished modem firmware and bootup diagnostics section. ===
>  === Next deducing cogent software ===
>
> 8086:27d8 is a High Definition Audio card, possibly hosting a soft modem.
> HDAmodemChip=0x10573055
>  For candidate modem in PCI bus:  00:1b.0
>    Class 0403: 8086:27d8 Audio device: Intel Corporation 82801G
>       Primary PCI_id  8086:27d8
>     Subsystem PCI_id  1558:5405
>     Softmodem codec or Vendor from diagnostics:
>                               from    Archives: 1057
>                         The HDA card softmodem chip is 0x10573055
>
>  Lacking a dsp (digital signal processing) chip, the modem is a software
>  intensive or "softmodem" type. Its primary controller manages the traffic
>  with the CPU. But the software needed is specified in the Subsystem.
>  -----------------------------------------
> Support type needed or chipset: slmodemd
>
>  An ALSA (Advanced Linux Sound Architecture) modem driver:  snd-hda-intel
>  provides Low Level support enabling contact with the modem hardware.
>  For all BUT Conexant chip soft modems (using hsfmodem software)
>  complementary High Level support is through a Smartlink utility:  slmodemd
>
>  Download from http://linmodems.technion.ac.il/packages/smartlink/
>  the package SLMODEMD-1.0.13.tar.gz having a compiled slmodemd. Unpack under Linux with:
>         $ tar zxf SLMODEMD-1.0.13.tar.gz
>  and read instructions therein. But briefly, the modem is setup with command:
>         sudo slmodemd -c YOUR_COUNTRY --alsa hw:0,6
>  reporting dynamic creation of ports:
>         /dev/ttySL0 --> /dev/pts/N   , with N some number
>  Read Smartlink.txt and Modem/YourSystem.txt for follow through guidance.
>
>  Already loaded into the kernel is snd-hda-intel and audio drivers it depends on,
>  displayed by:  lsmod | grep snd_hda_intel
> Module                  Size  Used by
> -------------------------------------
> snd_hda_intel          21912  1
> snd_hda_codec         205056  1 snd_hda_intel
> snd_pcm                79876  3 snd_hda_intel,snd_hda_codec,snd_pcm_oss
> snd                    54020  12 snd_hda_intel,snd_hda_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
> snd_page_alloc         10888  2 snd_hda_intel,snd_pcm
>
>
> The diagnostic outputs for this softmodem section have their raw information in
> folders and text files under /proc/asound/ which you can browse. The information
> is from files:
>         /proc/asound/pcm
> -------------------------------
> 00-06: Si3054 Modem : Si3054 Modem : playback 1 : capture 1
> 00-02: ALC880 Analog : ALC880 Analog : capture 2
> 00-01: ALC880 Digital : ALC880 Digital : playback 1
> 00-00: ALC880 Analog : ALC880 Analog : playback 1 : capture 2
>
>         /proc/asound/modules
> -------------------------------
>  0 snd_hda_intel
> and from the command:
>         aplay -l | grep -i modem
> placa 0: Intel [HDA Intel], dispositivo 6: Si3054 Modem [Si3054 Modem]
>
> ----------------end Softmodem section --------------
>
> Writing Intel.txt
> The modem is supported by the Smartlink slamr driver
> plus the slmodemd helper utility.  Read the
> Smartlink.txt and Modem/YourSystem.txt for follow through guidance.
>
> Writing Smartlink.txt
> ============ end Smartlink section =====================
>
>  Completed candidate modem analyses.
>
>  The base of the UDEV device file system is: /dev/.udev
>
>  Versions adequately match for the compiler installed: 4.1.2
>              and the compiler used in kernel assembly: 4.1.2
>
>  Kernel-header resources needed for compiling are not manifestly ready!
>
>  If compiling is necessary packages must be installed, providing:
>          linux-headers-2.6.20-16-generic
>
>
> Checking pppd properties:
>         -rwsr-xr-- 1 root dip 269224 2007-04-05 00:41 /usr/sbin/pppd
>
> In case of an "error 17" "serial loopback" problem, see:
>     http://phep2.technion.ac.il/linmodems/archive-sixth/msg02637.html
>
> To enable dialout without Root permission do:
>         $ su - root  (not for Ubuntu)
>         sudo chmod a+x /usr/sbin/pppd
> or under Ubuntu related Linuxes
>         sudo chmod a+x /usr/sbin/pppd
>
> Checking settings of:   /etc/ppp/options
> asyncmap 0
> noauth
> crtscts
> lock
> hide-password
> modem
> proxyarp
> lcp-echo-interval 30
> lcp-echo-failure 4
> noipx
>
> In case of a message like:
>    Warning: Could not modify /etc/ppp/pap-secrets: Permission denied
> see http://linmodems.technion.ac.il/bigarch/archive-sixth/msg04656.html
>
> Read Modem/YourSystem.txt concerning other COMM channels: eth0 eth1 eth0:avah
> Which can interfere with Browser naviagation.
>
>  Don't worry about the following, it is for the experts
>  should trouble shooting be necessary.
> ==========================================================
>
> # start/stop the daemon when the USB modem is connected
> KERNEL=="slusb[0-9]*", GROUP="dialout", RUN+="/etc/init.d/sl-modem-daemon"
>  Checking for modem support lines:
>  --------------------------------------
>      /device/modem symbolic link:   lrwxrwxrwx 1 root root 6 2007-05-28 21:43 /dev/modem -> ttySL0
> slmodemd created symbolic link /dev/ttySL0:
>      Within /etc/udev/ files:
> /etc/udev/rules.d/030_sl-modem-daemon.rules:# start/stop the daemon when the USB modem is connected
> /etc/udev/rules.d/030_sl-modem-daemon.rules:KERNEL=="slusb[0-9]*", GROUP="dialout", RUN+="/etc/init.d/sl-modem-daemon"
> /etc/udev/sl-modem-daemon.rules:# start/stop the daemon when the USB modem is connected
> /etc/udev/sl-modem-daemon.rules:KERNEL=="slusb[0-9]*", GROUP="dialout", RUN+="/etc/init.d/sl-modem-daemon"
>      Within /etc/modprobe.conf files:
> /etc/modprobe.d/sl-modem-daemon.modutils:install slamr modprobe --ignore-install ungrab-winmodem ;  modprobe --ignore-install slamr; test -e /dev/slamr0 || (/bin/mknod -m 660 /dev/slamr0 c 242 0 2>/dev/null && chgrp dialout /dev/slamr0)
> /etc/modprobe.d/alsa-base:options snd-atiixp-modem index=-2
> /etc/modprobe.d/alsa-base:options snd-via82xx-modem index=-2
> /etc/modprobe.d/blacklist-modem:# Uncomment these entries in order to blacklist unwanted modem drivers
> /etc/modprobe.d/blacklist-modem:# blacklist snd-atiixp-modem
> /etc/modprobe.d/blacklist-modem:# blacklist snd-via82xx-modem
>      Within any ancient /etc/devfs files:
>
>      Within ancient kernel 2.4.n /etc/module.conf files:
>
> --------- end modem support lines --------
>
>
>
>


[Index of Archives]     [Linux Media Development]     [Asterisk]     [DCCP]     [Netdev]     [X.org]     [Xfree86]     [Fedora Women]     [Linux USB]

  Powered by Linux