All of lore.kernel.org
 help / color / mirror / Atom feed
From: Russell King - ARM Linux <linux@armlinux.org.uk>
To: Robert Jarzmik <robert.jarzmik@free.fr>
Cc: Alexandre Courbot <gnurou@gmail.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	linux-pcmcia@lists.infradead.org,
	Haojian Zhuang <haojian.zhuang@gmail.com>,
	linux-gpio@vger.kernel.org,
	Kristoffer Ericson <kristoffer.ericson@gmail.com>,
	linux-arm-kernel@lists.infradead.org,
	Daniel Mack <daniel@zonque.org>
Subject: Re: [PATCH 05/33] gpio: add generic single-register fixed-direction GPIO driver
Date: Fri, 2 Sep 2016 19:56:41 +0100	[thread overview]
Message-ID: <20160902185641.GF1041@n2100.armlinux.org.uk> (raw)
In-Reply-To: <87inuekx78.fsf@belgarion.home>

On Fri, Sep 02, 2016 at 07:50:35PM +0200, Robert Jarzmik wrote:
> Russell King - ARM Linux <linux@armlinux.org.uk> writes:
> >> Moreover, I have a bit of homework as I also see :
> >>  - no SA1111 interrupts at all, especially nothing when I insert/remove my
> >>    CompactFlash card
> >>    This might be an effect of pxa_cplds_irqs.c I created, I must have a look.
> >
> > Do you get other SA1111 interrupts (eg, the PS/2 interrupts) delivered?
> I see no other interrupts at all.
> Actually I see no interrupt claimed in /proc/interrupts, where I would have
> expected interrupt 305.
> 	cat /proc/interrupts
> 	           CPU0       
> 	 24:       1419        SC   8 Edge      gpio-0
> 	 25:          0        SC   9 Edge      gpio-1
> 	 26:          0        SC  10 Edge      gpio-mux
> 	 38:        118        SC  22 Edge      UART1
> 	 41:          0        SC  25 Edge      DMA
> 	 42:      40224        SC  26 Edge      ost0
> 	112:       1419      GPIO   0 Edge      pxa_cplds_irqs
> 	307:       1419  pxa_cplds   3 Edge      eth0
> 	387:          0  SA1111-h Edge      SA1111 PCMCIA card detect
> 	388:          0  SA1111-h Edge      SA1111 CF card detect
> 	389:          0  SA1111-h Edge      SA1111 PCMCIA BVD1
> 	390:          0  SA1111-h Edge      SA1111 CF BVD1
> 	Err:          0
> 
> Actually this leads me to think that this interrupt 305 is not "requested" nor
> activated. I see in sa1111.c:506 :
>   "irq_set_chained_handler_and_data(sachip->irq, sa1111_irq_handler, ..."
> This puts in the handler and data, but I don't this is "enables" the interrupt,
> right ?

It should enable the interrupt - the end of that does:

        if (handle != handle_bad_irq && is_chained) {
                irq_settings_set_noprobe(desc);
                irq_settings_set_norequest(desc);
                irq_settings_set_nothread(desc);
                desc->action = &chained_action;
                irq_startup(desc, true);
        }

and indeed, I see that it gets enabled on Assabet.  That irq_startup()
should result in the irqchip's irq_startup, irq_enable, or irq_unmask
method being called.

So, that should result in the IRQ to which the sa1111 is connected
being unmasked.

Chained interrupts don't appear in /proc/interrupts.

> I traced the code in the interrupt controller (pxa_cplds_irqs), the SA1111
> physical line is not set (even with an AT/2 keyboard connected, and I don't
> think anybody tried this AT/2 on a lubbock for a long time).

Hmm.  Looking at pxa_cplds_irqs, that's trying to support the CPLD
interrupts using a very very old and inefficient technique.  The
whole point of the chained interrupt system is to avoid several
overheads in the system...  I'm curious why PXA moved away from that.

One of the problems is that we end up nesting irq_entry()/irq_exit()
which contains a lot of code, eg trying to run softirqs.  All that
stuff is pure overhead because we'll never get to run anything like
that in this path.

I'm also very concerned that the conversion is wrong.  The old code
has this comment in the irq_unmask function:

-       /* the irq can be acknowledged only if deasserted, so it's done here */
-       LUB_IRQ_SET_CLR &= ~(1 << lubbock_irq);

