[MinnowBoard] Minnowboard Turbot PCI UART

the_drethon_tolar the_drethon_tolar at yahoo.com
Thu May 5 13:37:02 UTC 2016


With the LPSS & SCC in ACPI mode I don't see any UARTs reported by Linux.  Is there a way to tell Linux these ports exist so I can use them with a program like minicom to communicate with a BT device?
If I change to PCI mode, lspci reports that two LPI01 HSUART devices exist but I can't seem to figure out how to use them for serial communication.
We are running Centos 7 and I've tried the 3.10 kernel Centos comes with and the El repo 4.5 kernel.  Though the 4.5 kernel locks up on startup if I use PCI mode.

-------- Original message --------
From: "Wei, David" <david.wei at intel.com> 
Date: 05/04/2016  9:39 PM  (GMT-05:00) 
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org> 
Subject: Re: [MinnowBoard] Minnowboard Turbot PCI UART 

All SCC and LPSS devices, including HS UART are switched into ACPI mode by BIOS before handing off to OS. 
You could switch SCC and LPSS devices back to PCI mode by  BIOS setting "Device Manager -> System Setup -> South Cluster Configuration -> LPSS and SCC Configuration". But this is not recommended. 

The HSUART ACPI objects are : 

//
// LPIO1 HS-UART #1
//
Device(URT1)
{
  Name (_ADR, 0)
  Name (_HID, "80860F0A")
  Name (_CID, "80860F0A")
  Name (_DDN, "Intel(R) HS-UART Controller #1 - 80860F0A")
  Name (_UID, 1)
  Name(_DEP, Package(0x1)
  {
    PEPD
  })
  Name (RBUF, ResourceTemplate ()
  {
    Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
    Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {39}  // HS-UART #1 IRQ

    FixedDMA(0x2, 0x2, Width32Bit, )
    FixedDMA(0x3, 0x3, Width32Bit, )
  })
  Method (_HRV, 0x0, NotSerialized)
  {
    Return (SOCS)
  }
  Method (_CRS, 0x0, NotSerialized)
  {
    CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
    CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
    Store(U10A, B0BA)
    Store(U10L, B0LN)
    Return (RBUF)
  }
 ...

}//  Device (URT1)

//
// LPIO1 HS-UART #2
//
Device(URT2)
{
  Name (_ADR, 0)
  Name (_HID, "80860F0A")
  Name (_CID, "80860F0A")
  Name (_DDN, "Intel(R) HS-UART Controller #2 - 80860F0C")
  Name (_UID, 2)

  Name(_DEP, Package(0x1)
  {
    PEPD
  })

  Name (RBUF, ResourceTemplate ()
  {
    Memory32Fixed (ReadWrite, 0x00000000, 0x00001000, BAR0)
    Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, , , ) {40}  // HS-UART #2 IRQ

    FixedDMA(0x4, 0x4, Width32Bit, )
    FixedDMA(0x5, 0x5, Width32Bit, )
  })

  Method (_HRV, 0x0, NotSerialized)
  {
    Return (SOCS)
  }

  Method (_CRS, 0x0, NotSerialized)
  {
    CreateDwordField(^RBUF, ^BAR0._BAS, B0BA)
    CreateDwordField(^RBUF, ^BAR0._LEN, B0LN)
    Store(U20A, B0BA)
    Store(U20L, B0LN)
    Return (RBUF)
  }
.....
}//  Device (URT2)
  

Thanks,
David  

Intel SSG BIOS

-----Original Message-----
From: elinux-MinnowBoard [mailto:elinux-minnowboard-bounces at lists.elinux.org] On Behalf Of Anders, David
Sent: Thursday, May 05, 2016 4:32 AM
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org>
Subject: Re: [MinnowBoard] Minnowboard Turbot PCI UART

Greetings,

You'll need to make sure that the pin muxing for the uarts on the LSE are set properly in the UEFI setings, and you'll need to make sure you use a recent kernel with the uart driver enabled... there are two UARTS on the LSE to choose from, so make sure understand which one you plan to use and make that one is enabled...

Dave


-----Original Message-----
From: elinux-MinnowBoard [mailto:elinux-minnowboard-bounces at lists.elinux.org] On Behalf Of Sullivan, California L
Sent: Wednesday, May 4, 2016 3:28 PM
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org>
Subject: Re: [MinnowBoard] Minnowboard Turbot PCI UART

Hi there.

I haven't used the HSUARTs, so I can't help much there, but I know ttyS0 probably won't work for what you're trying to do. That's the debug UART (6 pin connector next to the SATA connector) and is limited to a 115200 baud.

I believe ttyS2 is the HSUART connected to pins 6/8/10/12 on the LSE, but again I haven't used it so I can't be too much help.

---
Cal

On 05/04/2016 12:32 PM, the_drethon_tolar wrote:
Hi, I'm new here so let me know if I do anything wrong.

I'm trying to use a Minnowboard Turbot for controlling a Bluetooth module via UART.  We are trying to use the PCI UART1 but we aren't seeing the TX pins send any data.

I've tried various settings in the BIOS to enable the serial port.  Regardless, on startup Linux always just shows ttyS0 as an enabled serial port.  Using minicom or just echoing to /dev/ttyS0 does not TX any data (we have an oscope on pin 6).

lspci shows an HSUART controller with no I/O memory and so far I haven't found a way to enable this device, if that is what I should do.

Can someone point me in the right direction, or drag me back to the path?

Thanks!

_______________________________________________
elinux-MinnowBoard mailing list
elinux-MinnowBoard at lists.elinux.org
http://lists.elinux.org/mailman/listinfo/elinux-minnowboard
_______________________________________________
elinux-MinnowBoard mailing list
elinux-MinnowBoard at lists.elinux.org
http://lists.elinux.org/mailman/listinfo/elinux-minnowboard
_______________________________________________
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/20160505/af07db29/attachment.html>


More information about the elinux-MinnowBoard mailing list