Softmodem compatível com Smart Link em kernel Linux 2.6.24 ou superior

O slmodem-2.9.11-20080817 só suporta até o kernel linux-2.6.24. A limitação é só no modelo USB de softmodem, mas como este é compilado junto com o PCI, o make refuga ambos. Ensina-se a pular a parte do USB para compilar a PCI e instalar o software, independentemente da versão do kernel. Público alvo são os linuxers que gostam de resolver os problemas e não esperar que outros o façam.

[ Hits: 23.063 ]

Por: Elias Zoby em 28/09/2008 | Blog: http://concordancia.webs.com


../drivers/Makefile



Abaixo vão apenas as partes relevantes do texto. Os trechos que não devem ser processados foram comentados (#) para fins didáticos, na prática podem ser deletados mesmo. Mantidos alguns pedaços referentes à desinstalação de versões anteriores.

Makefile: Copyright 2003, Smart Link Ltd. All rights reserved.
Author: Sasha K (sashak@smlink.com)

ifeq ($(ARCH64), 0)
obj-m:= slamr.o
endif

#ifneq ($(AGE), NEW)
#obj-m:= $(obj-m) slusb.o
#endif

slamr-objs:= amrmo_init.o sysdep_amr.o amrlibs.o
#slusb-objs:= st7554.o

install-devices:
   mkdir -p ${DESTDIR}/dev
   $(foreach minor,0 1 2 3, \
       mknod -m 600 ${DESTDIR}/dev/slamr$(minor) c 242
$(minor) ; ) echo -n
#ifneq ($(AGE), NEW)
#   $(foreach minor,0 1 2 3, \
#       mknod -m 600 ${DESTDIR}/dev/slusb$(minor) c 243
$(minor) ; ) echo -n
#endif

remove-devices:
   $(foreach minor,0 1 2 3, \
       $(RM) ${DESTDIR}/dev/slamr$(minor) ; ) echo -n
#   $(foreach minor,0 1 2 3, \
#       $(RM) ${DESTDIR}/dev/slusb$(minor) ; ) echo -n

else
ifeq ($(findstring 2.4,$(KERNEL_VER)),2.4)

#slusb-objs:= old_st7554.o
obj:=.
module-dir:=${DESTDIR}/lib/modules/$(KERNEL_VER)/misc

CFLAGS:= -Wall -pipe -O3 -fomit-frame-pointer -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -DMODVERSIONS --include
$(KERNEL_DIR)/include/linux/modversions.h -I$(KERNEL_DIR)/include

# Meus linux-2.6.26 e 2.6.22.7 não têm modversions.h, mas
aparentemente não houve problema por isso.

all: $(obj-m)

slamr.o: $(slamr-objs)
#slusb.o: $(slusb-objs)
#slamr.o slusb.o:
slamr.o:
   $(LD) -r -o $@ $^

install: uninstall-old
ifeq ($(ARCH64), 0)
   install -D -m 644 slamr.o $(module-dir)/slamr.o
endif
   install -D -m 644 slusb.o $(module-dir)/slusb.o
   cp /etc/modules.conf /etc/modules.conf.slamr && \
       echo 'alias char-major-242 slamr' >> /etc/modules.conf
#       echo 'alias char-major-242 slamr' >> /etc/modules.conf
&& \
#       echo 'alias char-major-243 slusb' >> /etc/modules.conf
   /sbin/depmod -a
uninstall:
#   /sbin/modprobe -r slamr slusb
   /sbin/modprobe -r slamr
   cp /etc/modules.conf /etc/modules.conf.slamr && \
        egrep -ve 'alias char-major-242
slamr' /etc/modules.conf.slamr > /etc/modules.conf
#   egrep -ve 'alias char-major-242 slamr|alias char-major-243
slusb' /etc/modules.conf.slamr > /etc/modules.conf
   $(RM) $(module-dir)/slamr.o
#   $(RM) $(module-dir)/slusb.o
   /sbin/depmod -a
uninstall-old:
   $(RM) $(module-dir)/slmdm.o \
              $(module-dir)/slfax.o \
              $(module-dir)/slusb.o \
              $(module-dir)/slamrmo.o \
              $(module-dir)/slmodem.o  # remove old 2.7,2.8 version


install:
ifeq ($(ARCH64), 0)
   install -D -m 644 slamr.ko $(module-dir)/slamr.ko
endif
#ifneq ($(AGE), NEW)
#   install -D -m 644 slusb.ko $(module-dir)/slusb.ko
#endif
   /sbin/depmod -a

uninstall:
ifeq ($(ARCH64), 0)
   modprobe -r slamr ; echo -n
endif
#   modprobe -r slusb ; echo -n
   $(RM) $(module-dir)/slamr.ko
#   $(RM) $(module-dir)/slusb.ko
   /sbin/depmod -a
endif

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Do problema à solução
   3. ../drivers/Makefile
   4. Da compilação ao pós-reboot
   5. Suporte a som
   6. Empacotamento e conclusão
Outros artigos deste autor

Por que e como referenciar artigos nos sites de informática

Instalar e configurar Slackware 10.2 a 12 para um desktop

Caracteres especiais no teclado Linux: como adaptar às necessidades do escritor

Montar MP3 e pendrives USB automaticamente com Hotplug

Autofs-4.1.4 para Slackware 12: Compilação, instalação, configuração

Leitura recomendada

CBQ sem medo

Problema do navegador Opera com temas GTK+2 escuros [Resolvido]

Configurando o Debian com 2 ADSLs pppoe e fixando as interfaces ppp0 e ppp1 por operadora

Como configurar uma rádio virtual no Linux (Fedora Core 4)

Instalando e configurando um servidor DNS (Bind)

  
Comentários
[1] Comentário enviado por grandmaster em 28/09/2008 - 21:44h

Bem, vou testar isso :D

--
Renato de Castro Henriques
CobiT Foundation 4.1 Certified ID: 90391725
http://www.renato.henriques.nom.br


[2] Comentário enviado por zoby em 28/09/2008 - 22:28h

ERRATA
p. 4
Onde tem "Se não precisar do ungrab:", leia-se "Continuando:".
Pois o que vem a seguir independe do ungrab.

p. 6
Onde tem "a desinstalação ficará mais fácil e mais enxuta", leia-se "o programa ficará mais enxuto e a desinstalação mais fácil".

##################################

E a todos que testarem: dêem nota, corrijam o que não funcionou p/ vcs, acrescentem alternativas etc.

[3] Comentário enviado por fabio em 28/09/2008 - 22:36h

Não sabia que a palavra "modem" já havia sido dicionarizada. Vou corrigir no artigo nesta segunda. Obrigado pela informação.


Contribuir com comentário