Messages in this thread | | | Date | Fri, 1 Mar 2019 08:49:01 +0530 | From | Rushikesh S Kadam <> | Subject | Re: [PATCH] cros_ec: instantiate properly Intel ISH MCU device |
| |
Thanks Enric, Jett, Gwendal & Andy for taking timeout to review the patch & provide detailed inputs.
Couple of acks below.
On Thu, Feb 28, 2019 at 01:33:09PM +0100, Enric Balletbo Serra wrote: > Hi, > > Based on the discussion we had, only some few comments. > > Missatge de Rushikesh S Kadam <rushikesh.s.kadam@intel.com> del dia > dg., 24 de febr. 2019 a les 10:15: > > > > Intel Integrated Sensor Hub (ISH) is also a MCU running EC > > having feature bit EC_FEATURE_ISH. Instantiate it as a special > > CrOS EC device with device name 'cros_ish'. > > > > Signed-off-by: Rushikesh S Kadam <rushikesh.s.kadam@intel.com> > > --- > > drivers/mfd/cros_ec_dev.c | 10 ++++++++++ > > include/linux/mfd/cros_ec.h | 1 + > > include/linux/mfd/cros_ec_commands.h | 2 ++ > > Better if you use the "mfd: cros_ec:" prefix in the next version so > it's clear that this should go through the MFD tree.
Ok, will do.
> > > 3 files changed, 13 insertions(+) > > > > diff --git a/drivers/mfd/cros_ec_dev.c b/drivers/mfd/cros_ec_dev.c > > index 2d0fee4..be499b8 100644 > > --- a/drivers/mfd/cros_ec_dev.c > > +++ b/drivers/mfd/cros_ec_dev.c > > @@ -414,6 +414,16 @@ static int ec_device_probe(struct platform_device *pdev) > > device_initialize(&ec->class_dev); > > cdev_init(&ec->cdev, &fops); > > > > + /* check whether this is actually a Intel ISH rather than an EC */ > > "Check whether this is actually an Integrated Sensor Hub (ISH) rather > than an EC"?
Ack.
> > > + if (cros_ec_check_features(ec, EC_FEATURE_ISH)) { > > + dev_info(dev, "Intel ISH MCU detected.\n"); > > dev_info(dev, "CrOS ISH MCU detected.\n"); ?
Ack.
> > > + /* > > + * Help userspace differentiating ECs from ISH MCU, > > + * regardless of the probing order. > > + */ > > + ec_platform->ec_name = CROS_EC_DEV_ISH_NAME; > > + } > > + > > /* > > * Add the class device > > * Link to the character device for creating the /dev entry > > diff --git a/include/linux/mfd/cros_ec.h b/include/linux/mfd/cros_ec.h > > index de8b588..00c5765 100644 > > --- a/include/linux/mfd/cros_ec.h > > +++ b/include/linux/mfd/cros_ec.h > > @@ -24,6 +24,7 @@ > > > > #define CROS_EC_DEV_NAME "cros_ec" > > #define CROS_EC_DEV_PD_NAME "cros_pd" > > +#define CROS_EC_DEV_ISH_NAME "cros_ish" > > > > /* > > * The EC is unresponsive for a time after a reboot command. Add a > > diff --git a/include/linux/mfd/cros_ec_commands.h b/include/linux/mfd/cros_ec_commands.h > > index fc91082..9276c3c 100644 > > --- a/include/linux/mfd/cros_ec_commands.h > > +++ b/include/linux/mfd/cros_ec_commands.h > > @@ -856,6 +856,8 @@ enum ec_feature_code { > > EC_FEATURE_RTC = 27, > > /* EC supports CEC commands */ > > EC_FEATURE_CEC = 35, > > + /* The MCU is an Intel Integrated Sensor Hub */ > > + EC_FEATURE_ISH = 40, > > Just a note that we will have a trivial conflict to solve with > https://lkml.org/lkml/2019/2/27/723
Thanks
Rushikesh
> > > }; > > > > #define EC_FEATURE_MASK_0(event_code) (1UL << (event_code % 32)) > > -- > > 1.9.1 > > > > Best regards, > Enric
--
| |