freebsd-dev/sys/dev
Poul-Henning Kamp 5b7ffe398f Digicom Systems Inc, makes "softmodems". What this means is simply that
you download the microcode to the DSP everytime you power on your system.
They provide a dos-program to do so, but no other support.  This commit adds
code to the sio-driver, which implement an ioctl, which will down-load the
micro-code.

To get this functionality, you must define DSI_SOFT_MODEM.

The program to actually employ the ioctl is not included, but the entire
source looks like this:

        #include <sys/ioctl.h>
        #include <stdio.h>

        main()
        {
                unsigned char buffer[100000];
                int i;

                read(0,buffer,100000);
                if((i = ioctl(1,TIOCDSIMICROCODE,buffer)) < 0)
                    perror("ioctl");
                return i;
        }

And you use it like this:
	smload < data144b.dsi > /dev/ttyid3

You need to copy the *.DSI files from the dos-media provide with your modem.
You can see what is downloaded by issuing the ATI3 command to the modem.
DSI's scheme for what code you can run on your modem isn't violated by this.

Poul-Henning Kamp
phk@freefall.cdrom.com
1994-09-13 03:30:31 +00:00
..
ed Removed MULTICAST ifdef's; it's no longer optional. Cleaned up code a 1994-09-07 06:11:29 +00:00
ep Reviewed by: 1994-09-03 18:10:44 +00:00
fdc Use RAW_PART=2 to trick diskerr 1994-08-29 21:32:31 +00:00
ic Removed all patch kit headers, sccsid and rcsid strings, put $Id$ in, some 1993-10-16 13:48:52 +00:00
ie unifdef -DMULTICAST, since multicast support is always enabled in 4.4. 1994-09-07 03:34:12 +00:00
kbd Updated swedish keymap. 1994-04-26 09:24:06 +00:00
mcd Reviewed by: Stefan Esser <se> 1994-09-06 21:56:09 +00:00
mse Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
pci Submitted by: Wolfgang Stanglmeier <wolf@dentaro.GUN.de> + Stefan Esser <se> 1994-09-01 01:45:19 +00:00
ppbus Added $Id$ 1994-08-02 07:55:43 +00:00
sio Digicom Systems Inc, makes "softmodems". What this means is simply that 1994-09-13 03:30:31 +00:00
speaker Change all #includes to follow the current Berkeley style. Some of these 1994-08-13 03:50:34 +00:00
syscons 1) Changed ddb into a option rather than a pseudo-device (use options DDB 1994-08-27 16:14:39 +00:00