diff options
Diffstat (limited to 'Documentation/cdrom/isp16')
-rw-r--r-- | Documentation/cdrom/isp16 | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/Documentation/cdrom/isp16 b/Documentation/cdrom/isp16 new file mode 100644 index 000000000000..cc86533ac9f3 --- /dev/null +++ b/Documentation/cdrom/isp16 | |||
@@ -0,0 +1,100 @@ | |||
1 | -- Documentation/cdrom/isp16 | ||
2 | |||
3 | Docs by Eric van der Maarel <H.T.M.v.d.Maarel@marin.nl> | ||
4 | |||
5 | This is the README for version 0.6 of the cdrom interface on an | ||
6 | ISP16, MAD16 or Mozart sound card. | ||
7 | |||
8 | The detection and configuration of this interface used to be included | ||
9 | in both the sjcd and optcd cdrom driver. Drives supported by these | ||
10 | drivers came packed with Media Magic's multi media kit, which also | ||
11 | included the ISP16 card. The idea (thanks Leo Spiekman) | ||
12 | to move it from these drivers into a separate module and moreover, not to | ||
13 | rely on the MAD16 sound driver, are as follows: | ||
14 | -duplication of code in the kernel is a waste of resources and should | ||
15 | be avoided; | ||
16 | -however, kernels and notably those included with Linux distributions | ||
17 | (cf Slackware 3.0 included version 0.5 of the isp16 configuration | ||
18 | code included in the drivers) don't always come with sound support | ||
19 | included. Especially when they already include a bunch of cdrom drivers. | ||
20 | Hence, the cdrom interface should be configurable _independently_ of | ||
21 | sound support. | ||
22 | |||
23 | The ISP16, MAD16 and Mozart sound cards have an OPTi 82C928 or an | ||
24 | OPTi 82C929 chip. The interface on these cards should work with | ||
25 | any cdrom attached to the card, which is 'electrically' compatible | ||
26 | with Sanyo/Panasonic, Sony or Mitsumi non-ide drives. However, the | ||
27 | command sets for any proprietary drives may differ | ||
28 | (and hence may not be supported in the kernel) from these four types. | ||
29 | For a fact I know the interface works and the way of configuration | ||
30 | as described in this documentation works in combination with the | ||
31 | sjcd (in Sanyo/Panasonic compatibility mode) cdrom drivers | ||
32 | (probably with the optcd (in Sony compatibility mode) as well). | ||
33 | If you have such an OPTi based sound card and you want to use the | ||
34 | cdrom interface with a cdrom drive supported by any of the other cdrom | ||
35 | drivers, it will probably work. Please let me know any experience you | ||
36 | might have). | ||
37 | I understand that cards based on the OPTi 82C929 chips may be configured | ||
38 | (hardware jumpers that is) as an IDE interface. Initialisation of such a | ||
39 | card in this mode is not supported (yet?). | ||
40 | |||
41 | The suggestion to configure the ISP16 etc. sound card by booting DOS and | ||
42 | do a warm reboot to boot Linux somehow doesn't work, at least not | ||
43 | on my machine (IPC P90), with the OPTi 82C928 based card. | ||
44 | |||
45 | Booting the kernel through the boot manager LILO allows the use | ||
46 | of some command line options on the 'LILO boot:' prompt. At boot time | ||
47 | press Alt or Shift while the LILO prompt is written on the screen and enter | ||
48 | any kernel options. Alternatively these options may be used in | ||
49 | the appropriate section in /etc/lilo.conf. Adding 'append="<cmd_line_options>"' | ||
50 | will do the trick as well. | ||
51 | The syntax of 'cmd_line_options' is | ||
52 | |||
53 | isp16=[<port>[,<irq>[,<dma>]]][[,]<drive_type>] | ||
54 | |||
55 | If there is no ISP16 or compatibles detected, there's probably no harm done. | ||
56 | These options indicate the values that your cdrom drive has been (or will be) | ||
57 | configured to use. | ||
58 | Valid values for the base i/o address are: | ||
59 | port=0x340,0x320,0x330,0x360 | ||
60 | for the interrupt request number | ||
61 | irq=0,3,5,7,9,10,11 | ||
62 | for the direct memory access line | ||
63 | dma=0,3,5,6,7 | ||
64 | and for the type of drive | ||
65 | drive_type=noisp16,Sanyo,Panasonic,Sony,Mitsumi. | ||
66 | Note that these options are case sensitive. | ||
67 | The values 0 for irq and dma indicate that they are not used, and | ||
68 | the drive will be used in 'polling' mode. The values 5 and 7 for irq | ||
69 | should be avoided in order to avoid any conflicts with optional | ||
70 | sound card configuration. | ||
71 | The syntax of the command line does not allow the specification of | ||
72 | irq when there's nothing specified for the base address and no | ||
73 | specification of dma when there is no specification of irq. | ||
74 | The value 'noisp16' for drive_type, which may be used as the first | ||
75 | non-integer option value (e.g. 'isp16=noisp16'), makes sure that probing | ||
76 | for and subsequent configuration of an ISP16-compatible card is skipped | ||
77 | all together. This can be useful to overcome possible conflicts which | ||
78 | may arise while the kernel is probing your hardware. | ||
79 | The default values are | ||
80 | port=0x340 | ||
81 | irq=0 | ||
82 | dma=0 | ||
83 | drive_type=Sanyo | ||
84 | reflecting my own configuration. The defaults can be changed in | ||
85 | the file linux/drivers/cdrom/ips16.h. | ||
86 | |||
87 | The cdrom interface can be configured at run time by loading the | ||
88 | initialisation driver as a module. In that case, the interface | ||
89 | parameters can be set by giving appropriate values on the command | ||
90 | line. Configuring the driver can then be done by the following | ||
91 | command (assuming you have iso16.o installed in a proper place): | ||
92 | |||
93 | insmod isp16.o isp16_cdrom_base=<port> isp16_cdrom_irq=<irq> \ | ||
94 | isp16_cdrom_dma=<dma> isp16_cdrom_type=<drive_type> | ||
95 | |||
96 | where port, irq, dma and drive_type can have any of the values mentioned | ||
97 | above. | ||
98 | |||
99 | |||
100 | Have fun! | ||