Hello Lee,
On 09/18/2014 09:49 AM, Javier Martinez Canillas wrote:
>>> int cros_ec_register(struct cros_ec_device *ec_dev)
>>> {
>>> struct device *dev = ec_dev->dev;
>>> + struct device_node *node = dev->of_node;
>>> int err = 0;
>>>
>>> if (ec_dev->din_size) {
>>> @@ -140,12 +129,12 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
>>>
>>> mutex_init(&ec_dev->lock);
>>>
>>> - err = mfd_add_devices(dev, 0, cros_devs,
>>> - ARRAY_SIZE(cros_devs),
>>> - NULL, ec_dev->irq, NULL);
>>> - if (err) {
>>> - dev_err(dev, "failed to add mfd devices\n");
>>> - return err;
>>
>> So these devices will only ever probe with DT now ...
>>
>
> Well, these are preparatory patches to reduce the delta between upstream and
> the downstream so the missing functionality could be added. One of the missing
> drivers is the cros_ec_dev.c [0] which allows user-space to access the
> ChromeOS Embedded Controller using a virtual character device (/dev/cros_ec).
>
> Since that is a virtual device, it does not fit on the DT which only describes
> hw and also is used on x86 machines so that subdevice is still probed using
> mfd_add_devices() and the mfd_cells array is not empty in the downstream
> cros_ec driver [1].
>
I posted a new revision (v4) of the series but dropped this patch since this
change probably makes more sense once the cros_ec_dev driver lands. Since then
the mfd cells array will not be empty and not all subdevices will be probed
with of_platform_populate().
Best regards,
Javier
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html