serial_cs: MD55x support (PCMCIA GPRS/EDGE modem) (kernel 2.6.33)
Many PCMCIA GPRS modems like: Onda Edge N100E, Novaway PC98 (OEM SPC98Z), Rovermate Edgus Adaptmate-039 and others have same construction and identification: lspcmcia -vvv Product Name: Generic Modem: MD55x 1.00 Serial number: xxxxx-xxx Identification: manf_id: 0x015d card_id: 0x4c45 function: 2 (serial) prod_id(1): "Generic" (0xc49e4731) prod_id(2): "Modem: MD55x" (0x8913b110) prod_id(3): "1.00" (0x83dbf271) prod_id(4): "Serial number: xxxxx-xxx" (0x73ee9514) Serial connection to GSM module based on Elan VPU16551 PCMCIA UART with datasheet recommeded 14.7456MHz crystal oscillator. By default serial_cs set UART clock == 1843200 Hz For correct work need set clock 14745600 Hz. This quirk already present in driver, only need add device in quirk list. Signed-off-by: Timur Maximov <xcom.org@gmail.com> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
This commit is contained in:
parent
a8408c17d0
commit
6f4567c8cf
1 changed files with 9 additions and 0 deletions
|
@ -105,6 +105,10 @@ struct serial_cfg_mem {
|
|||
* manfid 0x0160, 0x0104
|
||||
* This card appears to have a 14.7456MHz clock.
|
||||
*/
|
||||
/* Generic Modem: MD55x (GPRS/EDGE) have
|
||||
* Elan VPU16551 UART with 14.7456MHz oscillator
|
||||
* manfid 0x015D, 0x4C45
|
||||
*/
|
||||
static void quirk_setup_brainboxes_0104(struct pcmcia_device *link, struct uart_port *port)
|
||||
{
|
||||
port->uartclk = 14745600;
|
||||
|
@ -195,6 +199,11 @@ static const struct serial_quirk quirks[] = {
|
|||
.prodid = 0x0104,
|
||||
.multi = -1,
|
||||
.setup = quirk_setup_brainboxes_0104,
|
||||
}, {
|
||||
.manfid = 0x015D,
|
||||
.prodid = 0x4C45,
|
||||
.multi = -1,
|
||||
.setup = quirk_setup_brainboxes_0104,
|
||||
}, {
|
||||
.manfid = MANFID_IBM,
|
||||
.prodid = ~0,
|
||||
|
|
Loading…
Reference in a new issue