mfd: cros_ec: Support multiple EC in a system
Chromebooks can have more than one Embedded Controller so the cros_ec device id has to be incremented for each EC registered. Add a new structure to represent multiple EC as different char devices (e.g: /dev/cros_ec, /dev/cros_pd). It connects to cros_ec_device and allows sysfs inferface for cros_pd. Also reduce number of allocated objects, make chromeos sysfs class object a static and add refcounting to prevent object deletion while command is in progress. Signed-off-by: Gwendal Grignou <gwendal@chromium.org> Reviewed-by: Dmitry Torokhov <dtor@chromium.org> Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk> Tested-by: Heiko Stuebner <heiko@sntech.de> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-by: Olof Johansson <olof@lixom.net> Signed-off-by: Lee Jones <lee.jones@linaro.org>
This commit is contained in:
committed by
Lee Jones
parent
d365407079
commit
57b33ff077
@@ -302,7 +302,6 @@ static int cros_ec_i2c_probe(struct i2c_client *client,
|
||||
ec_dev->irq = client->irq;
|
||||
ec_dev->cmd_xfer = cros_ec_cmd_xfer_i2c;
|
||||
ec_dev->pkt_xfer = cros_ec_pkt_xfer_i2c;
|
||||
ec_dev->ec_name = client->name;
|
||||
ec_dev->phys_name = client->adapter->name;
|
||||
ec_dev->din_size = sizeof(struct ec_host_response_i2c) +
|
||||
sizeof(struct ec_response_get_protocol_info);
|
||||
|
||||
Reference in New Issue
Block a user