isp16 4.6 KB

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