PER-C40C minipci card under FreeBSD
John Baldwin
jhb at freebsd.org
Tue Feb 21 21:59:15 UTC 2012
On Monday, February 20, 2012 4:02:37 pm Milan Obuch wrote:
> Hi,
>
> is somebody using $subject? I need to get this card working in order to
> get more serial ports in ALIX boards. Unfortunately, all I am getting
> is hangup - last lines on console are
>
> pci0: <simple comms, UART> at device 13.0 (no driver attached)
> puc0: <Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)> port
> 0x1440-0x145f,0x1480-0x149f mem
> 0x80040000-0x80040fff,0x80080000-0x80080fff irq 12 at device 13.1 on
> pci0
> puc0: Reserved 0x20 bytes for rid 0x10 type 4 at 0x1440
> puc0: [FILTER]
>
> and nothing more happens (second line is wrapped here, very long for
> mail).
>
> In verbose boot, there are some related lines a bit sooner while doing
> pci bus scan:
>
> found-> vendor=0x1415, dev=0x9505, revid=0x01
> domain=0, bus=0, slot=13, func=0
> class=07-00-06, hdrtype=0x00, mfdev=1
> cmdreg=0x0103, statreg=0x0290, cachelnsz=0 (dwords)
> lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns)
> intpin=a, irq=12
> powerspec 2 supports D0 D2 D3 current D0
> map[10]: type I/O Port, range 32, base 0x1000, size 3, enabled
> map[14]: type I/O Port, range 32, base 0x1040, size 3, enabled
> map[18]: type I/O Port, range 32, base 0x1080, size 3, enabled
> map[1c]: type I/O Port, range 32, base 0x10c0, size 3, enabled
> map[20]: type I/O Port, range 32, base 0x1400, size 5, enabled
> map[24]: type Memory, range 32, base 0x80000000, size 12,
> enabled
Looks like this device works differently (the default is expecting the
4 serial ports to all show up in RID 0x10). Can you try this:
Index: pucdata.c
===================================================================
--- pucdata.c (revision 231973)
+++ pucdata.c (working copy)
@@ -708,11 +708,20 @@ const struct puc_cfg puc_pci_devices[] = {
PUC_PORT_4S, 0x10, 0, 8,
},
+ /* XXX: Need subdevice/vendor */
{ 0x1415, 0x9511, 0xffff, 0,
+ "AAEON PER-C40C",
+ DEFAULT_RCLK,
+ PUC_PORT_4S, 0x10, 4, 0,
+ },
+
+#if 0
+ { 0x1415, 0x9511, 0xffff, 0,
"Oxford Semiconductor OX9160/OX16PCI954 UARTs (function 1)",
DEFAULT_RCLK,
PUC_PORT_4S, 0x10, 0, 8,
},
+#endif
{ 0x1415, 0x9521, 0xffff, 0,
"Oxford Semiconductor OX16PCI952 UARTs",
--
John Baldwin
More information about the freebsd-hardware
mailing list