Here is an ebuild for PCTel-based linmodems. Tested on a Dell Inspiron 600m.
Created attachment 12845 [details]
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]
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
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)
if (dwDeviceID == (PCI_DEVICE_ID_SIS540_MR << 16 | PCI_VENDOR_ID_SIS))
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)))
if (dwDeviceID == (PCI_DEVICE_ID_VIA686A_MR << 16 | PCI_VENDOR_ID_VIA))
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 ?
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
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]
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
Created attachment 40438 [details]
Forgot to run repoman.
This package supports only 2.4 kernels and project doesn't seems to be active anymore.
Closing this oldie.