Here is an ebuild for PCTel-based linmodems. Tested on a Dell Inspiron 600m.
Created attachment 12845 [details] Ebuild
Created attachment 12846 [details, diff] Diff to add auto detection of new modem
Created attachment 12847 [details, diff] Diff to Makefile so it obeys sandboxing.
Created attachment 12848 [details] Modules file
I've given up on this POS Winmodem. I bought a real modem.
I'd like to request that this bug be kept around, since I have an IBM X31 that uses a modem supported by this driver, a 0x24c6, also: Mark, have you looked at these two entries in the PCTel Linux compatibility database ? They both talk about changing "#define PCI_DEVICE_ID_* 0x2486" to "#define PCI_DEVICE_ID_* 0x24c6" in either ptserial-2.4.7.c or amrmo_init.c http://pctelcompdb.sourceforge.net/viewdetails.php?id_no=144 http://pctelcompdb.sourceforge.net/viewdetails.php?id_no=196
Yes, I saw that info on the PCTel Linux compatibility database. I guessed that changing the line was a hack which prevented people with 0x2486's from using the driver. The Dell laptop I had (Inspiron 600m) has a I855 chipset, not an I845. Looking more closely, I was curious about the use of the PCI_DEVICE_ID_I845, thinking it would be appropriate to create a PCI_DEVICE_ID_I855. However, the only use of PCI_DEVICE_ID_I845 is in ptserial-2.4.6.c and ptserial-2.4.7.c in this bit of twisted logic (starting at line 4655 of ptserial-2.4.7.c): #if defined (HAL_I8XX) #ifdef SIS540 if (dwDeviceID == (PCI_DEVICE_ID_SIS540_MR << 16 | PCI_VENDOR_ID_SIS)) #else if ((dwDeviceID == (PCI_DEVICE_ID_I810_MR << 16 | PCI_VENDOR_ID_INTEL)) || (dwDeviceID == (PCI_DEVICE_ID_I810_MR_LAPTOP << 16 | PCI_VENDOR_ID_INTEL)) || (dwDeviceID == (PCI_DEVICE_ID_I820 << 16 | PCI_VENDOR_ID_INTEL)) || (dwDeviceID == (PCI_DEVICE_ID_I845 << 16 | PCI_VENDOR_ID_INTEL))) #endif #else if (dwDeviceID == (PCI_DEVICE_ID_VIA686A_MR << 16 | PCI_VENDOR_ID_VIA)) #endif { outl(dwDeviceNum + PCI_INTERRUPT_LINE, 0xCF8); ... It seems to me that if none of the conditions is met then the block is executed anyway so defining PCI_DEVICE_ID_I855, while technically correct, would be useless.
I think you're right about that Mark, I haven't gotten started yet, but when I do get my X31 loaded up, I'll see if the driver works sans modifications, etc. and report back about it. Out of curiosity, could you post or e-mail me the reported info on your modem, and what results you experienced ? Thanks.
Here is the lspci info: 00:1f.6 Class 0703: 8086:24c6 (rev 01) 00:1f.6 Modem: Intel Corp. 82801DB AC'97 Modem Controller (rev 01) (prog-if 00 [Generic]) Subsystem: PCTel Inc: Unknown device 4c21 My results weren't good. I'd have to dial up to 10 times before the modem would train. There were frequent disconnects. I suspect my phone line quality was poor and that exaserbated the problems.
please rewrite the ebuild and use the kernel-mod eclass
Created attachment 40433 [details] pctel-0.9.7.ebuild I wrote this ebuild only because I'm currently in evaluation period of becoming a gentoo dev and wanted to prove that I'm able to do that. It is a poorly written driver; this garbage should not be included in portage tree.
Created attachment 40438 [details] pctel-0.9.7.ebuild Forgot to run repoman.
This package supports only 2.4 kernels and project doesn't seems to be active anymore. Closing this oldie.