In other words, we "acknowledge" (really clear the latched status) of
the interrupt _after_ we've serviced the peripheral, not before.
The new code tries to clear down the interrupt when masking it - in
other words, before the peripheral handler has had a chance to clear
down its interrupt.

I suspect you're seeing about twice as many interrupt counts on your
ethernet interface because of this - you'll be entering the handler
once for the real interrupt, but because the clear-down was ineffective,
you end up re-entering it a second time when hopefully the peripheral
is no longer asserting the interrupt.

> The interrupt is for sure masked, and therefore the SA1111 interrupts are not
> fired. Even if they would have been enabled, the "pending interrupts register"
> doesn't show any sa1111 interrupt pending, so there is something else.

Masked where though - in the SA1111 or FPGA?

> As I don't know if "enable_irq()" in sa1111.c would be an option as I have no
> sight on sa1111.c requirements, I would take any advice here.

It shouldn't be required, as I say above, irq_set_chained_handler_and_data()
deals with unmasking the IRQ already.

> > Hmm, on Neponset with a CF card inserted, I can cat that, and it reports
> > the CIS.  Any error messages in the kernel log?
> None.
> I have an ever more suprising thing.
> I tried again this morning, without changing a single line of code (excepting in
> pxa_cplds_irqs.c) nor touching the CF card, and now it really rocks !!! :
> hexdump -C /sys/class/pcmcia_socket/pcmcia_socket1/cis
> hexdump -C /sys/class/pcmcia_socket/pcmcia_socket1/cis
> 00000000  01 04 df 79 01 ff 1c 04  02 db 01 ff 18 02 df 01  |...y............|
> 00000010  20 04 45 00 01 04 15 0b  04 01 00 43 46 43 41 52  | .E........CFCAR|
> 00000020  44 00 ff 21 02 04 01 22  02 01 01 22 03 02 0c 0f  |D..!..."..."....|
> 00000030  1a 05 01 03 00 02 0f 1b  08 c0 40 a1 01 55 08 00  |..........@..U..|
> 00000040  20 1b 06 00 01 21 b5 1e  4d 1b 0a c1 41 99 01 55  | ....!..M...A..U|
> 00000050  64 f0 ff ff 20 1b 06 01  01 21 b5 1e 4d 1b 0f c2  |d... ....!..M...|
> 00000060  41 99 01 55 ea 61 f0 01  07 f6 03 01 ee 20 1b 06  |A..U.a....... ..|
> 00000070  02 01 21 b5 1e 4d 1b 0f  c3 41 99 01 55 ea 61 70  |..!..M...A..U.ap|
> 00000080  01 07 76 03 01 ee 20 1b  06 03 01 21 b5 1e 4d 14  |..v... ....!..M.|
> 00000090  00                                                |.|
> 
> I think this proves that your patches related to lubbock pcmcia conversion to
> max1602 is fully functional !

That is good news...

> Only the interrupt part to fight a bit, and then I'll try to make a couple of
> tests on the IRDA part.

I've some patches to convert mainstone, but they're not ready yet...

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

WARNING: multiple messages have this Message-ID (diff)
From: linux@armlinux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 05/33] gpio: add generic single-register fixed-direction GPIO driver
Date: Fri, 2 Sep 2016 19:56:41 +0100	[thread overview]
Message-ID: <20160902185641.GF1041@n2100.armlinux.org.uk> (raw)
In-Reply-To: <87inuekx78.fsf@belgarion.home>

