Message ID | 20191127125456.9672-1-l.stach@pengutronix.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] Input: atmel_mxt_ts - allow specification of config name | expand |
Hi Lucas, just two nitpicks. On 19-11-27 13:54, Lucas Stach wrote: > From: Nick Dyer <nick@shmanahar.org> > > Signed-off-by: Nick Dyer <nick@shmanahar.org> > --- > v2: Switch to linux instead of atmel as vendor prefix. > Signed-off-by: Lucas Stach <l.stach@pengutronix.de> > --- Don't know the git behaviour but where happens the cut if we have two '---'? > Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 3 +++ > drivers/input/touchscreen/atmel_mxt_ts.c | 6 +++++- > 2 files changed, 8 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > index c88919480d37..0764c7af045c 100644 > --- a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > +++ b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > @@ -31,6 +31,9 @@ Optional properties for main touchpad device: > > - reset-gpios: GPIO specifier for the touchscreen's reset pin (active low) > > +- linux,cfg-name: Provide name of configuration file in OBP_RAW format. This > + will be downloaded from the firmware loader on probe to the device. > + > Example: > > touch@4b { > diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c > index 24c4b691b1c9..60997086763b 100644 > --- a/drivers/input/touchscreen/atmel_mxt_ts.c > +++ b/drivers/input/touchscreen/atmel_mxt_ts.c > @@ -308,6 +308,7 @@ struct mxt_data { > struct t7_config t7_cfg; > struct mxt_dbg dbg; > struct gpio_desc *reset_gpio; > + const char *cfg_name; > > /* Cached parameters from object table */ > u16 T5_address; > @@ -2142,7 +2143,8 @@ static int mxt_initialize(struct mxt_data *data) > if (error) > return error; > > - error = request_firmware_nowait(THIS_MODULE, true, MXT_CFG_NAME, > + error = request_firmware_nowait(THIS_MODULE, true, > + data->cfg_name ? : MXT_CFG_NAME, This will produce a warning if clang is used [1]. I don't know if we should introduce gcc-extensions. [1] https://releases.llvm.org/8.0.0/tools/clang/docs/DiagnosticsReference.html#wgnu-conditional-omitted-operand Regards, Marco > &client->dev, GFP_KERNEL, data, > mxt_config_cb); > if (error) { > @@ -3015,6 +3017,8 @@ static int mxt_parse_device_properties(struct mxt_data *data) > data->t19_num_keys = n_keys; > } > > + device_property_read_string(dev, "linux,cfg-name", &data->cfg_name); > + > return 0; > } > > -- > 2.20.1 > > >
On Wed, Nov 27, 2019 at 01:54:56PM +0100, Lucas Stach wrote: > From: Nick Dyer <nick@shmanahar.org> > > Signed-off-by: Nick Dyer <nick@shmanahar.org> > --- > v2: Switch to linux instead of atmel as vendor prefix. > Signed-off-by: Lucas Stach <l.stach@pengutronix.de> > --- > Documentation/devicetree/bindings/input/atmel,maxtouch.txt | 3 +++ > drivers/input/touchscreen/atmel_mxt_ts.c | 6 +++++- > 2 files changed, 8 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > index c88919480d37..0764c7af045c 100644 > --- a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > +++ b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt > @@ -31,6 +31,9 @@ Optional properties for main touchpad device: > > - reset-gpios: GPIO specifier for the touchscreen's reset pin (active low) > > +- linux,cfg-name: Provide name of configuration file in OBP_RAW format. This > + will be downloaded from the firmware loader on probe to the device. > + We have a somewhat standard 'firmware-name' property for this purpose already. Use that. Rob
diff --git a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt index c88919480d37..0764c7af045c 100644 --- a/Documentation/devicetree/bindings/input/atmel,maxtouch.txt +++ b/Documentation/devicetree/bindings/input/atmel,maxtouch.txt @@ -31,6 +31,9 @@ Optional properties for main touchpad device: - reset-gpios: GPIO specifier for the touchscreen's reset pin (active low) +- linux,cfg-name: Provide name of configuration file in OBP_RAW format. This + will be downloaded from the firmware loader on probe to the device. + Example: touch@4b { diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c index 24c4b691b1c9..60997086763b 100644 --- a/drivers/input/touchscreen/atmel_mxt_ts.c +++ b/drivers/input/touchscreen/atmel_mxt_ts.c @@ -308,6 +308,7 @@ struct mxt_data { struct t7_config t7_cfg; struct mxt_dbg dbg; struct gpio_desc *reset_gpio; + const char *cfg_name; /* Cached parameters from object table */ u16 T5_address; @@ -2142,7 +2143,8 @@ static int mxt_initialize(struct mxt_data *data) if (error) return error; - error = request_firmware_nowait(THIS_MODULE, true, MXT_CFG_NAME, + error = request_firmware_nowait(THIS_MODULE, true, + data->cfg_name ? : MXT_CFG_NAME, &client->dev, GFP_KERNEL, data, mxt_config_cb); if (error) { @@ -3015,6 +3017,8 @@ static int mxt_parse_device_properties(struct mxt_data *data) data->t19_num_keys = n_keys; } + device_property_read_string(dev, "linux,cfg-name", &data->cfg_name); + return 0; }