
$ make clean
make -C kmodule/ clean
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C /lib/modules/2.6.28-15-generic/build
M="/usr/src/pkg/martian/martian-full-20080625/kmodule" clean
make[2]: Entering directory `/usr/src/linux-headers-2.6.28-15-generic'
make[2]: Leaving directory `/usr/src/linux-headers-2.6.28-15-generic'
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C modem/ clean
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/modem'
    RM	OBJS
    RM	BINS
    RM	TOOLS
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/modem'

Then compile with:
$ make
make -C kmodule/ modules
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C /lib/modules/2.6.28-15-generic/build
M="/usr/src/pkg/martian/martian-full-20080625/kmodule"  modules
make[2]: Entering directory `/usr/src/linux-headers-2.6.28-15-generic'
  CC [M]  /usr/src/pkg/martian/martian-full-20080625/kmodule/martian.o
/usr/src/pkg/martian/martian-full-20080625/kmodule/martian.c: In function
‘martian_isr’:
/usr/src/pkg/martian/martian-full-20080625/kmodule/martian.c:131: warning:
/ value computed is not used
  CC [M]  /usr/src/pkg/martian/martian-full-20080625/kmodule/marsio.o
/usr/src/pkg/martian/martian-full-20080625/kmodule/marsio.c:359: warning:
‘mars_read_register_rem’ defined but not used
/usr/src/pkg/martian/martian-full-20080625/kmodule/marsio.c:372: warning:
/ ‘mars_write_register_rem’ defined but not used
  CC [M]  /usr/src/pkg/martian/martian-full-20080625/kmodule/mfifo.o
  LD [M]  /usr/src/pkg/martian/martian-full-20080625/kmodule/martian_dev.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC
  /usr/src/pkg/martian/martian-full-20080625/kmodule/martian_dev.mod.o
  LD [M]  /usr/src/pkg/martian/martian-full-20080625/kmodule/martian_dev.ko
make[2]: Leaving directory `/usr/src/linux-headers-2.6.28-15-generic'
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C modem/ all
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/modem'
    CC	main.o
    CC	dumpers.o
    CC	log.o
    CC	session.o
    CC	mport.o
    CC	pty.o
    CC	sysdep.o
    CC	isr.o
    CC	smp.o
    CC	core_if.o
    CC	coresubst.o
    CC	link.o
    CC	tweakrelocsdynamic.o
    CC	coreadd.o
    CC	elf386tweakrelocs
    LD	marscore.o
    TWEAK	marscore.o
    LD	martian_modem
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/modem'

$ sudo make install
[sudo] password for marv: 
make -C kmodule/ install
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C /lib/modules/2.6.28-15-generic/build
M="/usr/src/pkg/martian/martian-full-20080625/kmodule" modules_install
make[2]: Entering directory `/usr/src/linux-headers-2.6.28-15-generic'
  INSTALL /usr/src/pkg/martian/martian-full-20080625/kmodule/martian_dev.ko
  DEPMOD  2.6.28-15-generic
make[2]: Leaving directory `/usr/src/linux-headers-2.6.28-15-generic'
if ! /sbin/modprobe -nq martian_dev ; then /sbin/depmod -a; fi
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/kmodule'
make -C modem/ install
make[1]: Entering directory
`/usr/src/pkg/martian/martian-full-20080625/modem'
    LD	martian_modem.debug
    STRIP	martian_modem.debug
    STRIP	martian_modem.stripped
    INSTALL	/usr/sbin/martian_modem
    INSTALL	/usr/lib/debug/usr/sbin/martian_modem.debug
make[1]: Leaving directory
`/usr/src/pkg/martian/martian-full-20080625/modem'

Find where the driver has been installed to with:
$ find /lib/modules  -name martian*.ko
/lib/modules/2.6.28-15-generic/extra/martian_dev.ko
Loading requires Adm permission:
$ sudo modprobe martian_dev

Get usage info with:
$ martian_modem  --help
Usage: martian_modem [Options] [TTY]
Options:
   --daemon           	Run as daemon
   --log=FILE         	Log to FILE
   --syslog           	Use syslog for logging
   --realtime         	Raise priority of threads to realtime
   --smp              	True smp mode
   --user=<name>      	Give tty ownership to user <name>
   --group=<name>     	Change tty group to <name>
   --country=<country>
   --no-cdclose       	Keep working with client when carrier lost.
   --hide-pty         	Save pty from others as soon its open. Client should
   --notify he's here writing to device. For callback feature.
   --debug=LEVEL      	Enable debugging. LEVEL = 1..5
   --info countries   	Print support info
   --help, --usage    	Print this message 
TTY is the file name to access the modem, /dev/ttySM0 by default

$ martian_modem --info countries
realtes that for Canada, there should be used:

$ sudo martian_modem --country=ca
which should report creation of: /dev/ttySM0
((But are ny System without the right modem hardware: 
martian: error: open: No such file or directory
martian: info: Mars DSP164x device is not detected))

If the wvdialconf package is installed, open a 2nd console (or TAB on the
same console and:
$ sudo wvdialconf
should find the modem and write a file /etc/wvdial.conf

You have to edit in personal info with:
$ sudo /etc/wvdial.conf
removing the symbols:   ;  <  >
and adding  a line:
Carrier Check  =  no

Then try a dialout with:
$ sudo wvdial