On Fri, Sep 02, 2016 at 07:50:35PM +0200, Robert Jarzmik wrote:
> Russell King - ARM Linux <linux@armlinux.org.uk> writes:
> >> Moreover, I have a bit of homework as I also see :
> >>  - no SA1111 interrupts at all, especially nothing when I insert/remove my
> >>    CompactFlash card
> >>    This might be an effect of pxa_cplds_irqs.c I created, I must have a look.
> >
> > Do you get other SA1111 interrupts (eg, the PS/2 interrupts) delivered?
> I see no other interrupts at all.
> Actually I see no interrupt claimed in /proc/interrupts, where I would have
> expected interrupt 305.
> 	cat /proc/interrupts
> 	           CPU0       
> 	 24:       1419        SC   8 Edge      gpio-0
> 	 25:          0        SC   9 Edge      gpio-1
> 	 26:          0        SC  10 Edge      gpio-mux
> 	 38:        118        SC  22 Edge      UART1
> 	 41:          0        SC  25 Edge      DMA
> 	 42:      40224        SC  26 Edge      ost0
> 	112:       1419      GPIO   0 Edge      pxa_cplds_irqs
> 	307:       1419  pxa_cplds   3 Edge      eth0
> 	387:          0  SA1111-h Edge      SA1111 PCMCIA card detect
> 	388:          0  SA1111-h Edge      SA1111 CF card detect
> 	389:          0  SA1111-h Edge      SA1111 PCMCIA BVD1
> 	390:          0  SA1111-h Edge      SA1111 CF BVD1
> 	Err:          0
> 
> Actually this leads me to think that this interrupt 305 is not "requested" nor
> activated. I see in sa1111.c:506 :
>   "irq_set_chained_handler_and_data(sachip->irq, sa1111_irq_handler, ..."
> This puts in the handler and data, but I don't this is "enables" the interrupt,
> right ?

It should enable the interrupt - the end of that does:

        if (handle != handle_bad_irq && is_chained) {
                irq_settings_set_noprobe(desc);
                irq_settings_set_norequest(desc);
                irq_settings_set_nothread(desc);
                desc->action = &chained_action;
                irq_startup(desc, true);
        }

and indeed, I see that it gets enabled on Assabet.  That irq_startup()
should result in the irqchip's irq_startup, irq_enable, or irq_unmask
method being called.

So, that should result in the IRQ to which the sa1111 is connected
being unmasked.

Chained interrupts don't appear in /proc/interrupts.

> I traced the code in the interrupt controller (pxa_cplds_irqs), the SA1111
> physical line is not set (even with an AT/2 keyboard connected, and I don't
> think anybody tried this AT/2 on a lubbock for a long time).

Hmm.  Looking at pxa_cplds_irqs, that's trying to support the CPLD
interrupts using a very very old and inefficient technique.  The
whole point of the chained interrupt system is to avoid several
overheads in the system...  I'm curious why PXA moved away from that.

One of the problems is that we end up nesting irq_entry()/irq_exit()
which contains a lot of code, eg trying to run softirqs.  All that
stuff is pure overhead because we'll never get to run anything like
that in this path.

I'm also very concerned that the conversion is wrong.  The old code
has this comment in the irq_unmask function:

-       /* the irq can be acknowledged only if deasserted, so it's done here */
-       LUB_IRQ_SET_CLR &= ~(1 << lubbock_irq);

In other words, we "acknowledge" (really clear the latched status) of
the interrupt _after_ we've serviced the peripheral, not before.
The new code tries to clear down the interrupt when masking it - in
other words, before the peripheral handler has had a chance to clear
down its interrupt.

I suspect you're seeing about twice as many interrupt counts on your
ethernet interface because of this - you'll be entering the handler
once for the real interrupt, but because the clear-down was ineffective,
you end up re-entering it a second time when hopefully the peripheral
is no longer asserting the interrupt.

> The interrupt is for sure masked, and therefore the SA1111 interrupts are not
> fired. Even if they would have been enabled, the "pending interrupts register"
> doesn't show any sa1111 interrupt pending, so there is something else.

Masked where though - in the SA1111 or FPGA?

> As I don't know if "enable_irq()" in sa1111.c would be an option as I have no
> sight on sa1111.c requirements, I would take any advice here.

It shouldn't be required, as I say above, irq_set_chained_handler_and_data()
deals with unmasking the IRQ already.

