Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1664932

RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices before scanning

From Gabriele Paoloni <gabriele.paoloni@huawei.com>
Newsgroups linux.kernel
Subject RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices before scanning
Date 2017-06-13 16:50 +0200
Message-ID <tRViN-Jw-3@gated-at.bofh.it> (permalink)
References (2 earlier) <tMPnI-7TL-15@gated-at.bofh.it> <tN934-3sV-1@gated-at.bofh.it> <tPivf-6qB-5@gated-at.bofh.it> <tRA4J-4ju-73@gated-at.bofh.it> <tRPQ6-5MF-17@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Mika

> -----Original Message-----
> From: Mika Westerberg [mailto:mika.westerberg@linux.intel.com]
> Sent: 13 June 2017 09:49
> To: Lorenzo Pieralisi
> Cc: Gabriele Paoloni; rafael@kernel.org; Rafael J. Wysocki;
> catalin.marinas@arm.com; will.deacon@arm.com; robh+dt@kernel.org;
> frowand.list@gmail.com; bhelgaas@google.com; arnd@arndb.de; linux-arm-
> kernel@lists.infradead.org; mark.rutland@arm.com;
> brian.starkey@arm.com; olof@lixom.net; benh@kernel.crashing.org; linux-
> kernel@vger.kernel.org; linux-acpi@vger.kernel.org; Linuxarm; linux-
> pci@vger.kernel.org; minyard@acm.org; John Garry; xuwei (O)
> Subject: Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO
> devices before scanning
> 
> On Mon, Jun 12, 2017 at 04:57:00PM +0100, Lorenzo Pieralisi wrote:
> > I had a more in-depth look at this series and from my understanding
> > the problem are the following to manage the LPC bindings in ACPI.
> >
> > (1) Child devices of an LPC controller require special handling when
> >     filling their resources (ie they need to be translated - in DT
> >     that's guaranteed by the "isa" binding, in ACPI it has to be
> >     done by new code)
> > (2) In DT systems, LPC child devices are created by the LPC bus
> >     controller driver through an of_platform_populate() call with
> >     the LPC controller node as the fwnode root. For ACPI to work
> >     the same way there must be a way to prevent LPC children to
> >     be enumerated in acpi_default_enumeration() something like
> >     I2C does (and then the LPC driver would enumerate its children as
> >     DT does)
> >
> > I am not sure how (1) and (2) can be managed with current ACPI
> bindings
> > and kernel code - I suspect it may be done by mirroring what's done
> > for I2C but I am not sure, that's why I CC'ed Mika (ie the LPC
> adapter
> > is matched as a platform device and it takes care of enumerating its
> > children - problem though is preventing enumeration from core ACPI
> code).
> 
> Is there an example ASL showing how these LPC devices are
> currently presented in ACPI?

Please find below the asl sketch for our LPC and IPMI

//
// LPC
//

Scope(_SB) {
  Device (LPC0) {
    Name (_HID, "HISI0191")  // HiSi LPC
    Name (_CRS, ResourceTemplate () {
      Memory32Fixed (ReadWrite, 0xa01b0000, 0x1000)
    })
  }

  Device (LPC0.IPMI) {
    Name (_HID, "IPI0001")
    Method (_IFT) {
      Return (0x03)
    }
    Name (LORS, ResourceTemplate() {
      QWordIO (
        ResourceConsumer,
	MinNotFixed,     // _MIF
	MaxNotFixed,     // _MAF
	PosDecode,
	EntireRange,
	0x0,             // _GRA
	0xe4,            // _MIN
	0x3fff,          // _MAX
	0x0,             // _TRA
	0x04,            // _LEN
	, ,
	BTIO
      )
    })
    CreateQWordField (LORS, BTIO._MIN, CMIN)
    CreateQWordField (LORS, BTIO._MAX, CMAX)
    CreateQWordField (LORS, BTIO._LEN, CLEN)

    Method (_PRS, 0) {
      Return (LORS)
    }

    Method (_CRS, 0) {
      Return (LORS)
    }
    Method (_SRS, 1) {
      CreateQWordField (Arg0, \_SB.LPC0.IPMI.BTIO._MIN, IMIN)
      Store (IMIN, CMIN)
      CreateQWordField (Arg0, \_SB.LPC0.IPMI.BTIO._MAX, IMAX)
      Store (IMAX, CMAX)
    }
  } 
[...]
}

Many thanks
Gab

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> - 2017-06-12 18:10 +0200
  RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-13 09:30 +0200
  Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-13 11:00 +0200
    RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-13 16:50 +0200
      Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-13 17:20 +0200
        RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-13 21:10 +0200
          Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-13 22:10 +0200
            RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-15 20:10 +0200
              Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-16 10:40 +0200
                Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning "Rafael J. Wysocki" <rafael@kernel.org> - 2017-06-16 13:30 +0200
                Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-16 14:10 +0200
                Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning "Rafael J. Wysocki" <rafael@kernel.org> - 2017-06-16 14:30 +0200
                RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-19 12:00 +0200
                RE: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO  devices before scanning Gabriele Paoloni <gabriele.paoloni@huawei.com> - 2017-06-19 12:10 +0200
                Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices  before scanning Mika Westerberg <mika.westerberg@linux.intel.com> - 2017-06-19 12:10 +0200

csiph-web