Message ID | 1468476522-8032-1-git-send-email-aduggan@synaptics.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Jul 13, 2016 at 11:08:42PM -0700, Andrew Duggan wrote: > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> > --- > This version includes Nick's suggestion of adding force to the device tree > parameters so make it obvious that these parameters overwrite the > default values set in the firware config. > > .../devicetree/bindings/input/rmi4/rmi_2d_sensor.txt | 10 ++++++++++ > drivers/input/rmi4/rmi_2d_sensor.c | 13 +++++++++++++ > 2 files changed, 23 insertions(+) Acked-by: Rob Herring <robh@kernel.org> -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Thu, Jul 14, 2016 at 8:08 AM, Andrew Duggan <aduggan@synaptics.com> wrote: > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> > --- > This version includes Nick's suggestion of adding force to the device tree > parameters so make it obvious that these parameters overwrite the > default values set in the firware config. Looks neat. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, Jul 13, 2016 at 11:08:42PM -0700, Andrew Duggan wrote: > Signed-off-by: Andrew Duggan <aduggan@synaptics.com> > --- > This version includes Nick's suggestion of adding force to the device tree > parameters so make it obvious that these parameters overwrite the > default values set in the firware config. Why do we want to support overwriting firmware behavior in DT instead of flashing new firmware as needed by the product? Thanks.
On 07/22/2016 09:52 AM, Dmitry Torokhov wrote: > On Wed, Jul 13, 2016 at 11:08:42PM -0700, Andrew Duggan wrote: >> Signed-off-by: Andrew Duggan <aduggan@synaptics.com> >> --- >> This version includes Nick's suggestion of adding force to the device tree >> parameters so make it obvious that these parameters overwrite the >> default values set in the firware config. > Why do we want to support overwriting firmware behavior in DT instead of > flashing new firmware as needed by the product? If the firmware was configured incorrectly it might just be easier to add a device tree entry. This would allow platform owners to make the change without having to get Synaptics involved or have access to our tools. Customers have also requested using the same module and firmware across multiple platforms. Tracking which firmware is on which part would create an additional support burden and not all platforms have an automated way of checking and updating firmware versions in the event that a system is build with a module which has the incorrect firmware. It is possible that neither of these cases will ever happen and the bindings will never be used. I figured it was better to have the options available if needed. But, if we want to avoid having tons of device tree parameters which are never used then we can leave this patch out and I can resubmit it if there is a platform which ends up needing them. Andrew > Thanks. > -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Jul 22, 2016 at 8:32 PM, Andrew Duggan <aduggan@synaptics.com> wrote: > If the firmware was configured incorrectly it might just be easier to add a > device tree entry. This would allow platform owners to make the change > without having to get Synaptics involved or have access to our tools. > Customers have also requested using the same module and firmware across > multiple platforms. Tracking which firmware is on which part would create an > additional support burden and not all platforms have an automated way of > checking and updating firmware versions in the event that a system is build > with a module which has the incorrect firmware. I think it's a valid argument. That said, the world needs more of drivers/scsi/aic7xxx That driver has the firmware generation, including an assembler, in the kernel tree. Pretty cool eh? (I know it is a thick thing to ask, just want to give you an idea of what is possible...) Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/input/rmi4/rmi_2d_sensor.txt b/Documentation/devicetree/bindings/input/rmi4/rmi_2d_sensor.txt index f2c30c8..c00665d 100644 --- a/Documentation/devicetree/bindings/input/rmi4/rmi_2d_sensor.txt +++ b/Documentation/devicetree/bindings/input/rmi4/rmi_2d_sensor.txt @@ -37,6 +37,16 @@ Optional Properties: disable reporing absolute position data. - syna,rezero-wait-ms: Time in miliseconds to wait after issuing a rezero command. +- syna,dribble-force-enable: Enable reporting of dribble packets in the firmware + (overwrites default value in firmware config). +- syna,dribble-force-disable: Disable reporting of dribble packets in the firmware. + (overwrites default value in firmware config). +- syna,palm-detect-force-enable: Enable reporting the palm detect gesture in the + firmware. (overwrites default value in firmware + config). +- syna,palm-detect-force-disable: Disable reporting the palm detect gesture in + the firmware. (overwrites default value in + firmware config). Example of a RMI4 I2C device with F11: diff --git a/drivers/input/rmi4/rmi_2d_sensor.c b/drivers/input/rmi4/rmi_2d_sensor.c index e97bd7f..a092f6a 100644 --- a/drivers/input/rmi4/rmi_2d_sensor.c +++ b/drivers/input/rmi4/rmi_2d_sensor.c @@ -317,6 +317,19 @@ int rmi_2d_sensor_of_probe(struct device *dev, pdata->rezero_wait = val; + if (of_property_read_bool(dev->of_node, "syna,dribble-force-enable")) + pdata->dribble = RMI_REG_STATE_ON; + else if (of_property_read_bool(dev->of_node, + "syna,dribble-force-disable")) + pdata->dribble = RMI_REG_STATE_OFF; + + if (of_property_read_bool(dev->of_node, + "syna,palm-detect-force-enable")) + pdata->palm_detect = RMI_REG_STATE_ON; + else if (of_property_read_bool(dev->of_node, + "syna,palm-detect-force-disable")) + pdata->palm_detect = RMI_REG_STATE_OFF; + return 0; } #else
Signed-off-by: Andrew Duggan <aduggan@synaptics.com> --- This version includes Nick's suggestion of adding force to the device tree parameters so make it obvious that these parameters overwrite the default values set in the firware config. .../devicetree/bindings/input/rmi4/rmi_2d_sensor.txt | 10 ++++++++++ drivers/input/rmi4/rmi_2d_sensor.c | 13 +++++++++++++ 2 files changed, 23 insertions(+)