[PULL REQUEST] i2c-for-6.13-rc1-part3

Wolfram Sang
2024-12-01T13:13:36Z

[-- Attachment #1: Type: text/plain, Size: 5237 bytes --]

Linus,

so it happened not only to Andi but also to me that a series nearly fell
through the cracks. This pull request contains a new feature which has
been ready for some weeks but I forgot that we agreed that I2C is its
path upstream :(

So, given the amount of review by experienced people and the fact that
the series only adds "opt-in" stuff (so less likely to cause
regressions), I hope it is still possible to get it into 6.13. It has
been in -next for a few days and build bots are happy now.

Thanks and regards,

Wolfram

The following changes since commit aaf20f870da056752f6386693cc0d8e25421ef35:

Merge tag 'rpmsg-v6.13' of git://git.kernel.org/pub/scm/linux/kernel/git/remoteproc/linux (2024-11-26 18:36:55 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git tags/i2c-for-6.13-rc1-part3

for you to fetch changes up to caf4bdb558cbc9893524b0a15e6423ee6305cb0c:

MAINTAINERS: fix typo in I2C OF COMPONENT PROBER (2024-11-29 12:56:05 +0100)

----------------------------------------------------------------
i2c-for-6.13-rc1-part3

core: add of based component probing

Some devices are designed and manufactured with some components having
multiple drop-in replacement options. These components are often
connected to the mainboard via ribbon cables, having the same signals
and pin assignments across all options. These may include the display
panel and touchscreen on laptops and tablets, and the trackpad on
laptops. Sometimes which component option is used in a particular device
can be detected by some firmware provided identifier, other times that
information is not available, and the kernel has to try to probe each
device.

Instead of a delicate dance between drivers and device tree quirks, this
change introduces a simple I2C component probe function. For a given
class of devices on the same I2C bus, it will go through all of them,
doing a simple I2C read transfer and see which one of them responds. It
will then enable the device that responds.

----------------------------------------------------------------
Chen-Yu Tsai (8):
of: dynamic: Add of_changeset_update_prop_string
of: base: Add for_each_child_of_node_with_prefix()
i2c: Introduce OF component probe function
i2c: of-prober: Add simple helpers for regulator support
i2c: of-prober: Add GPIO support to simple helpers
platform/chrome: Introduce device tree hardware prober
arm64: dts: mediatek: mt8173-elm-hana: Mark touchscreens and trackpads as fail
of: base: Document prefix argument for of_get_next_child_with_prefix()

Liam Zuiderhoek (1):
i2c: Fix whitespace style issue

Lukas Bulwahn (1):
MAINTAINERS: fix typo in I2C OF COMPONENT PROBER

with much appreciated quality assurance from
----------------------------------------------------------------
Andrey Skvortsov (1):
(Test) i2c: of-prober: Add GPIO support to simple helpers

Andy Shevchenko (3):
(Rev.) i2c: of-prober: Add GPIO support to simple helpers
(Rev.) i2c: of-prober: Add simple helpers for regulator support
(Rev.) i2c: Introduce OF component probe function

AngeloGioacchino Del Regno (7):
(Rev.) arm64: dts: mediatek: mt8173-elm-hana: Mark touchscreens and trackpads as fail
(Rev.) platform/chrome: Introduce device tree hardware prober
(Rev.) i2c: of-prober: Add GPIO support to simple helpers
(Rev.) i2c: of-prober: Add simple helpers for regulator support
(Rev.) i2c: Introduce OF component probe function
(Rev.) of: base: Add for_each_child_of_node_with_prefix()
(Rev.) of: dynamic: Add of_changeset_update_prop_string

Douglas Anderson (5):
(Rev.) arm64: dts: mediatek: mt8173-elm-hana: Mark touchscreens and trackpads as fail
(Rev.) platform/chrome: Introduce device tree hardware prober
(Rev.) i2c: of-prober: Add GPIO support to simple helpers
(Rev.) i2c: of-prober: Add simple helpers for regulator support
(Rev.) i2c: Introduce OF component probe function

Rob Herring (Arm) (2):
(Rev.) of: base: Add for_each_child_of_node_with_prefix()
(Rev.) of: dynamic: Add of_changeset_update_prop_string

MAINTAINERS | 8 +
arch/arm64/boot/dts/mediatek/mt8173-elm-hana.dtsi | 14 +
arch/arm64/boot/dts/mediatek/mt8173-elm.dtsi | 4 +-
drivers/i2c/Makefile | 1 +
drivers/i2c/i2c-core-of-prober.c | 415 ++++++++++++++++++++++
drivers/i2c/i2c-core-smbus.c | 2 +-
drivers/of/base.c | 36 ++
drivers/of/dynamic.c | 44 +++
drivers/platform/chrome/Kconfig | 11 +
drivers/platform/chrome/Makefile | 1 +
drivers/platform/chrome/chromeos_of_hw_prober.c | 154 ++++++++
include/linux/i2c-of-prober.h | 140 ++++++++
include/linux/of.h | 13 +
13 files changed, 840 insertions(+), 3 deletions(-)
create mode 100644 drivers/i2c/i2c-core-of-prober.c
create mode 100644 drivers/platform/chrome/chromeos_of_hw_prober.c
create mode 100644 include/linux/i2c-of-prober.h

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]