All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 0/3] usb: typec: Implement UCSI driver for ChromeOS
@ 2024-11-15 15:52 Łukasz Bartosik
  2024-11-15 15:52 ` [PATCH v7 1/3] platform/chrome: Update ChromeOS EC header for UCSI Łukasz Bartosik
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Łukasz Bartosik @ 2024-11-15 15:52 UTC (permalink / raw)
  To: Heikki Krogerus, Greg Kroah-Hartman, Benson Leung
  Cc: Abhishek Pandit-Subedi, Jameson Thies, Pavan Holla, Tzung-Bi Shih,
	linux-usb, chrome-platform

This series implements a UCSI ChromeOS EC transport driver. 
The ChromeOS EC is expected to implement UCSI Platform Policy
Manager (PPM).

---
Changes in v7:
- Dropped the following commits for now as I want to focus
on upstreaming cros_ec_ucsi driver first. Then I will get
back to the topic of trace events and netlink:
  "usb: typec: cros_ec_ucsi: Add trace events"
  "usb: typec: cros_ec_ucsi: Add netlink"
- Squashed "usb: typec: cros_ec_ucsi: Use complete instead of resume"
into "usb: typec: ucsi: Implement ChromeOS UCSI driver".
- Added "usb: typec: cros_ec_ucsi: Recover from write timeouts" commmit.
- Added usage of common functins ucsi_sync_control_common()
and ucsi_notify_common().
- Commits:
  "platform/chrome: Update EC feature flags"
  "mfd: cros_ec: Load cros_ec_ucsi on supported ECs"
  "mfd: cros_ec: Don't load charger with UCSI"
landed in the tree https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git/log/?h=for-mfd-next    
- Link to v6: https://lore.kernel.org/linux-usb/20240910101527.603452-1-ukaszb@chromium.org

Changes in v6:
- Reverted to type names uint*_t in cros_ec_commands.h in order 
to be consistent with type names used in other parts of the file.
- Updated comments in cros_ec_commands.h related to UCSI.
- Added missing sign-offs.
- Fixed memory leak in cros_ucsi_async_control() by moving
ec_params_ucsi_ppm_set request buffer to stack.
- Replaced cros_ucsi_read with cros_ucsi_read_cci in cros_ucsi_work().
- Updated changes in v5, it was missing information related to
commits addition:
  platform/chrome: Update EC feature flags
  usb: typec: cros_ec_ucsi: Use complete instead of resume
  mfd: cros_ec: Load cros_ec_ucsi on supported ECs
  mfd: cros_ec: Don't load charger with UCSI
- Link to v5: https://lore.kernel.org/r/all/20240903163033.3170815-1-ukaszb@chromium.org/

Changes in v5:
- Increased WRITE_TMO_MS to 5000.
- Replaced DRV_NAME with KBUILD_MODNAME.
- Added comments for WRITE_TMO_MS and MAX_EC_DATA_SIZE defines.
- Refactored cros_ucsi_async_control() to dynamically allocate memory
for a message to EC instead of allocating the message on stack.
- Replaced type names uint*_t with u*.
- Removed ret variable in cros_ucsi_work().
- Updated ucsi_operations interface to align with changes introduced in
  v6.11.
- Replaced test_bit() with test_and_clear_bit() in cros_ucsi_work().
- Updated EC feature flags in commit "platform/chrome: Update EC feature
  flags".
- Added new commit "usb: typec: cros_ec_ucsi: Use complete instead
of resume".
- Added trace events in commit "usb: typec: cros_ec_ucsi: Add trace
  events".
- Added netlink in commit "usb: typec: cros_ec_ucsi: Add netlink"
for debugging and testing puropses.
- Added new commit "mfd: cros_ec: Load cros_ec_ucsi on supported ECs".
- Added new commit "mfd: cros_ec: Don't load charger with UCSI".
- Link to v4: https://lore.kernel.org/all/CAB2FV=6We88NrvN8NZYt8NkMFH9N_ZBGyUWVUpGwPdja2X_+NA@mail.gmail.com/T/

Changes in v4:
- Setup notifications before calling ucsi_register.
- Cancel work before destroying driver data.
- Link to v3: https://lore.kernel.org/r/20240403-public-ucsi-h-v3-0-f848e18c8ed2@chromium.org

Changes in v3:
- Moved driver from platform/chrome to usb/typec/ucsi.
- Used id_table instead of MODULE_ALIAS.
- Split EC header changes into seperate commit.
- Fixes from additional internal reviews and kernel bot warnings.
- Link to v2: https://lore.kernel.org/r/20240325-public-ucsi-h-v2-0-a6d716968bb1@chromium.org

Changes in v2:
- No code or commit message changes.
- Added drivers/platform/chrome maintainers for review.

Abhishek Pandit-Subedi (1):
  usb: typec: cros_ec_ucsi: Recover from write timeouts

Pavan Holla (2):
  platform/chrome: Update ChromeOS EC header for UCSI
  usb: typec: ucsi: Implement ChromeOS UCSI driver

 MAINTAINERS                                   |   7 +
 drivers/usb/typec/ucsi/Kconfig                |  13 +
 drivers/usb/typec/ucsi/Makefile               |   1 +
 drivers/usb/typec/ucsi/cros_ec_ucsi.c         | 329 ++++++++++++++++++
 .../linux/platform_data/cros_ec_commands.h    |  28 +-
 5 files changed, 377 insertions(+), 1 deletion(-)
 create mode 100644 drivers/usb/typec/ucsi/cros_ec_ucsi.c

-- 
2.47.0.338.g60cca15819-goog


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2024-11-28 15:37 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-15 15:52 [PATCH v7 0/3] usb: typec: Implement UCSI driver for ChromeOS Łukasz Bartosik
2024-11-15 15:52 ` [PATCH v7 1/3] platform/chrome: Update ChromeOS EC header for UCSI Łukasz Bartosik
2024-11-15 15:52 ` [PATCH v7 2/3] usb: typec: ucsi: Implement ChromeOS UCSI driver Łukasz Bartosik
2024-11-15 17:00   ` Dmitry Baryshkov
2024-11-18 10:09     ` Łukasz Bartosik
2024-11-18 10:21       ` Dmitry Baryshkov
2024-11-18 10:38         ` Łukasz Bartosik
2024-11-18 11:08           ` Dmitry Baryshkov
2024-11-18 11:18             ` Łukasz Bartosik
2024-11-21 23:05               ` Dmitry Baryshkov
2024-11-28 10:09                 ` Łukasz Bartosik
2024-11-28 14:46   ` Heikki Krogerus
2024-11-28 15:37     ` Łukasz Bartosik
2024-11-15 15:52 ` [PATCH v7 3/3] usb: typec: cros_ec_ucsi: Recover from write timeouts Łukasz Bartosik

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.