linux-input.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Heiner Kallweit <hkallweit1@gmail.com>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: linux-input@vger.kernel.org
Subject: Re: [PATCH] touchscreen: stmpe-ts: enable module autoload
Date: Fri, 22 May 2015 07:34:43 +0200	[thread overview]
Message-ID: <555EBFF3.1010602@gmail.com> (raw)
In-Reply-To: <20150521230612.GA39517@dtor-ws>

Am 22.05.2015 um 01:06 schrieb Dmitry Torokhov:
> Hi Heiner,
> 
> On Thu, May 21, 2015 at 11:19:52PM +0200, Heiner Kallweit wrote:
>> Even with poper DT config the module didn't autoload.
>> That's fixed by this additional alias.
>>
>> Tested successfully with a STMPE610-based Adafruit PITFT Plus 3.5"
>> on RPI2 under Arch Linux ARM (kernel 3.18.13).
>>
>> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
>> ---
>>  drivers/input/touchscreen/stmpe-ts.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/input/touchscreen/stmpe-ts.c b/drivers/input/touchscreen/stmpe-ts.c
>> index e4c3125..1940e3c 100644
>> --- a/drivers/input/touchscreen/stmpe-ts.c
>> +++ b/drivers/input/touchscreen/stmpe-ts.c
>> @@ -393,4 +393,5 @@ module_platform_driver(stmpe_ts_driver);
>>  MODULE_AUTHOR("Luotao Fu <l.fu@pengutronix.de>");
>>  MODULE_DESCRIPTION("STMPEXXX touchscreen driver");
>>  MODULE_LICENSE("GPL");
>> +MODULE_ALIAS("spi:" STMPE_TS_NAME);
>>  MODULE_ALIAS("platform:" STMPE_TS_NAME);
> 
> Bit this is not an SPI driver, it is a platform driver for a MFD cell.
> Why does adding SPI alias help?
> 
> Thanks.
> 
The STMPE610 in my case is used on a small touchscreen for the Raspberry Pi
and touchscreen controller as well as display controller are connected via
SPI + a few GPIOs to the RPI.

The display controller is supported by the fbtft driver and the drivers
for the respective display controllers have similar aliases.
see e.g. drivers/staging/fbtft/fb_hx8353d.c

MODULE_ALIAS("spi:hx8353d");
MODULE_ALIAS("platform:hx8353d");

Kernel module stmpe_ts is autoloaded only when it's found at enumerating
the devices connected to SPI.

Below is the relevant part from the DT overlay.

Heiner


fragment@2 {
                target = <&spi0>;
                __overlay__ {
                        /* needed to avoid dtc warning */
                        #address-cells = <1>;
                        #size-cells = <0>;

                        pitft: pitft@0{
                                compatible = "himax,hx8357d";
                                reg = <0>;
                                pinctrl-names = "default";
                                pinctrl-0 = <&pitft_pins>;

                                spi-max-frequency = <32000000>;
                                rotate = <90>;
                                fps = <25>;
                                bgr;
                                buswidth = <8>;
                                dc-gpios = <&gpio 25 0>;
                                debug = <0>;
                        };

                        pitft_ts@1 {
                                #address-cells = <1>;
                                #size-cells = <0>;
                                compatible = "st,stmpe610";
                                reg = <1>;

                                spi-max-frequency = <500000>;
                                irq-gpio = <&gpio 24 0x2>; /* IRQF_TRIGGER_FALLING */
                                interrupts = <24 2>; /* high-to-low edge triggered */
                                interrupt-parent = <&gpio>;
                                interrupt-controller;

                                stmpe_touchscreen {
                                        compatible = "st,stmpe-ts";
                                        st,sample-time = <4>;
                                        st,mod-12b = <1>;
                                        st,ref-sel = <0>;
                                        st,adc-freq = <2>;
                                        st,ave-ctrl = <3>;
                                        st,touch-det-delay = <4>;
                                        st,settling = <2>;
                                        st,fraction-z = <7>;
                                        st,i-drive = <0>;
                                };

                                stmpe_gpio: stmpe_gpio {
                                        #gpio-cells = <2>;
                                        compatible = "st,stmpe-gpio";
                                        /*
                                         * only GPIO2 is wired/available
                                         * and it is wired to the backlight
                                         */
                                        st,norequest-mask = <0x7b>;
                                };
                        };
                };


  reply	other threads:[~2015-05-22  5:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-21 21:19 [PATCH] touchscreen: stmpe-ts: enable module autoload Heiner Kallweit
2015-05-21 23:06 ` Dmitry Torokhov
2015-05-22  5:34   ` Heiner Kallweit [this message]
2015-05-22 18:29     ` Dmitry Torokhov
2015-05-22 19:01       ` Heiner Kallweit
2015-05-22 20:17         ` Dmitry Torokhov
2015-05-22 21:02           ` Heiner Kallweit

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=555EBFF3.1010602@gmail.com \
    --to=hkallweit1@gmail.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=linux-input@vger.kernel.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).