[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <25dcuu7bli47etvyijpi4winx4t42jwjq5ld2de3vmzkucic5j@h3wejwqyo7p2>
Date: Thu, 26 Sep 2024 00:24:12 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
Cc: heikki.krogerus@...ux.intel.com, tzungbi@...nel.org, jthies@...gle.com,
pmalani@...omium.org, akuchynski@...gle.com, Benson Leung <bleung@...omium.org>,
Guenter Roeck <groeck@...omium.org>, chrome-platform@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 8/8] platform/chrome: cros_ec_typec: Disable auto_enter
On Wed, Sep 25, 2024 at 10:39:00AM GMT, Abhishek Pandit-Subedi wrote:
> On Wed, Sep 25, 2024 at 10:03 AM Dmitry Baryshkov
> <dmitry.baryshkov@...aro.org> wrote:
> >
> > On Wed, Sep 25, 2024 at 09:25:09AM GMT, Abhishek Pandit-Subedi wrote:
> > > Altmodes with cros_ec are either automatically entered by the EC or
> > > entered by typecd in userspace so we should not auto enter from the
> > > kernel.
> >
> > This makes policy decision for the whole platform. Consider somebody
> > running normal Linux distro on chromebooks. Can this be configured by
> > the userspace itself?
>
> This is just the default for when the driver registers. You will then
> find that there is now a sysfs entry for auto_enter that you can
> control from userspace to allow you to auto-enter the mode on partner
> attach (which you could probably write a udev rule for).
I think, a usual policy is to handle everything automatically, unless
userspace configures it in a different way. Otherwise it might be really
surprising to users, if the kernel expects an action from the
non-existing userspace agent.
> I still need to send a follow-up for how to handle auto-enter when
> there are multiple modes available on the partner that are all
> enabled. This first patch series is mostly about supporting existing
> use-case for ChromeOS.
Doesn't EC decide that, which AltMode to select?
> > > Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
> > > ---
> > >
> > > drivers/platform/chrome/cros_ec_typec.c | 2 ++
> > > 1 file changed, 2 insertions(+)
> > >
> > > diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c
> > > index ec13d84d11b8..e06a0f2712ce 100644
> > > --- a/drivers/platform/chrome/cros_ec_typec.c
> > > +++ b/drivers/platform/chrome/cros_ec_typec.c
> > > @@ -294,6 +294,7 @@ static int cros_typec_register_port_altmodes(struct cros_typec_data *typec,
> > > desc.svid = USB_TYPEC_DP_SID;
> > > desc.mode = USB_TYPEC_DP_MODE;
> > > desc.vdo = DP_PORT_VDO;
> > > + desc.no_auto_enter = true;
> > > amode = cros_typec_register_displayport(port, &desc,
> > > typec->ap_driven_altmode);
> > > if (IS_ERR(amode))
> > > @@ -314,6 +315,7 @@ static int cros_typec_register_port_altmodes(struct cros_typec_data *typec,
> > > memset(&desc, 0, sizeof(desc));
> > > desc.svid = USB_TYPEC_TBT_SID;
> > > desc.mode = TYPEC_ANY_MODE;
> > > + desc.no_auto_enter = true;
> > > amode = cros_typec_register_thunderbolt(port, &desc);
> > > if (IS_ERR(amode))
> > > return PTR_ERR(amode);
> > > --
> > > 2.46.0.792.g87dc391469-goog
> > >
> >
> > --
> > With best wishes
> > Dmitry
--
With best wishes
Dmitry
Powered by blists - more mailing lists