Project

General

Profile

Actions

Bug #2560

closed

ACPI parser fails to identify COM3 on Tyan motherboard

Added by Gary Mills about 9 years ago. Updated almost 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Start date:
2012-03-29
Due date:
% Done:

90%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

I have a Tyan S5510GM3NR motherboard that includes a BMC
device with serial-over-lan support. Illumos fails to identify
the COM3 serial port on this board, producing an incomplete
device tree entry like this:

            asy (driver not attached)
                Hardware properties:
                    name='compatible' type=string items=1
                        value='pnpPNP,501'
                    name='acpi-namespace' type=string items=1
                        value='\_SB_.PCI0.SBRG.UAR3'
                    name='model' type=string items=1
                        value='16550A-compatible COM port'

This does work with a Supermicro motherboard, resulting in
this device entry:

            asy, instance #2
                System software properties:
                    name='interrupt-priorities' type=int items=1
                        value=0000000c
                Driver properties:
                    name='ddi-no-autodetach' type=int items=1 dev=none
                        value=00000001
                Hardware properties:
                    name='compatible' type=string items=1
                        value='pnpPNP,501'
                    name='interrupts' type=int items=1
                        value=0000000a
                    name='reg' type=int items=3
                        value=00000001.000003e8.00000008
                    name='acpi-namespace' type=string items=1
                        value='\_SB_.PCI0.SBRG.UAR3'
                    name='model' type=string items=1
                        value='16550A-compatible COM port'
                Register Specifications:
                    Bus Type=0x1, Address=0x3e8, Size=0x8
                Interrupt Specifications:
                    Interrupt Priority=0xc (ipl 12), vector=0xa (10)
               Device Minor Nodes:
                    dev=(106,2)
                        dev_path=/pci@0,0/isa@1f/asy@1,3e8:c
                            spectype=chr type=minor
                            dev_link=/dev/ttyc
                            dev_link=/dev/tty02
                            dev_link=/dev/term/c
                        Minor properties:
                            name='uart' type=string items=1 dev=(106,2)
                                value='16550A'
                    dev=(106,131074)
                        dev_path=/pci@0,0/isa@1f/asy@1,3e8:c,cu
                            spectype=chr type=minor
                            dev_link=/dev/ttyd2
                            dev_link=/dev/cua2
                            dev_link=/dev/cua/c

The cause seems to be different ACPI DSDT tables. This is a
condensed version of the relevant portion for the Tyan board:

    Device (UAR1){
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM2 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM3 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM4 */
            }
            EndDependentFn ()
        })
    }
    Device (UAR2){
       Name (CRSS, ResourceTemplate ()    {
               /* Info on COM2 */
        })
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM2 */
        })
    }
    Device (UAR3){
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM3 */
            }
            EndDependentFn ()
        })
    }

This is the same thing for the Supermicro board:

    Device (UAR1)                {
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM2 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM3 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM4 */
            }
            EndDependentFn ()
        })
    }
    Device (UAR2){
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM2 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM2 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM3 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM4 */
            }
            EndDependentFn ()
        })
    }
    Device (UAR3){
        Name (_PRS, ResourceTemplate ()    {
            StartDependentFn (0x00, 0x00)        {
                /* Info on COM3 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM1 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM2 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM3 */
            }
            StartDependentFnNoPri ()        {
                /* Info on COM4 */
            }
            EndDependentFn ()
        })
    }

I'll attach more complete sections of the DSDT tables.


Files

tyan-dsdt.txt (5.58 KB) tyan-dsdt.txt Gary Mills, 2012-03-29 02:30 PM
super-dsdt.txt (10.1 KB) super-dsdt.txt Gary Mills, 2012-03-29 02:30 PM
acpica-12.7.tar.gz (451 KB) acpica-12.7.tar.gz Gary Mills, 2012-07-12 09:52 PM
Actions

Also available in: Atom PDF