lkml.org 
[lkml]   [2018]   [Feb]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v14 0/9] LPC: legacy ISA I/O support
From
Date
On 20/02/2018 14:54, Andy Shevchenko wrote:
> On Mon, Feb 19, 2018 at 7:48 PM, John Garry <john.garry@huawei.com> wrote:
>> > This patchset supports the IPMI-bt device attached to the Low-Pin-Count
>> > interface implemented on Hisilicon Hip06/Hip07 SoC.
>> > -----------
>> > | LPC host|
>> > | |
>> > -----------
>> > |
>> > _____________V_______________LPC
>> > | |
>> > V V
>> > ------------
>> > | BT(ipmi)|
>> > ------------
>> >
>> > When master accesses those peripherals beneath the Hip06/Hip07 LPC, a specific
>> > LPC driver is needed to make LPC host generate the standard LPC I/O cycles with
>> > the target peripherals'I/O port addresses. But on curent arm64 world, there is
>> > no real I/O accesses. All the I/O operations through in/out accessors are based
>> > on MMIO ranges; on Hip06/Hip07 LPC the I/O accesses are performed through driver
>> > specific accessors rather than MMIO.
>> > To solve this issue and keep the relevant existing peripherals' drivers untouched,
>> > this patchset:
>> > - introduces a generic I/O space management framework, logical PIO, to support
>> > I/O operations on host controllers operating either on MMIO buses or on buses
>> > requiring specific driver I/O accessors;
>> > - redefines the in/out accessors to provide a unified interface for both MMIO
>> > and driver specific I/O operations. Using logical PIO, th call of in/out() from
>> > the host children drivers, such as ipmi-si, will be redirected to the
>> > corresponding device-specific I/O hooks to perform the I/O accesses.
>> >
>> > Based on this patch-set, all the I/O accesses to Hip06/Hip07 LPC peripherals can
>> > be supported without any changes on the existing ipmi-si driver.
>> >
>> > The whole patchset has been tested on Hip07 D05 board both using DTB and ACPI.
>> >
>> > Differences to v13:
>> > - dropped ACPI scan handler and added patch to not enumerate children
>> > of indirect IO hosts in ACPI code
>> > - tidied up logic_pio.c a bit for kerneldoc and made some APIs clearer
>> > to understand
>> > - tided (and simplified) hisi_lpc.c and added new ACPI probe code
>> > (same as previous ACPI scan handler code, so comments from Rafael
>> > and Andy included)
>> > - reinstated PCI range upper limit check in pci_pio_to_address()
>> > - dropped Dann Frazier's "tested-by" tag in light of changes
>> > - rebase to linuxnext 20180219 (had to fix locally arm64 build issue)
>> >
> Some minor comments per patches, otherwise FWIW
>
> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
>

Thanks, the comments in the other 2 patches I did not reply to are ok.

John

\
 
 \ /
  Last update: 2018-02-20 16:42    [W:0.111 / U:0.196 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site