On Fri, Jul 18, 2025 at 11:08:56AM +0530, Krishna Kurapati wrote:
Deprecate usage of extcon functionality from the glue driver.
It's not "deprecate", it is "delete". "deprecate" means that you don't
want future users of this, you are flat out deleting it entirely.
Now
that the glue driver is a flattened implementation, all existing
DTs would eventually move to new bindings.
When is this happening?
While doing so let them
make use of role-switch/ typec frameworks to provide role data
rather than using extcon. None of the existing in-kernel extcon users
have moved to using new bindings yet, so this change doesn't affect
any existing users.
I don't understand, who does this affect?
On upstream, summary of targets/platforms using extcon is as follows:
What is "upstream" here? In-tree? We only have one development place :)
1. MSM8916 and MSM8939 use Chipidea controller, hence the changes have no
effect on them.
2. Of the other extcon users, most of them use "linux,extcon-usb-gpio"
driver which relies on id/vbus gpios to inform role changes. This can be
transitioned to role switch based driver (usb-conn-gpio) while flattening
those platforms to move away from extcon and rely on role switching.
"most" do, but not all.
3. The one target that uses dwc3 controller and extcon and is not based
on reading gpios is "arch/arm64/boot/dts/qcom/msm8996-xiaomi-common.dtsi".
This platform uses TI's Type-C Port controller chip to provide extcon. If
usb on this platform is being flattened, then effort should be put in to
define a usb-c-connector device in DT and make use of role switch in
TUSB320L driver.
I really still do not understand what is happening here.
Does this break existing in-tree users? If yes, we can't do that. If
no, they this is just unused code? That's all that we should be
concerned about here.