RE: [PATCH v15 00/12] input: cyapa: instruction of cyapa patches

From: Dudley Du
Date: Mon Dec 15 2014 - 01:31:37 EST


Jeremiah,

Thanks for your review and comments.
I have updated v15 based on your comments and suggestions.
Could you help review again please.

Thank you very much,
Dudley

> -----Original Message-----
> From: linux-input-owner@xxxxxxxxxxxxxxx
> [mailto:linux-input-owner@xxxxxxxxxxxxxxx] On Behalf Of Dudley Du
> Sent: 2014?12?15? 14:23
> To: dmitry.torokhov@xxxxxxxxx; rydberg@xxxxxxxxxxx
> Cc: Dudley Du; bleung@xxxxxxxxxx; David Solda; linux-input@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH v15 00/12] input: cyapa: instruction of cyapa patches
>
> V15 patches have below updates, details of other updates see history list:
> 1) Fix all warning errors of sparse tool when running with "make C=1".
> 2) Change variable name "unique_str" to "product_id" for clearer meanings.
Also 3) Update cyapa_i2c_write function to return error directly when length > 31.
>
>
> This patch series is aimed to re-design the cyapa driver to support
> old gen3 trackpad devices and new gen5 trackpad devices in one
> cyapa driver, it's for easily productions support based on
> customers' requirements. And add sysfs functions and interfaces
> supported that required by users and customers.
>
> Since the earlier gen3 and the latest gen5 trackpad devices using
> two different chipsets, and have different protocols and interfaces,
> so if supported these two type trackpad devices in two different drivers,
> then it will be difficult to manage productions and later firmware updates.
> e.g.: It will cause customer don't know which one trackpad device firmware
> image to use and update when it has been used and integrated
> in same one productions, so here we support these two trackpad
> devices in same on driver.
>
> The new design cyapa driver contains:
> cyapa.c - the core of the re-design, supply interfaces and
> functions to system and read trackpad devices.
> cyapa.h - header file including macros and data structure definitions.
> cyapa_gen3.c - functions support for gen3 trackpad devices,
> cyapa_gen5.c - functions support for gen5 trackpad devices.
>
> Beside this introduction patch, it has 12 patches listed as below.
> For these patches, each one is patched based on previous one.
>
> patch 1/12: re-design cyapa driver with core functions and interface
> to support multi-type trackpad devices.
>
> patch 2/12: add gen5 trackpad device basic functions supported into the
> re-design cyapa driver.
>
> patch 3/12: add power management interfaces supported for the device.
>
> patch 4/12: add runtime power management interfaces supported for the device.
>
> patch 5/12: add sysfs interfaces supported in the cyapa driver.
> Including read firmware version, get production ID, read baseline,
> re-calibrate trackpad baselines and do trackpad firmware update.
>
> patch 6/12: add gen3 trackpad device's firmware update function supported.
>
> patch 7/12: add gen3 trackpad device's read baseline function supported.
>
> patch 8/12: add gen3 trackpad device's force re-calibrate function supported.
>
> patch 9/12: add gen5 trackpad device's firmware update function supported.
>
> patch 10/12: add gen5 trackpad device's read baseline function supported.
>
> patch 11/12: add gen5 trackpad device's force re-calibrate function.
>
> patch 12/12: add acpi device id supported.
>
>
> History patch series modifications list:
> V14 patches have below main updates compared with v13 patches:
> 1) Correct 9 miss spelling issues of "bufferred" to "buffered".
> 2) Fix the upgrade issue of removing MOUSE_CYAPA config when make oldconfig
> by replase "depends on I2C && CRC_ITU_T" with
> "depends on I2C"
> "select CRC_ITU_T"
> in patch 9.
>
> V13 patches have below main updates compared with v12 patches:
> 1) Remove all debugfs interface, including read_fw and raw_data interfaces.
> 2) This patches are made based linux next-20141208.
>
> V12 patches have below main updates compared with v11 patches:
> 1) Add check that when TP is detected but not operational, do not exit driver
> immediately, but wait and export the update_fw interface for recovering.
> 2) Re-arrange the function codes, remove unnesseary protype definitions in
> the header file.
>
> V11 patches have below main updates compared with v10 patches:
> 1) Add add acpi device id supported for old gen3 and new gen5 trackpad devices.
> 2) Fix the unable to update firmware issue when cyapa_open is not called
> which means the irq for firwmare update process is not enabled. This fix
> by checking if the irq is enabled, if not then enable irq before start to
> do firmware update.
>
> V10 patches have below main updates compared with v9 patches:
> 1) Modify code to following kernel code style.
> e.g.: correct to use error as return name when there is only error path,
> and fix the checkpatch.sh wanting in the driver.
> 2) Remove cyapa_remove method and use input open and close interface to
> following device resouse management infrastructure.
> 3) Modify cyapa_detect method to return tristate issue to make the return value
> much more consistent and clear.
> 4) Use platform supplied functions as possible instead of driver
> specific rewritten version.
>
> V9 patches have below updates compared with v8 patches:
> 1) Removed all async thread stuff from the driver.
> 2) Split driver into 18 patches for each function change one patch.
>
> V8 patches have below updates compared with v7 patches:
> 1) [PATCH v8 01/13] - Remove the async thread for device detect in
> probe routine, now the device detect process is completely done within
> the device probe routine.
> 2) [PATCH v8 01/13] - Split the irq cmd hander function to separated
> function cyapa_default_irq_cmd_handler() and set it to interface
> cyapa_default_ops.irq_cmd_handler.
> 3) [PATCH v8 06/13] - Add cyapa->gen check in cyapa_gen3_irq_cmd_handler()
> to avoid miss-enter when device protocol is still in detecting.
>
> V7 patches have below updates compared with v6 patches:
> 1) [PATCH v7 01/13] - Split the irq cmd hander function to separated
> function cyapa_default_irq_cmd_handler() and set it to interface
> cyapa_default_ops.irq_cmd_handler.
> 2) [PATCH v7 06/13] - Add cyapa->gen check in cyapa_gen3_irq_cmd_handler()
> to avoid miss-enter when device protocol is still in detecting.
>
>
> V6 patches have below updates compared with v5 patches:
> 1) Remove patch 14 of the lid filtering from the cyapa driver.
>
> V5 patches have below updates compared with v4 patches:
> 1) Uses get_device()/put_device() instead of kobject_get()/kobject_put();
> 2) Fix memories freed before debugfs entries issue;
> 3) Make cyapa_debugs_root valid in driver module level
> in module_init()/moudle_exit() ;
> 4) Fix i2c_transfer() may return partial transfer issues.
> 5) Add cyapa->removed flag to avoid detecting thread may still running
> when driver module is removed.
> 6) Fix the meanings of some comments and return error code not clear issue.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-input" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html

This message and any attachments may contain Cypress (or its subsidiaries) confidential information. If it has been received in error, please advise the sender and immediately delete this message.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/