[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <9e957f11-eafd-4116-9fc6-c0b397be5ce4@app.fastmail.com>
Date: Tue, 23 Jul 2024 09:58:04 +0000
From: "Arnd Bergmann" <arnd@...db.de>
To: "Yann Sionneau" <ysionneau@...rayinc.com>, linux-kernel@...r.kernel.org
Cc: "Jonathan Borne" <jborne@...rayinc.com>,
"Julian Vetter" <jvetter@...rayinc.com>,
"Clement Leger" <clement@...ment-leger.fr>,
"Guillaume Thouvenin" <thouveng@...il.com>,
"Julien Villette" <julien.villette@...il.com>
Subject: Re: [RFC PATCH v3 28/37] kvx: Add misc common routines
On Mon, Jul 22, 2024, at 09:41, ysionneau@...rayinc.com wrote:
> +#define memset_io(c, v, l) __memset_io((c), (v), (l))
> +#define memcpy_fromio(a, c, l) __memcpy_fromio((a), (c), (l))
> +#define memcpy_toio(c, a, l) __memcpy_toio((c), (a), (l))
> +
> +#include <asm-generic/io.h>
You generally want to define __raw_{read,write}{b,w,l,q}
functions using inline asm here in order to guarantee
that they are done with atomic load/store instructions of
the correct size.
Does the PCI controller support IORESOURCE_IO accesses?
It looks like you get the default PCI_IOBASE, which turns
into a NULL pointer and is not a good idea for accessing
fixed port numbers. This should hopefully get resolved
soon once turning off CONFIG_HAS_IOPORT means you don't
need to define inb()/outb() or special ioread()/iowrite()
functions at all.
Arnd
Powered by blists - more mailing lists