Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Nov 2006 18:20:30 GMT
From:      puc-uart@oldach.net (Helge Oldach)
To:        freebsd-i386@FreeBSD.org
Subject:   Re: i386/105616: UART PCI device just silent...
Message-ID:  <200611181820.kAIIKU0w087693@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR i386/105616; it has been noted by GNATS.

From: puc-uart@oldach.net (Helge Oldach)
To: xcllnt@mac.com (Marcel Moolenaar)
Cc: FreeBSD-gnats-submit@FreeBSD.org
Subject: Re: i386/105616: UART PCI device just silent...
Date: Sat, 18 Nov 2006 19:14:22 +0100 (CET)

 Hi Marcel,
 
 thanks for your response.
 
 Marcel Moolenaar:
 >On Nov 16, 2006, at 12:46 PM, Helge Oldach wrote:
 >
 >> --- sys/dev/uart/uart_bus_pci.c.ctm	Wed Aug  2 16:24:19 2006
 >> +++ sys/dev/uart/uart_bus_pci.c	Wed Nov 15 10:18:56 2006
 >> @@ -101,6 +101,8 @@
 >>  	8 * DEFAULT_RCLK },
 >>  { 0x1409, 0x7168, 0x1409, 0x4028, "Timedia Technology Serial  
 >> Port", 0x10,
 >>  	8 * DEFAULT_RCLK },
 >> +{ 0x1409, 0x7168, 0x1409, 0x4037, "Timedia Technology Serial  
 >> Port", 0x10,
 >> +	8 * DEFAULT_RCLK },
 >>  { 0x1409, 0x7168, 0x1409, 0x5025, "Timedia Technology Serial  
 >> Port", 0x10,
 >>  	8 * DEFAULT_RCLK },
 >>  { 0x1409, 0x7168, 0x1409, 0x5027, "Timedia Technology Serial  
 >> Port", 0x10,
 >>
 >
 >The patch is not right. The PCI device you talk about is a *dual* serial
 >I/O card. As such, puc(4) needs to attach to it, not uart(4). Adding the
 >PCI ids to uart(4) will only cause a conflict, not to mention that if
 >uart(4) attaches, it only attaches to the first.
 
 Am I mistaken or, is it actually the case that puc(4) attaches to the
 board and not uart(4)?
 
 puc0: <Dolphin Peripherals 4036> port 0x2000-0x201f irq 10 at device 14.0 on pci0
 uart2: <16550 or compatible> on puc0
 uart2: fast interrupt
 uart3: <16550 or compatible> on puc0
 uart3: fast interrupt
 
 >However, the patch shows that the clock on these cards is 8 times the
 >default clock.
 
 That was just a rough guess, copied from seemingly similar cards.
 
 So I understand no specific puc(4) attribution needs to be made for this
 card. It is already properly recognized, albeit with misleading text in
 pucdata.c:
 
         {   "Dolphin Peripherals 4036",
             {   0x1409, 0x7168, 0,      0       },
             {   0xffff, 0xffff, 0,      0       },
             {
                 { PUC_PORT_TYPE_COM, 0x10, 0x00, COM_FREQ * 8 },
                 { PUC_PORT_TYPE_COM, 0x10, 0x08, COM_FREQ * 8 },
             },
         },
 
 >I think that is why puc(4)+uart(4) doesn't work. If
 >you select a baudrate that 8 times lower than what you know the baudrate
 >should be, then you should be able to transmit and receive data. If
 >that's the case, then puc(4) needs to be fixed to have the correct
 >clock value for these boards.
 
 I will give this a try to see if it helps.
 
 Note that also pucdata.c assumes 8 times baudrate.
 
 >Note also that I have not heard of uart(4) being wrong in classifying
 >the type as 16550, 1660 or otherwise.
 
 Fine with me. I am not claiming the source mentioned is correct. I just
 say there appears to be some disagreement.
 
 Thanks for your response anyway.
 
 Regards,
 Helge



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200611181820.kAIIKU0w087693>