Re: [PATCH v2] gpio: tqmx86: Add GPIO from for this IO controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Andrew,

(Cc Julia C for the RT spinlock question.)

thanks for the updated v2 patch! It's almost perfect. But I ran into some
snags.

Overall it is pretty much an MMIO driver, just that it uses ioread()/iowrite()
and we really need to get around to fixing up the gpio-mmio.c to
support x86 style io with some flag. But it is a bit much to ask for
a simple driver (I might send or ask for patches later to convert it.)

On Sat, Jan 12, 2019 at 12:49 AM Andrew Lunn <andrew@xxxxxxx> wrote:

> Some TQ-Systems ComExpress modules contain an IO controller with 8
> GPIO lines.
>
> Signed-off-by: Andrew Lunn <andrew@xxxxxxx>
> ---
> v2

> diff --git a/drivers/gpio/gpio-tqmx86.c b/drivers/gpio/gpio-tqmx86.c
> new file mode 100644
> index 000000000000..f626b716f30c
> --- /dev/null
> +++ b/drivers/gpio/gpio-tqmx86.c

Strangely this does not apply in my tree!

$ git am --signoff lunn1.patch
Applying: gpio: tqmx86: Add GPIO from for this IO controller
error: new file drivers/gpio/gpio-tqmx86.c depends on old contents
Patch failed at 0001 gpio: tqmx86: Add GPIO from for this IO controller

I don't know if the problem is on my side :/

I guess I can figure it out if it fails again.

> +struct tqmx86_gpio_data {
> +       struct gpio_chip        chip;
> +       struct irq_chip         irq_chip;
> +       void __iomem            *io_base;
> +       int                     irq;
> +       spinlock_t              spinlock;

I am not an expert in RT but I think this needs to be a
raw_spinlock_t (and use raw accessors) to work with realtime.

But maybe that just apply to chained IRQ handlers?

Julia do you have a definitive answer to this?

Yours,
Linus Walleij



[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux