From: dmitry.torokhov@gmail.com (Dmitry Torokhov)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/6 v2] input: Add support for VIA VT8500 and compatibles in i8042
Date: Fri, 12 Nov 2010 15:30:13 -0800 [thread overview]
Message-ID: <20101112233013.GA30946@core.coreip.homeip.net> (raw)
In-Reply-To: <AANLkTi=zvGxpukjAv-XFAMLpKYiqqKD=p9S5FtGowdDu@mail.gmail.com>
On Sat, Nov 13, 2010 at 01:54:14AM +0300, Alexey Charkov wrote:
> 2010/11/7 Alexey Charkov <alchark@gmail.com>:
> > VIA and WonderMedia Systems-on-Chip feature a standard i8042-compatible
> > keyboard and mouse controller. This adds necessary glue to enable use
> > of the standard driver with these systems.
> >
> > Signed-off-by: Alexey Charkov <alchark@gmail.com>
> > ---
> >
> > Please review and (if appropriate) commit to a relevant git tree for
> > further integration in 2.6.38.
> >
> > Previous version of this code was 'Acked-by: Dmitry Torokhov <dtor@mail.ru>'
> > This one only differs by using runtime-selected IRQ definitions instead
> > of static compile-time preprocessor macros.
> >
> > Relevant register and interrupt definitions are provided by PATCH 1/6 in
> > this series, so one would need that to make use of this code.
> >
> > ?drivers/input/serio/Kconfig ? ? ? ?| ? ?3 +-
> > ?drivers/input/serio/i8042-vt8500.h | ? 74 ++++++++++++++++++++++++++++++++++++
> > ?drivers/input/serio/i8042.h ? ? ? ?| ? ?2 +
> > ?3 files changed, 78 insertions(+), 1 deletions(-)
> > ?create mode 100644 drivers/input/serio/i8042-vt8500.h
> >
> > diff --git a/drivers/input/serio/Kconfig b/drivers/input/serio/Kconfig
> > index 6256233..ff799f3 100644
> > --- a/drivers/input/serio/Kconfig
> > +++ b/drivers/input/serio/Kconfig
> > @@ -21,7 +21,8 @@ if SERIO
> > ?config SERIO_I8042
> > ? ? ? ?tristate "i8042 PC Keyboard controller" if EMBEDDED || !X86
> > ? ? ? ?default y
> > - ? ? ? depends on !PARISC && (!ARM || ARCH_SHARK || FOOTBRIDGE_HOST) && \
> > + ? ? ? depends on !PARISC && \
> > + ? ? ? ? ? ? ? ? (!ARM || ARCH_SHARK || ARCH_VT8500 || FOOTBRIDGE_HOST) && \
> > ? ? ? ? ? ? ? ? ? (!SUPERH || SH_CAYMAN) && !M68K && !BLACKFIN
> > ? ? ? ?help
> > ? ? ? ? ?i8042 is the chip over which the standard AT keyboard and PS/2
> > diff --git a/drivers/input/serio/i8042-vt8500.h b/drivers/input/serio/i8042-vt8500.h
> > new file mode 100644
> > index 0000000..4ff9e1c
> > --- /dev/null
> > +++ b/drivers/input/serio/i8042-vt8500.h
> > @@ -0,0 +1,74 @@
> > +#ifndef _I8042_VT8500_H
> > +#define _I8042_VT8500_H
> > +
> > +#include <mach/mmio_regs.h>
> > +#include <mach/irq_defs.h>
> > +
> > +/*
> > + * This program is free software; you can redistribute it and/or modify it
> > + * under the terms of the GNU General Public License version 2 as published by
> > + * the Free Software Foundation.
> > + */
> > +
> > +static void __iomem *regbase;
> > +
> > +/*
> > + * Names.
> > + */
> > +
> > +#define I8042_KBD_PHYS_DESC "vt8500ps2/serio0"
> > +#define I8042_AUX_PHYS_DESC "vt8500ps2/serio1"
> > +#define I8042_MUX_PHYS_DESC "vt8500ps2/serio%d"
> > +
> > +/*
> > + * IRQs.
> > + */
> > +
> > +#define I8042_KBD_IRQ ?(wmt_current_irqs->ps2kbd)
> > +#define I8042_AUX_IRQ ?(wmt_current_irqs->ps2mouse)
> > +
> > +
> > +/*
> > + * Register numbers.
> > + */
> > +
> > +#define I8042_COMMAND_REG ? ? ?(regbase + 0x4)
> > +#define I8042_STATUS_REG ? ? ? (regbase + 0x4)
> > +#define I8042_DATA_REG ? ? ? ? (regbase + 0x0)
> > +
> > +static inline int i8042_read_data(void)
> > +{
> > + ? ? ? return readl(I8042_DATA_REG);
> > +}
> > +
> > +static inline int i8042_read_status(void)
> > +{
> > + ? ? ? return readl(I8042_STATUS_REG);
> > +}
> > +
> > +static inline void i8042_write_data(int val)
> > +{
> > + ? ? ? writel(val, I8042_DATA_REG);
> > +}
> > +
> > +static inline void i8042_write_command(int val)
> > +{
> > + ? ? ? writel(val, I8042_COMMAND_REG);
> > +}
> > +
> > +static inline int i8042_platform_init(void)
> > +{
> > + ? ? ? i8042_reset = true;
> > + ? ? ? regbase = ioremap(wmt_current_regs->ps2, SZ_1K);
> > + ? ? ? if (!regbase)
> > + ? ? ? ? ? ? ? return -ENODEV;
> > +
> > + ? ? ? return 0;
> > +}
> > +
> > +static inline void i8042_platform_exit(void)
> > +{
> > + ? ? ? iounmap(regbase);
> > +}
> > +
> > +#endif /* _I8042_VT8500_H */
> > diff --git a/drivers/input/serio/i8042.h b/drivers/input/serio/i8042.h
> > index cbc1beb..bdb2aeb 100644
> > --- a/drivers/input/serio/i8042.h
> > +++ b/drivers/input/serio/i8042.h
> > @@ -16,6 +16,8 @@
> >
> > ?#if defined(CONFIG_MACH_JAZZ)
> > ?#include "i8042-jazzio.h"
> > +#elif defined(CONFIG_ARCH_VT8500)
> > +#include "i8042-vt8500.h"
> > ?#elif defined(CONFIG_SGI_HAS_I8042)
> > ?#include "i8042-ip22io.h"
> > ?#elif defined(CONFIG_SNI_RM)
> > --
> > 1.7.3.2
> >
> >
>
> Any comments about this?
>
Looks good to me (ignoring the fact that whole i8042 initialization
needs to be reworked and pushed into arch/board code which is out of
scope of these series).
I expect it will be merged with the rest of VT8500 patches through
whatever tree takes them.
Thanks.
--
Dmitry
next prev parent reply other threads:[~2010-11-12 23:30 UTC|newest]
Thread overview: 93+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-07 16:28 [PATCH 1/6 v2] ARM: Add basic architecture support for VIA/WonderMedia 85xx SoC's Alexey Charkov
2010-11-07 16:28 ` [PATCH 2/6 v2] serial: Add support for UART on VIA VT8500 and compatibles Alexey Charkov
2010-11-07 23:08 ` Alan Cox
2010-11-08 0:58 ` [PATCH 2/6 v3] " Alexey Charkov
2010-11-08 10:46 ` Alan Cox
2010-11-08 17:33 ` [PATCH 2/6 v4] " Alexey Charkov
2010-11-07 16:28 ` [PATCH 3/6 v2] input: Add support for VIA VT8500 and compatibles in i8042 Alexey Charkov
2010-11-12 22:54 ` Alexey Charkov
2010-11-12 23:30 ` Dmitry Torokhov [this message]
2010-11-13 0:00 ` Alexey Charkov
2010-12-22 21:41 ` [PATCH 3/6 v3] " Alexey Charkov
2010-11-07 16:28 ` [PATCH 4/6 v2] usb: Add support for VIA VT8500 and compatibles in EHCI HCD Alexey Charkov
2010-11-07 16:28 ` [PATCH 5/6 v2] rtc: Add support for the RTC in VIA VT8500 and compatibles Alexey Charkov
2010-11-12 22:53 ` Alexey Charkov
2010-11-13 12:14 ` Lars-Peter Clausen
2010-11-13 23:56 ` [PATCH 5/6 v3] " Alexey Charkov
2010-11-14 15:50 ` Lars-Peter Clausen
2010-11-14 17:00 ` [PATCH 5/6 v4] " Alexey Charkov
2010-11-23 19:17 ` Alexey Charkov
2010-11-24 19:23 ` Lars-Peter Clausen
2010-11-24 22:47 ` [PATCH 5/6 v5] " Alexey Charkov
2010-11-07 16:28 ` [PATCH 6/6 v2] ARM: Add support for the display controllers in VT8500 and WM8505 Alexey Charkov
2010-11-08 4:17 ` Paul Mundt
2010-11-08 12:56 ` Alexey Charkov
2010-11-08 14:14 ` [PATCH 6/6 v3] " Alexey Charkov
2010-11-08 20:43 ` Paul Mundt
2010-11-08 21:15 ` Alexey Charkov
2010-11-08 21:30 ` Paul Mundt
2010-11-08 23:42 ` [PATCH 6/6 v4] " Alexey Charkov
2010-11-08 23:54 ` Paul Mundt
2010-11-09 0:03 ` Alexey Charkov
2010-11-09 7:36 ` Guennadi Liakhovetski
2010-11-09 9:39 ` Paul Mundt
2010-11-09 9:49 ` Alexey Charkov
2010-11-09 10:33 ` [PATCH 6/6 v3] " Russell King - ARM Linux
2010-11-09 10:51 ` Paul Mundt
2010-11-09 11:04 ` Russell King - ARM Linux
2010-11-09 13:02 ` Geert Uytterhoeven
2010-11-09 13:33 ` Arnd Bergmann
2010-11-09 16:20 ` Paul Mundt
2010-11-08 8:47 ` [PATCH 6/6 v2] " Arnd Bergmann
2010-11-09 10:23 ` Alexey Charkov
2010-11-09 15:03 ` Arnd Bergmann
2010-11-07 16:57 ` [PATCH 1/6 v2] ARM: Add basic architecture support for VIA/WonderMedia 85xx SoC's Russell King - ARM Linux
2010-11-07 17:08 ` Alexey Charkov
2010-11-07 17:17 ` Russell King - ARM Linux
2010-11-07 18:25 ` [PATCH 1/6 v3] " Alexey Charkov
2010-11-08 17:19 ` [PATCH 1/6 v4] " Alexey Charkov
2010-11-10 15:16 ` saeed bishara
2010-11-10 15:18 ` Russell King - ARM Linux
2010-11-10 15:20 ` saeed bishara
2010-11-11 21:23 ` [PATCH 1/6 v5] " Alexey Charkov
2010-11-11 23:49 ` Russell King - ARM Linux
2010-11-12 16:54 ` [PATCH 1/6 v6] " Alexey Charkov
2010-11-12 20:14 ` Alexey Charkov
2010-11-23 19:50 ` [PATCH 1/6 v7] " Alexey Charkov
2010-12-19 17:40 ` [PATCH 1/6 v8] " Alexey Charkov
2010-12-20 18:15 ` Arnd Bergmann
2010-12-20 19:15 ` Russell King - ARM Linux
2010-12-20 19:26 ` Alexey Charkov
2010-12-20 19:54 ` [PATCH 1/6 v9] " Alexey Charkov
2010-12-20 20:50 ` Ryan Mallon
2010-12-20 21:48 ` Alexey Charkov
2010-12-20 22:23 ` Ryan Mallon
2010-12-20 23:00 ` Alexey Charkov
2010-12-20 23:22 ` Ryan Mallon
2010-12-20 23:49 ` Alexey Charkov
2010-12-21 0:09 ` Alexey Charkov
2010-12-21 2:32 ` Ryan Mallon
2010-12-21 10:00 ` Alexey Charkov
2010-12-21 12:05 ` Arnd Bergmann
2010-12-21 19:39 ` Ryan Mallon
2010-12-22 21:18 ` [PATCH 1/6 v10] " Alexey Charkov
2010-12-22 21:52 ` Ryan Mallon
2010-12-22 22:02 ` Alexey Charkov
2010-12-22 22:32 ` Ryan Mallon
2010-12-22 22:25 ` [PATCH 1/6 v11] " Alexey Charkov
2010-12-22 22:59 ` Ryan Mallon
2010-12-22 23:38 ` [PATCH 1/6 v12] " Alexey Charkov
2010-12-28 14:52 ` Alexey Charkov
2011-01-15 0:53 ` Alexey Charkov
2011-01-15 0:58 ` Russell King - ARM Linux
2011-01-15 1:13 ` Alexey Charkov
2011-01-21 10:43 ` Russell King - ARM Linux
2011-07-06 12:34 ` [PATCH 1/6 v8] " Russell King - ARM Linux
2011-07-07 7:13 ` Alexey Charkov
2011-07-07 7:54 ` Arnd Bergmann
2011-07-07 7:59 ` Russell King - ARM Linux
2011-07-07 8:05 ` Arnd Bergmann
2010-11-07 17:00 ` [PATCH 1/6 v2] " Russell King - ARM Linux
2010-11-07 17:16 ` Alexey Charkov
-- strict thread matches above, loose matches on Subject: below --
2010-10-20 20:55 [PATCH 1/6] " Alexey Charkov
2010-10-20 20:55 ` [PATCH 3/6] input: Add support for VIA VT8500 and compatibles in i8042 Alexey Charkov
2010-10-20 21:15 ` Dmitry Torokhov
2010-10-20 22:14 ` [PATCH 3/6 v2] " Alexey Charkov
2010-10-20 23:46 ` Dmitry Torokhov
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=20101112233013.GA30946@core.coreip.homeip.net \
--to=dmitry.torokhov@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).