> > Hmm, on Neponset with a CF card inserted, I can cat that, and it reports
> > the CIS.  Any error messages in the kernel log?
> None.
> I have an ever more suprising thing.
> I tried again this morning, without changing a single line of code (excepting in
> pxa_cplds_irqs.c) nor touching the CF card, and now it really rocks !!! :
> hexdump -C /sys/class/pcmcia_socket/pcmcia_socket1/cis
> hexdump -C /sys/class/pcmcia_socket/pcmcia_socket1/cis
> 00000000  01 04 df 79 01 ff 1c 04  02 db 01 ff 18 02 df 01  |...y............|
> 00000010  20 04 45 00 01 04 15 0b  04 01 00 43 46 43 41 52  | .E........CFCAR|
> 00000020  44 00 ff 21 02 04 01 22  02 01 01 22 03 02 0c 0f  |D..!..."..."....|
> 00000030  1a 05 01 03 00 02 0f 1b  08 c0 40 a1 01 55 08 00  |.......... at ..U..|
> 00000040  20 1b 06 00 01 21 b5 1e  4d 1b 0a c1 41 99 01 55  | ....!..M...A..U|
> 00000050  64 f0 ff ff 20 1b 06 01  01 21 b5 1e 4d 1b 0f c2  |d... ....!..M...|
> 00000060  41 99 01 55 ea 61 f0 01  07 f6 03 01 ee 20 1b 06  |A..U.a....... ..|
> 00000070  02 01 21 b5 1e 4d 1b 0f  c3 41 99 01 55 ea 61 70  |..!..M...A..U.ap|
> 00000080  01 07 76 03 01 ee 20 1b  06 03 01 21 b5 1e 4d 14  |..v... ....!..M.|
> 00000090  00                                                |.|
> 
> I think this proves that your patches related to lubbock pcmcia conversion to
> max1602 is fully functional !

That is good news...

> Only the interrupt part to fight a bit, and then I'll try to make a couple of
> tests on the IRDA part.

I've some patches to convert mainstone, but they're not ready yet...

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

  reply	other threads:[~2016-09-02 18:56 UTC|newest]

