From llurch@networking.Stanford.EDU Wed May 6 19:35:58 1998 Date: Wed, 4 Mar 1998 19:36:22 -0800 (PST) From: Rich Graves To: linux-laptop@vger.rutgers.edu Subject: ThinkPad 560X/CS4237B sound Q, and 560X APM/CardBus summary X-PGP-Key: mail this account with subject line "send pgp key" Anyone have sound working on a 560X? I've tried both OSS/Free and the commercial demo. The modules/kernel load without complaints, but the machine crashes *hard* whenever I try to play anything. The ThinkPad goes back to the ROM monitor (or whatever) and indicates a hardware error 8611. After the 8611 hardware crash, sound won't work in Windows either until the next cold boot (i.e., the next PnP probe by Windows). The chipset is Crystal CS4237B. OSS/Free and OSS/Linux use the same driver for all CS423x. Here's what the OSS/Linux /dev/sndstat reads... don't copy this config unless you want to see the same crash. OSS/Linux 3.8.1n [...] Card config: CS4232 MIDI at 0x330 irq 11 (CS423X at 0x534 irq 7 drq 0,3) OPL-2/OPL-3 FM at 0x388 SoftOSS Virtual Wave Table Audio devices: 0: SoftOSS v1.1 (BETA) 1: SoftOSS v1.1 (BETA) [...] 7: SoftOSS v1.1 (BETA) Synth devices: 0: Yamaha OPL-3 1: SoftOSS v1.1 Midi devices: Timers: 0: System clock 1: SoftOSS Mixers: Thanks to a couple people for help with APM and PCMCIA. For the archives, the answers are: o As it says on his web page, the 560X *does* need Dean Gaudet's APM patches. the link's getting a bit less easy to find, though. Page down to May 12, 1997 on http://www.arctic.org/~dgaudet/tp560/ This resolves the "received extra suspend event" and suspend-when-apmd-exits problems. I haven't had any trouble with standby, suspend, or hibernate since applying the patch. (Of coure you need to keep your first partition FAT to hold the hibernation file.) o The 560X has a TI 1250 chip, which isn't recognized as "yenta-compatible" by pcmcia-cs 3.0.0 because David Hinds hasn't been able to get technical information on the inner workings of the chip yet. The result is that PCMCIA cards work (through generic code), but CardBus doesn't, even if CardBus support is compiled in and no error messages (that I could see) complain. The solution is to force pcmcia-cs to recognize the TI 1250 as an 1131, which is "close enough." You can do this by hacking the line in modules/yenta.h to read #define PCI_DEVICE_ID_TI_1131 0xac16 Many other newer laptops will need this hack (or an update to pcmcia-cs with *real* 1250 support) to enable CardBus. Credit Dick Bakker who first ran into this on a Gateway 5100 XL. http://hyper.stanford.edu/HyperNews/get/pcmcia/cardbus/35/1/1.html o CardBus is still very much under development. One of the things that isn't done is suspend/resume. The docs say you need to cardctl eject any CardBus cards before a suspend. I've found that it's necessary to physically eject them. There might be a timing issue in recognizing the cards "too soon" on resume. This might be specific to the 3Com 3C575 Fast Ethernet card, but since the 3C575 happens to be the only CardBus card for which a Linux driver exists at all, maybe not. I'm not going to work on this any more because I'm alwys going to eject the cards anyway. You see, on the 560X, the eject buttons stick out in a vulnerable-looking way... I wouldn't feel comfortable sticking the laptop into a bag like that. o I went and bought Acclerated-X. Problem with the demo: I can't get above 8bpp. I get 24bpp in Windoze. I'll send a query in to support when my official license shows up. o Still haven't gotten CardBus working on NT on this machine, but that's to be expected. Everyone knows Linux is easier. -rich