mbox series

[00/10] platform/chrome: cros_ec_typec: VDM support

Message ID 20221228004648.793339-1-pmalani@chromium.org (mailing list archive)
Headers show
Series platform/chrome: cros_ec_typec: VDM support | expand

Message

Prashant Malani Dec. 28, 2022, 12:45 a.m. UTC
This series adds support for sending and receiving USB PD Vendor
Defined Messages (VDMs) between the Application Processor's Type-C
ports and connected peripherals.

Thir enables the Application processor to enter alternate modes and
process VDMs directly, instead of relying on state machines that exist
inside of co-processors like the ChromeOS Embedded Controller (EC).

Patch 1/10 reverts an incorrect EC header modification.
Patch 2/10 to 5/10 update headers and existing Type-C structs to
accommodate the VDM code.
Patch 6/10 and 7/10 prepare the Type-C driver to have more than 1 file.
Patch 8/10 to 10/10 introduce the VDM functionality.

Patch submissions suggestion (if approved):
- Even though Patch 1 touches drivers/mfd, it would be better to take
  the entire series through the cbrome-platform branch, to avoid
  cross-dependencies across maintainer trees.


Prashant Malani (10):
  Revert "mfd: cros_ec: Add SCP Core-1 as a new CrOS EC MCU"
  platform_chrome: cros_ec: Add Type-C VDM defines
  platform/chrome: cros_ec_typec: Stash port driver info
  platform/chrome: cros_ec_typec: Set port alt mode drvdata
  platform/chrome: cros_ec_typec: Update port DP VDO
  platform/chrome: cros_ec_typec: Move structs to header
  platform/chrome: cros_ec_typec: Alter module name with hyphens
  platform/chrome: cros_ec_typec: Add initial VDM support
  platform/chrome: cros_typec_vdm: Add VDM reply support
  platform/chrome: cros_typec_vdm: Add VDM send support

 MAINTAINERS                                   |   3 +-
 drivers/mfd/cros_ec_dev.c                     |   5 -
 drivers/platform/chrome/Kconfig               |   2 +-
 drivers/platform/chrome/Makefile              |   3 +-
 drivers/platform/chrome/cros_ec_typec.c       |  91 +++------------
 drivers/platform/chrome/cros_ec_typec.h       |  85 ++++++++++++++
 drivers/platform/chrome/cros_typec_vdm.c      | 106 ++++++++++++++++++
 drivers/platform/chrome/cros_typec_vdm.h      |  12 ++
 .../linux/platform_data/cros_ec_commands.h    |  53 ++++++++-
 include/linux/platform_data/cros_ec_proto.h   |   1 -
 10 files changed, 276 insertions(+), 85 deletions(-)
 create mode 100644 drivers/platform/chrome/cros_ec_typec.h
 create mode 100644 drivers/platform/chrome/cros_typec_vdm.c
 create mode 100644 drivers/platform/chrome/cros_typec_vdm.h

Comments

Heikki Krogerus Jan. 2, 2023, 11:20 a.m. UTC | #1
On Wed, Dec 28, 2022 at 12:45:03AM +0000, Prashant Malani wrote:
> This series adds support for sending and receiving USB PD Vendor
> Defined Messages (VDMs) between the Application Processor's Type-C
> ports and connected peripherals.
> 
> Thir enables the Application processor to enter alternate modes and
> process VDMs directly, instead of relying on state machines that exist
> inside of co-processors like the ChromeOS Embedded Controller (EC).
> 
> Patch 1/10 reverts an incorrect EC header modification.
> Patch 2/10 to 5/10 update headers and existing Type-C structs to
> accommodate the VDM code.
> Patch 6/10 and 7/10 prepare the Type-C driver to have more than 1 file.
> Patch 8/10 to 10/10 introduce the VDM functionality.
> 
> Patch submissions suggestion (if approved):
> - Even though Patch 1 touches drivers/mfd, it would be better to take
>   the entire series through the cbrome-platform branch, to avoid
>   cross-dependencies across maintainer trees.

For the whole series, FWIW:

Acked-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>

> Prashant Malani (10):
>   Revert "mfd: cros_ec: Add SCP Core-1 as a new CrOS EC MCU"
>   platform_chrome: cros_ec: Add Type-C VDM defines
>   platform/chrome: cros_ec_typec: Stash port driver info
>   platform/chrome: cros_ec_typec: Set port alt mode drvdata
>   platform/chrome: cros_ec_typec: Update port DP VDO
>   platform/chrome: cros_ec_typec: Move structs to header
>   platform/chrome: cros_ec_typec: Alter module name with hyphens
>   platform/chrome: cros_ec_typec: Add initial VDM support
>   platform/chrome: cros_typec_vdm: Add VDM reply support
>   platform/chrome: cros_typec_vdm: Add VDM send support
> 
>  MAINTAINERS                                   |   3 +-
>  drivers/mfd/cros_ec_dev.c                     |   5 -
>  drivers/platform/chrome/Kconfig               |   2 +-
>  drivers/platform/chrome/Makefile              |   3 +-
>  drivers/platform/chrome/cros_ec_typec.c       |  91 +++------------
>  drivers/platform/chrome/cros_ec_typec.h       |  85 ++++++++++++++
>  drivers/platform/chrome/cros_typec_vdm.c      | 106 ++++++++++++++++++
>  drivers/platform/chrome/cros_typec_vdm.h      |  12 ++
>  .../linux/platform_data/cros_ec_commands.h    |  53 ++++++++-
>  include/linux/platform_data/cros_ec_proto.h   |   1 -
>  10 files changed, 276 insertions(+), 85 deletions(-)
>  create mode 100644 drivers/platform/chrome/cros_ec_typec.h
>  create mode 100644 drivers/platform/chrome/cros_typec_vdm.c
>  create mode 100644 drivers/platform/chrome/cros_typec_vdm.h
patchwork-bot+chrome-platform@kernel.org Jan. 9, 2023, 8:40 p.m. UTC | #2
Hello:

