[MinnowBoard] UART and COM ports problem

Darren Hart dvhart at linux.intel.com
Tue Jun 30 16:12:49 UTC 2015


The device you mention here (IUR3) is the debug port of the E3825 SoC. It is
routed to the 6 pin header on the MinnowBoard MAX. The other two devices are
HSUARTs hung off LPSS. These can be enumerated via ACPI or via PCI. One of
these has all the RS232 signals (UART1), while the other only routes RX and
TX (UART2) (but I thought that was a routing decision rather than a silicon
limitation - will have to look that up in the data sheet to be sure).

Ivan, have we previously documented that that only LPSS UART1 is compatible
with Windows?

-- 
Darren Hart
Intel Open Source Technology Center

On 6/29/15, 10:33 PM, "Anteja Vuk Macek" <anteja.vm at dolotron.com> wrote:

> Hi Ivan, 
> 
> Thank you for advice, but I want two COM ports.  I found  LPC_DEV.ASL
> ACPI_table  in Vlv2TbltDeviceRefCodePkg where was ASL code for the device IUR3
> HID - PNP0501.  
> 
> Device(IUR3) // Internal UART
> {
>   Name(_HID, EISAID("PNP0501"))
> 
>   Name(_UID,1)
> 
>   // Status Method for internal UART
> 
>   Method(_STA,0,Serialized)
>   {
>     // Only report resources to the OS if internal UART is
>     // not set to Disabled in BIOS Setup.
> 
>     If(LEqual(USEL,0))
>     {
>       If(LEqual(PU1E,1))
>       {
>         Store(1,UI3E) // Enable IRQ3 for UART
>         Store(1,UI4E) // Enable IRQ4 for UART
>         Store(1,C1EN) // Enable UART
>         Return(0x000F)
>       }
>     }
> 
>     Return(0x0000)
>   }
> 
>   // Disable Method for internal UART
> 
>   Method(_DIS,0,Serialized)
>   {
>     Store(0,UI3E)
>     Store(0,UI4E)
>     Store(0,C1EN)
>   }
> 
>   // Current Resource Setting Method for internal UART
> 
>   Method(_CRS,0,Serialized)
>   {
>     // Create the Buffer that stores the Resources to
>     // be returned.
> 
>     Name(BUF0,ResourceTemplate()
>     {
>       IO(Decode16,0x03F8,0x03F8,0x01,0x08)
>       IRQNoFlags() {3}
>     })
> 
>     Name(BUF1,ResourceTemplate()
>     {
>       IO(Decode16,0x03F8,0x03F8,0x01,0x08)
>       IRQNoFlags() {4}
>     })
> 
>     If (LLessEqual(SRID, 0x04))
>     {
>       Return(BUF0)
>     } Else
>     {
>       Return(BUF1)
>     }
>   }
> }
> 
> I want to make second IUR device.  I don't know value of variables : SEL,
> PU1E, UI3E, UI4E and C1EN  and where it was defined.  Also,  I would like to
> know what I need to change to write ASL code for second IURx device.
> Best regards,
> 
> Anteja
> 
>> >On Thu, Jun 25, 2015 at 11:16 AM, Rouzanov, Ivan <ivan.rouzanov at intel.com>
>> wrote:
>>> >Anteja,
>>> >
>>> >As far as I understand we have 2 UARTs but only one follows legacy
>>> COM-interface and the other one does not so Windows inbox driver serial.sys
>>> does not work with it so you only have one COM port.
>>> >(Basically COMx is just a symbolic link serial.sys creates to point to its
>>> device object, so if it does not service a device like in the case of the
>>> second HSUART, then it is not a COM-port).
>>> >f you need to use COM-port and have ability to debug, I'd suggest to use
>>> Ethernet for debugging and free up COM1 for your other needs.
>>> >
>>> >I hope this helps.
>>> >Best regards,
>>> >van Rouzanov.
>>> >
>>> >
>>> >
>>> >Message: 3
>>> >Date: Wed, 24 Jun 2015 10:06:02 +0200
>>> >From: Anteja Vuk Macek <anteja.vm at dolotron.com>
>>> >To: EDK2 email list <edk2-devel at lists.sourceforge.net>,  MinnowMax
>>> >       Community <elinux-minnowboard at lists.elinux.org>
>>> >Subject: [MinnowBoard] UART and COM ports problem
>>> >Message-ID:
>>> >       <CAOPTR2BQg0h5KT8dogxr60t3++i4tCHPFchyo6qWqKYkqGWZhw at mail.gmail.com
>>> <mailto:CAOPTR2BQg0h5KT8dogxr60t3%2B%2Bi4tCHPFchyo6qWqKYkqGWZhw at mail.gmail.c
>>> om> >
>>> >Content-Type: text/plain; charset="utf-8"
>>> >
>>> >Hi all,
>>> >
>>> >On MinnowMax I work  on Windows 8.1 with UART.
>>> > In BIOS Setup I enable UART.   In  LSS & SCC Configuration menu in BIOS
>>> >Setup I enable : LSS HSUART #1 Support  , LSS HSUART #1 FlowCtrl  , LSS
>>> HSUART #2 Support  , and LSS HSUART #2 FlowCtrl .  But I don't know if I
>>> need to in BIOS Setup in Miscellaneous configuration  set  UART >interface
>>> on  Super IO UART, for now I set  Internal UART for UART interface.
>>> >I install Intel driver (
>>> >https://downloadcenter.intel.com/download/24228/Intel-embedded-drivers-for-
>>> Windows-8-1-32-bit-
>>> >)
>>> >and I got two UART controllers.
>>> >
>>> >Problem :
>>> >Problem is that I have only one COM port ( COM1)  and it is for debugging.
>>> I looking in inf (iaiouart.inf ) file of driver for which device is , and I
>>> find APCI/INT33BC device.  The COM1 is device
>>> >APCI/PNP0501 .
>>> >
>>> >What I need to do to get COM 2 device ?  I saw  BaseSerialPortLib 16550
>>> module in  MdeModulePkg/Library for what it is this module.  Need I add some
>>> module for UART or Serial port in fdf (PlatformPkg.fdf ) file to get
>>> >COM2 device, or add  COM2  in ACPI_table? Where I can find ACPI_table in
>>> source of firmware?
>>> >
>>> >Best regards,
>>> >
>>> >Anteja
>>> > 
> 
> _______________________________________________ elinux-MinnowBoard mailing
> list elinux-MinnowBoard at lists.elinux.org
> http://lists.elinux.org/mailman/listinfo/elinux-minnowboard


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.elinux.org/pipermail/elinux-minnowboard/attachments/20150630/37648d33/attachment.html>


More information about the elinux-MinnowBoard mailing list