Date: Mon, 19 Jun 2006 11:30:43 -0500 From: "Douglas K. Rand" <rand@meridian-enviro.com> To: "Rusty Biesele" <Rusty@takarus.com> Cc: Marcel Moolenaar <marcel@xcllnt.net>, freebsd-hardware@freebsd.org Subject: Re: puc & SIIG & Baud Rates Message-ID: <87y7vt3y6k.wl%rand@meridian-enviro.com> In-Reply-To: <55E8A262A88DE647A8CBFE4155F513BD534D4D@twinstar.research.takarus.com> References: <55E8A262A88DE647A8CBFE4155F513BD534D4D@twinstar.research.takarus.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Rusty> The question he posed was how to patch pucdata.c for its 10X Rusty> clock frequency without interfering with other Oxford Rusty> Semiconductor chip based cards. I had worked with Marcel Moolenaar off-list and had gotten from SIIG a list of all their cards that use the 10x crystals. Here's the patch I sent Marcel that I think "fixes" all the supported SIIG cards with the fast crystal. Marcel said he's going to commit this when he makes some other changes to puc. Attached is the patch I sent Marcel along with the list of SIIG cards that use the 18.432 MHz crystals. ===File ~/patch============================================= --- pucdata.c-orig Thu May 25 15:11:08 2006 +++ pucdata.c Wed May 31 18:13:31 2006 @@ -434,6 +434,10 @@ /* * SIIG "20x" family boards. + * Some of these boards use a 18.432 MHz clock which is + * 10x faster than the nominal 1.8432 MHz clock used + * for most UARTs. These SIIG definitions must come + * before the Oxford definitions. */ /* SIIG Cyber Parallel PCI (20x family): 1P */ @@ -490,157 +494,157 @@ /* SIIG Cyber Serial PCI 16C550 (20x family): 1S */ { "SIIG Cyber Serial PCI 16C550 (20x family)", - { 0x131f, 0x2000, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2000 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber Serial PCI 16C650 (20x family): 1S */ { "SIIG Cyber Serial PCI 16C650 (20x family)", - { 0x131f, 0x2001, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2001 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber Serial PCI 16C850 (20x family): 1S */ { "SIIG Cyber Serial PCI 16C850 (20x family)", - { 0x131f, 0x2002, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2002 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber I/O PCI 16C550 (20x family): 1S, 1P */ { "SIIG Cyber I/O PCI 16C550 (20x family)", - { 0x131f, 0x2010, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2010 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 }, }, }, /* SIIG Cyber I/O PCI 16C650 (20x family): 1S, 1P */ { "SIIG Cyber I/O PCI 16C650 (20x family)", - { 0x131f, 0x2011, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2011 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 }, }, }, /* SIIG Cyber I/O PCI 16C850 (20x family): 1S, 1P */ { "SIIG Cyber I/O PCI 16C850 (20x family)", - { 0x131f, 0x2012, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2012 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x14, 0x00, 0x00 }, }, }, /* SIIG Cyber Serial Dual PCI 16C550 (20x family): 2S */ { "SIIG Cyber Serial Dual PCI 16C550 (20x family)", - { 0x131f, 0x2030, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2030 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber Serial Dual PCI 16C650 (20x family): 2S */ { "SIIG Cyber Serial Dual PCI 16C650 (20x family)", - { 0x131f, 0x2031, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2031 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber Serial Dual PCI 16C850 (20x family): 2S */ { "SIIG Cyber Serial Dual PCI 16C850 (20x family)", - { 0x131f, 0x2032, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2032 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber 2S1P PCI 16C550 (20x family): 2S, 1P */ { "SIIG Cyber 2S1P PCI 16C550 (20x family)", - { 0x131f, 0x2060, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2060 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 }, }, }, /* SIIG Cyber 2S1P PCI 16C650 (20x family): 2S, 1P */ { "SIIG Cyber 2S1P PCI 16C650 (20x family)", - { 0x131f, 0x2061, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2061 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 }, }, }, /* SIIG Cyber 2S1P PCI 16C850 (20x family): 2S, 1P */ { "SIIG Cyber 2S1P PCI 16C850 (20x family)", - { 0x131f, 0x2062, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2062 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, { PUC_PORT_TYPE_LPT, 0x18, 0x00, 0x00 }, }, }, /* SIIG Cyber 4S PCI 16C550 (20x family): 4S */ { "SIIG Cyber 4S PCI 16C550 (20x family)", - { 0x131f, 0x2050, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2050 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 10 }, }, }, /* SIIG Cyber 4S PCI 16C650 (20x family): 4S */ { "SIIG Cyber 4S PCI 16C650 (20x family)", - { 0x131f, 0x2051, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x9501, 0x131f, 0x2051 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x10, 0x10, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x10, 0x18, COM_FREQ * 10 }, }, }, /* SIIG Cyber 4S PCI 16C850 (20x family): 4S */ { "SIIG Cyber 4S PCI 16C850 (20x family)", - { 0x131f, 0x2052, 0, 0 }, - { 0xffff, 0xffff, 0, 0 }, + { 0x1415, 0x950a, 0x131f, 0x2052 }, + { 0xffff, 0xffff, 0xffff, 0xffff }, { - { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ }, - { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ }, + { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x14, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x18, 0x00, COM_FREQ * 10 }, + { PUC_PORT_TYPE_COM, 0x1c, 0x00, COM_FREQ * 10 }, }, }, ============================================================ SIIG cards using the 10x crystal: 1S-550 1S-650 1S-950 2S-550 2S-650 2S-950 4S-550 4S-650 4S-950 8S-550 8S-650 8S-950 1S1P-550 1S1P-650 1S1P-950 2S1P-550 2S1P-650 2S1P-950
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87y7vt3y6k.wl%rand>