This series was applied to chrome-platform/linux.git (for-kernelci)
by Prashant Malani <pmalani@chromium.org>:

On Wed, 28 Dec 2022 00:45:03 +0000 you wrote:
> This series adds support for sending and receiving USB PD Vendor
> Defined Messages (VDMs) between the Application Processor's Type-C
> ports and connected peripherals.
> 
> Thir enables the Application processor to enter alternate modes and
> process VDMs directly, instead of relying on state machines that exist
> inside of co-processors like the ChromeOS Embedded Controller (EC).
> 
> [...]

Here is the summary with links:
  - [01/10] Revert "mfd: cros_ec: Add SCP Core-1 as a new CrOS EC MCU"
    https://git.kernel.org/chrome-platform/c/0ac7200e3317
  - [02/10] platform_chrome: cros_ec: Add Type-C VDM defines
    https://git.kernel.org/chrome-platform/c/0e0dba884c43
  - [03/10] platform/chrome: cros_ec_typec: Stash port driver info
    https://git.kernel.org/chrome-platform/c/4dc9355cef4f
  - [04/10] platform/chrome: cros_ec_typec: Set port alt mode drvdata
    https://git.kernel.org/chrome-platform/c/c856e3ff98bb
  - [05/10] platform/chrome: cros_ec_typec: Update port DP VDO
    https://git.kernel.org/chrome-platform/c/8d2b28df6c3d
  - [06/10] platform/chrome: cros_ec_typec: Move structs to header
    https://git.kernel.org/chrome-platform/c/690580965153
  - [07/10] platform/chrome: cros_ec_typec: Alter module name with hyphens
    https://git.kernel.org/chrome-platform/c/e5eea6a3319f
  - [08/10] platform/chrome: cros_ec_typec: Add initial VDM support
    https://git.kernel.org/chrome-platform/c/493e699b9934
  - [09/10] platform/chrome: cros_typec_vdm: Add VDM reply support
    https://git.kernel.org/chrome-platform/c/50ed638bbc47
  - [10/10] platform/chrome: cros_typec_vdm: Add VDM send support
    https://git.kernel.org/chrome-platform/c/40a9b13a09ef

You are awesome, thank you!
patchwork-bot+chrome-platform@kernel.org Jan. 10, 2023, 6:50 p.m. UTC | #3
Hello:

This series was applied to chrome-platform/linux.git (for-next)
by Prashant Malani <pmalani@chromium.org>:

On Wed, 28 Dec 2022 00:45:03 +0000 you wrote:
> This series adds support for sending and receiving USB PD Vendor
> Defined Messages (VDMs) between the Application Processor's Type-C
> ports and connected peripherals.
> 
> Thir enables the Application processor to enter alternate modes and
> process VDMs directly, instead of relying on state machines that exist
> inside of co-processors like the ChromeOS Embedded Controller (EC).
> 
> [...]

Here is the summary with links:
  - [01/10] Revert "mfd: cros_ec: Add SCP Core-1 as a new CrOS EC MCU"
    https://git.kernel.org/chrome-platform/c/0ac7200e3317
  - [02/10] platform_chrome: cros_ec: Add Type-C VDM defines
    https://git.kernel.org/chrome-platform/c/0e0dba884c43
  - [03/10] platform/chrome: cros_ec_typec: Stash port driver info
    https://git.kernel.org/chrome-platform/c/4dc9355cef4f
  - [04/10] platform/chrome: cros_ec_typec: Set port alt mode drvdata
    https://git.kernel.org/chrome-platform/c/c856e3ff98bb
  - [05/10] platform/chrome: cros_ec_typec: Update port DP VDO
    https://git.kernel.org/chrome-platform/c/8d2b28df6c3d
  - [06/10] platform/chrome: cros_ec_typec: Move structs to header
    https://git.kernel.org/chrome-platform/c/690580965153
  - [07/10] platform/chrome: cros_ec_typec: Alter module name with hyphens
    https://git.kernel.org/chrome-platform/c/e5eea6a3319f
  - [08/10] platform/chrome: cros_ec_typec: Add initial VDM support
    https://git.kernel.org/chrome-platform/c/493e699b9934
  - [09/10] platform/chrome: cros_typec_vdm: Add VDM reply support
    https://git.kernel.org/chrome-platform/c/50ed638bbc47
  - [10/10] platform/chrome: cros_typec_vdm: Add VDM send support
    https://git.kernel.org/chrome-platform/c/40a9b13a09ef

You are awesome, thank you!