[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170131000914.GA11331@bhelgaas-glaptop.roam.corp.google.com>
Date: Mon, 30 Jan 2017 18:09:14 -0600
From: Bjorn Helgaas <helgaas@...nel.org>
To: "zhichang.yuan" <yuanzhichang@...ilicon.com>
Cc: catalin.marinas@....com, will.deacon@....com, robh+dt@...nel.org,
frowand.list@...il.com, bhelgaas@...gle.com, rafael@...nel.org,
mark.rutland@....com, brian.starkey@....com, olof@...om.net,
arnd@...db.de, linux-arm-kernel@...ts.infradead.org,
lorenzo.pieralisi@....com, benh@...nel.crashing.org,
linux-kernel@...r.kernel.org, linuxarm@...wei.com,
devicetree@...r.kernel.org, linux-pci@...r.kernel.org,
linux-serial@...r.kernel.org, minyard@....org, liviu.dudau@....com,
zourongrong@...il.com, john.garry@...wei.com,
gabriele.paoloni@...wei.com, zhichang.yuan02@...il.com,
kantyzc@....com, xuwei5@...ilicon.com
Subject: Re: [PATCH V6 1/5] LIB: Indirect ISA/LPC port IO introduced
On Tue, Jan 24, 2017 at 03:05:21PM +0800, zhichang.yuan wrote:
> Low-pin-count interface is integrated into some SoCs. The accesses to those
> peripherals under LPC make use of I/O ports rather than the memory mapped I/O.
>
> To drive these devices, this patch introduces a method named indirect-IO.
It's slightly confusing to call this "indirect I/O" and then use
"extio" for the filename and function prefix. It'd be nice to use
related names.
> +struct extio_node {
> + unsigned long bus_start; /* bus start address */
> + unsigned long io_start; /* io port token corresponding to bus_start */
> + size_t range_size; /* size of the extio node operating range */
> + struct fwnode_handle *fwnode;
> + struct list_head list;
> + struct extio_ops *ops; /* ops operating on this node */
> + void *devpara; /* private parameter of the host device */
> +};
I wish we didn't have both struct io_range and struct extio_node. It
seems like they're both sort of trying to do the same thing. Maybe
this is the same as what Alex is saying.
Bjorn
Powered by blists - more mailing lists