Thread overview: 235+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-29 10:02 [PATCH 0/3] SA11x0/PXA pcmcia fixes Russell King - ARM Linux
2016-08-29 10:03 ` [PATCH 1/3] pcmcia: sa11xx_base: fix reporting of timing information Russell King
2016-08-29 10:03 ` [PATCH 2/3] pcmcia: sa11xx_base: add units to the " Russell King
2016-08-29 10:03 ` [PATCH 3/3] pcmcia: soc_common: fix SS_STSCHG polarity Russell King
2016-08-29 10:23 ` [RFC PATCH 00/33] SA11x0/PXA GPIO rework (Core + PCMCIA only) Russell King - ARM Linux
2016-08-29 10:23   ` Russell King - ARM Linux
2016-08-29 10:24   ` [PATCH 01/33] gpio: sa1100: fix irq probing for ucb1x00 Russell King
2016-08-29 10:24     ` Russell King
2016-09-07 22:25     ` Linus Walleij
2016-09-07 22:25       ` Linus Walleij
2016-08-29 10:24   ` [PATCH 02/33] gpio: sa1100: use sa11x0_gpio_set_wake() Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 03/33] gpio: sa1100: convert to use IO accessors Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 04/33] gpio: sa1100: implement get_direction method Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 05/33] gpio: add generic single-register fixed-direction GPIO driver Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 19:39     ` Robert Jarzmik
2016-08-29 19:39       ` Robert Jarzmik
2016-08-29 23:12       ` Russell King - ARM Linux
2016-08-29 23:12         ` Russell King - ARM Linux
2016-08-30  6:08         ` Alexander Shiyan
2016-08-30  6:08           ` Alexander Shiyan
2016-08-30  7:41           ` Russell King - ARM Linux
2016-08-30  7:41             ` Russell King - ARM Linux
2016-08-30  9:18       ` Russell King - ARM Linux
2016-08-30  9:18         ` Russell King - ARM Linux
2016-08-30 16:42         ` Robert Jarzmik
2016-08-30 16:42           ` Robert Jarzmik
2016-08-30 18:46           ` Russell King - ARM Linux
2016-08-30 18:46             ` Russell King - ARM Linux
2016-08-30 21:32             ` Robert Jarzmik
2016-08-30 21:32               ` Robert Jarzmik
2016-08-31  8:49               ` Russell King - ARM Linux
2016-08-31  8:49                 ` Russell King - ARM Linux
2016-08-31 10:27                 ` Russell King - ARM Linux
2016-08-31 10:27                   ` Russell King - ARM Linux
2016-09-01  7:19                   ` Robert Jarzmik
2016-09-01  7:19                     ` Robert Jarzmik
2016-09-01  9:27                     ` Russell King - ARM Linux
2016-09-01  9:27                       ` Russell King - ARM Linux
2016-09-01 21:58                       ` Robert Jarzmik
2016-09-01 21:58                         ` Robert Jarzmik
2016-09-01 23:02                         ` Russell King - ARM Linux
2016-09-01 23:02                           ` Russell King - ARM Linux
2016-09-02 17:50                           ` Robert Jarzmik
2016-09-02 17:50                             ` Robert Jarzmik
2016-09-02 18:56                             ` Russell King - ARM Linux [this message]
2016-09-02 18:56                               ` Russell King - ARM Linux
2016-09-02 21:21                               ` Robert Jarzmik
2016-09-02 21:21                                 ` Robert Jarzmik
2016-09-02 23:34                                 ` Russell King - ARM Linux
2016-09-02 23:34                                   ` Russell King - ARM Linux
2016-09-03  9:15                                 ` Russell King - ARM Linux
2016-09-03  9:15                                   ` Russell King - ARM Linux
2016-09-03  9:09                     ` Russell King - ARM Linux
2016-09-03  9:09                       ` Russell King - ARM Linux
2016-09-03 10:25                 ` Russell King - ARM Linux
2016-09-03 10:25                   ` Russell King - ARM Linux
2016-09-03 11:31                   ` Robert Jarzmik
2016-09-03 11:31                     ` Robert Jarzmik
2016-09-04 19:04                   ` Robert Jarzmik
2016-09-04 19:04                     ` Robert Jarzmik
2016-09-04 20:18                     ` Russell King - ARM Linux
2016-09-04 20:18                       ` Russell King - ARM Linux
2016-09-05  9:06                 ` Linus Walleij
2016-09-05  9:06                   ` Linus Walleij
2016-09-05 12:26                   ` Russell King - ARM Linux
2016-09-05 12:26                     ` Russell King - ARM Linux
2016-09-08 13:21                     ` Linus Walleij
2016-09-08 13:21                       ` Linus Walleij
2016-09-14  8:50                       ` Linus Walleij
2016-09-14  8:50                         ` Linus Walleij
2016-08-30 21:25     ` Linus Walleij
2016-08-30 21:25       ` Linus Walleij
2016-08-30 21:42       ` Russell King - ARM Linux
2016-08-30 21:42         ` Russell King - ARM Linux
2016-08-30 21:47         ` Linus Walleij
2016-08-30 21:47           ` Linus Walleij
2016-09-02 17:00           ` Russell King - ARM Linux
2016-09-02 17:00             ` Russell King - ARM Linux
2016-09-04 20:53             ` Linus Walleij
2016-09-04 20:53               ` Linus Walleij
2016-08-29 10:24   ` [PATCH 06/33] ARM: pxa/lubbock: add GPIO driver for LUB_MISC_WR register Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 19:57     ` Robert Jarzmik
2016-08-29 19:57       ` Robert Jarzmik
2016-08-29 22:58       ` Russell King - ARM Linux
2016-08-29 22:58         ` Russell King - ARM Linux
2016-08-29 10:24   ` [PATCH 07/33] ARM: sa1100/assabet: add BCR/BSR GPIO driver Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 08/33] ARM: sa1100/neponset: add GPIO drivers for control and modem registers Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 09/33] ARM: sa1111: implement a gpio_chip for SA1111 GPIOs Russell King
2016-08-29 10:24     ` Russell King
2016-08-29 10:24   ` [PATCH 10/33] pcmcia: soc_common: switch to using gpio_descs Russell King
2016-08-29 10:24     ` Russell King
2016-09-14 11:29     ` Linus Walleij
2016-09-14 11:29       ` Linus Walleij
2016-09-14 12:10       ` Russell King - ARM Linux
2016-09-14 12:10         ` Russell King - ARM Linux
2016-08-29 10:25   ` [PATCH 11/33] pcmcia: soc_common: request legacy detect GPIO with active low Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 12/33] pcmcia: soc_common: add support for reset and bus enable GPIOs Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 13/33] pcmcia: soc_common: restore previous socket state on error Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 14/33] pcmcia: soc_common: add CF socket state helper Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 15/33] pcmcia: soc_common: add support for Vcc and Vpp regulators Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 16/33] pcmcia: soc_common: switch to a per-socket cpufreq notifier Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 17/33] pcmcia: soc_common: constify pcmcia_low_level ops pointer Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 18/33] pcmcia: sa1100: provide generic CF support Russell King
2016-08-29 10:25     ` Russell King
2016-09-14  8:52     ` Linus Walleij
2016-09-14  8:52       ` Linus Walleij
2016-09-14  9:06       ` Russell King - ARM Linux
2016-09-14  9:06         ` Russell King - ARM Linux
2016-09-14 11:13         ` Linus Walleij
2016-09-14 11:13           ` Linus Walleij
2016-08-29 10:25   ` [PATCH 19/33] pcmcia: sa1111: add driver-data pointer Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 20/33] pcmcia: add MAX1600 driver Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 21/33] ARM: sa1100: provide infrastructure to support generic CF sockets Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:25   ` [PATCH 22/33] ARM: sa1100/assabet: convert to " Russell King
2016-08-29 10:25     ` Russell King
2016-08-29 10:26   ` [PATCH 23/33] ARM: sa1100/cerf: " Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 24/33] ARM: sa1100/h3xxx: switch h3xxx PCMCIA to use gpiod APIs Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 25/33] ARM: sa1100/nanoengine: convert to generic CF sockets Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 26/33] ARM: sa1100/shannon: switch shannon PCMCIA to use gpiod APIs Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 27/33] ARM: sa1100/simpad: switch simpad CF " Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 28/33] ARM: sa1100/neponset: add GPIOs for PCMCIA Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 29/33] pcmcia: sa1111/neponset: convert to use MAX1600 power driver Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 30/33] ARM: sa1100/jornada720: switch jornada720 PCMCIA to gpiod APIs Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 31/33] ARM: pxa/lubbock: convert PCMCIA to use MAX1600 driver Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 32/33] pcmcia: sa1100*: remove redundant bvd1/bvd2 setting Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 10:26   ` [PATCH 33/33] ARM: sa1111: remove legacy GPIO interfaces Russell King
2016-08-29 10:26     ` Russell King
2016-08-29 11:01   ` [PATCH 0/3] SA11x0 gpio keys/leds Russell King - ARM Linux
2016-08-29 11:03     ` [PATCH 1/3] ARM: sa1100/assabet: add gpio keys support for right-hand two buttons Russell King
2016-08-29 11:03     ` [PATCH 2/3] ARM: sa1100/assabet: switch to using gpio leds Russell King
2016-08-29 11:03     ` [PATCH 3/3] ARM: sa1100/cerf: switch to using gpio_led_register_device() Russell King
2016-08-29 11:25     ` [PATCH 0/8] SA11x0 DMA engine/IrDA updates Russell King - ARM Linux
2016-08-29 11:25       ` Russell King - ARM Linux
2016-08-29 11:26       ` [PATCH 1/8] dmaengine: sa11x0: add DMA filters Russell King
2016-08-29 11:26         ` Russell King
2016-08-30 15:57         ` Vinod Koul
2016-08-30 15:57           ` Vinod Koul
2016-08-29 11:26       ` [PATCH 2/8] net: irda/sa1100_ir: convert to dma_request_slave_channel() Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 11:26       ` [PATCH 3/8] net: irda/sa1100_ir: add gpiod APIs for controlling IrDA transceiver Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 11:26       ` [PATCH 4/8] dmaengine: sa11x0: unexport sa11x0_dma_filter_fn and clean up Russell King
2016-08-29 11:26         ` Russell King
2016-08-30 15:58         ` Vinod Koul
2016-08-30 15:58           ` Vinod Koul
2016-08-29 11:26       ` [PATCH 5/8] ARM: sa1100/assabet: switch assabet IrDA to use gpiod APIs Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 11:26       ` [PATCH 6/8] ARM: sa1100/collie: switch collie " Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 11:26       ` [PATCH 7/8] ARM: sa1100/h3xxx: switch h3xxx " Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 11:26       ` [PATCH 8/8] net: irda/sa1100_ir: remove sa11x0 irda platform data Russell King
2016-08-29 11:26         ` Russell King
2016-08-29 12:05       ` [PATCH 0/6] SA11x0 serial updates Russell King - ARM Linux
2016-08-29 12:05         ` Russell King - ARM Linux
2016-08-29 12:05         ` [PATCH 1/6] serial: sa1100: add support for mctrl gpios Russell King
2016-08-29 12:05           ` Russell King
2016-08-31 13:25           ` Greg Kroah-Hartman
2016-08-31 13:25             ` Greg Kroah-Hartman
2016-08-29 12:05         ` [PATCH 2/6] ARM: sa1100/assabet: convert serial to gpiod APIs Russell King
2016-08-29 12:05           ` Russell King
2016-08-29 12:06         ` [PATCH 3/6] ARM: sa1100/h3xxx: " Russell King
2016-08-29 12:06           ` Russell King
2016-08-29 12:06         ` [PATCH 4/6] ARM: sa1100/badge4: remove commented out modem control initialisers Russell King
2016-08-29 12:06           ` Russell King
2016-08-29 12:06         ` [PATCH 5/6] ARM: sa1100/hackkit: remove empty serial mctrl functions Russell King
2016-08-29 12:06           ` Russell King
2016-08-29 12:06         ` [PATCH 6/6] ARM: sa1100/neponset: convert serial to use gpiod APIs Russell King
2016-08-29 12:06           ` Russell King
2016-08-30 10:51           ` [PATCH 0/4] SA11x0 Clocks and removal of Neponset SMC91x hack Russell King - ARM Linux
2016-08-30 10:51             ` Russell King - ARM Linux
2016-08-30 10:52             ` [PATCH 1/4] ARM: sa1100: convert to common clock framework Russell King
2016-08-30 10:52               ` Russell King
2016-08-30 10:52             ` [PATCH 2/4] net: smc91x: add external clock support Russell King
2016-08-30 10:52               ` Russell King
2016-08-30 10:52             ` [PATCH 3/4] ARM: sa1100/neponset: add ethernet oscillator Russell King
2016-08-30 10:52               ` Russell King
2016-08-30 10:52             ` [PATCH 4/4] net: smc91x: remove neponset specific oscillator hack Russell King
2016-08-30 10:52               ` Russell King
2016-08-30 10:59             ` [PATCH 0/8] SA11x0/PXA remainder & cleanups Russell King - ARM Linux
2016-08-30 11:00               ` [PATCH 1/8] mfd: ucb1x00: allow IRQ probing to work with IRQs > 32 Russell King
2016-08-30 12:00                 ` Lee Jones
2016-08-30 11:00               ` [PATCH 2/8] ARM: pxa/lubbock: remove lubbock_set_misc_wr() from global view Russell King
2016-08-30 11:00               ` [PATCH 3/8] ARM: sa1100/cerf: remove redundant definitions Russell King
2016-08-30 11:00               ` [PATCH 4/8] ARM: sa1100/cerf: move cerf header file Russell King
2016-08-30 11:00               ` [PATCH 5/8] ARM: sa1100/nanoengine: remove redundant definitions Russell King
2016-08-30 11:00               ` [PATCH 6/8] ARM: sa1100/nanoengine: move nanoengine header file Russell King
2016-08-30 11:00               ` [PATCH 7/8] ARM: sa1100/neponset: remove neponset_ncr_* GPIO interfaces and header Russell King
2016-08-30 11:01               ` [PATCH 8/8] ARM: sa1100: remove SA-1101 header file Russell King
2016-08-30 15:31             ` [PATCH 0/4] SA11x0 Clocks and removal of Neponset SMC91x hack Nicolas Pitre
2016-08-30 15:31               ` Nicolas Pitre
2016-09-01 23:32             ` David Miller
2016-09-01 23:32               ` David Miller
2016-09-02 18:59               ` Russell King - ARM Linux
2016-09-02 18:59                 ` Russell King - ARM Linux
2016-09-05  9:09         ` [PATCH 0/6] SA11x0 serial updates Linus Walleij
2016-09-05  9:09           ` Linus Walleij
2016-09-05 12:28           ` Russell King - ARM Linux
2016-09-05 12:28             ` Russell King - ARM Linux
2016-09-07 22:28             ` Linus Walleij
2016-09-07 22:28               ` Linus Walleij
2016-09-08 13:23             ` Linus Walleij
2016-09-08 13:23               ` Linus Walleij
2016-08-30 21:31   ` [RFC PATCH 00/33] SA11x0/PXA GPIO rework (Core + PCMCIA only) Linus Walleij
2016-08-30 21:31     ` Linus Walleij
2016-09-01 15:34     ` Russell King - ARM Linux
2016-09-01 15:34       ` Russell King - ARM Linux
2016-09-06 14:46 ` [PATCH 0/3] SA11x0/PXA pcmcia fixes Russell King - ARM Linux

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160902185641.GF1041@n2100.armlinux.org.uk \
    --to=linux@armlinux.org.uk \
    --cc=daniel@zonque.org \
    --cc=gnurou@gmail.com \
    --cc=haojian.zhuang@gmail.com \
    --cc=kristoffer.ericson@gmail.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-pcmcia@lists.infradead.org \
    --cc=robert.jarzmik@free.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.