cros_ec: Use udevice instead of cros_ec_dev for keyboard functions
In preparation for converting the cros_ec keyboard driver to driver model, adjust the cros_ec functions it will use to use a normal struct udevice. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
parent
66877b0f5f
commit
745009c4d0
|
@ -54,7 +54,7 @@ static int check_for_keys(struct keyb *config,
|
||||||
unsigned int row, col, bit, data;
|
unsigned int row, col, bit, data;
|
||||||
int num_keys;
|
int num_keys;
|
||||||
|
|
||||||
if (cros_ec_scan_keyboard(config->dev, &scan)) {
|
if (cros_ec_scan_keyboard(config->dev->dev, &scan)) {
|
||||||
debug("%s: keyboard scan failed\n", __func__);
|
debug("%s: keyboard scan failed\n", __func__);
|
||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
@ -139,7 +139,7 @@ int cros_ec_kbc_check(struct input_config *input)
|
||||||
* may return 0 before all keys have been read from the EC.
|
* may return 0 before all keys have been read from the EC.
|
||||||
*/
|
*/
|
||||||
do {
|
do {
|
||||||
irq_pending = cros_ec_interrupt_pending(config.dev);
|
irq_pending = cros_ec_interrupt_pending(config.dev->dev);
|
||||||
if (irq_pending) {
|
if (irq_pending) {
|
||||||
num_keys = check_for_keys(&config, keys, KBC_MAX_KEYS,
|
num_keys = check_for_keys(&config, keys, KBC_MAX_KEYS,
|
||||||
&same);
|
&same);
|
||||||
|
|
|
@ -358,9 +358,11 @@ static int ec_command(struct cros_ec_dev *dev, uint8_t cmd, int cmd_version,
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
int cros_ec_scan_keyboard(struct cros_ec_dev *dev, struct mbkp_keyscan *scan)
|
int cros_ec_scan_keyboard(struct udevice *dev, struct mbkp_keyscan *scan)
|
||||||
{
|
{
|
||||||
if (ec_command(dev, EC_CMD_MKBP_STATE, 0, NULL, 0, scan,
|
struct cros_ec_dev *cdev = dev_get_uclass_priv(dev);
|
||||||
|
|
||||||
|
if (ec_command(cdev, EC_CMD_MKBP_STATE, 0, NULL, 0, scan,
|
||||||
sizeof(scan->data)) != sizeof(scan->data))
|
sizeof(scan->data)) != sizeof(scan->data))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
|
@ -549,13 +551,15 @@ int cros_ec_reboot(struct cros_ec_dev *dev, enum ec_reboot_cmd cmd,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int cros_ec_interrupt_pending(struct cros_ec_dev *dev)
|
int cros_ec_interrupt_pending(struct udevice *dev)
|
||||||
{
|
{
|
||||||
|
struct cros_ec_dev *cdev = dev_get_uclass_priv(dev);
|
||||||
|
|
||||||
/* no interrupt support : always poll */
|
/* no interrupt support : always poll */
|
||||||
if (!dm_gpio_is_valid(&dev->ec_int))
|
if (!dm_gpio_is_valid(&cdev->ec_int))
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
|
|
||||||
return dm_gpio_get_value(&dev->ec_int);
|
return dm_gpio_get_value(&cdev->ec_int);
|
||||||
}
|
}
|
||||||
|
|
||||||
int cros_ec_info(struct cros_ec_dev *dev, struct ec_response_mkbp_info *info)
|
int cros_ec_info(struct cros_ec_dev *dev, struct ec_response_mkbp_info *info)
|
||||||
|
|
|
@ -81,7 +81,7 @@ int cros_ec_read_id(struct cros_ec_dev *dev, char *id, int maxlen);
|
||||||
* @param scan Place to put the scan results
|
* @param scan Place to put the scan results
|
||||||
* @return 0 if ok, -1 on error
|
* @return 0 if ok, -1 on error
|
||||||
*/
|
*/
|
||||||
int cros_ec_scan_keyboard(struct cros_ec_dev *dev, struct mbkp_keyscan *scan);
|
int cros_ec_scan_keyboard(struct udevice *dev, struct mbkp_keyscan *scan);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Read which image is currently running on the CROS-EC device.
|
* Read which image is currently running on the CROS-EC device.
|
||||||
|
@ -125,7 +125,7 @@ int cros_ec_reboot(struct cros_ec_dev *dev, enum ec_reboot_cmd cmd,
|
||||||
* @param dev CROS-EC device
|
* @param dev CROS-EC device
|
||||||
* @return 0 if no interrupt is pending
|
* @return 0 if no interrupt is pending
|
||||||
*/
|
*/
|
||||||
int cros_ec_interrupt_pending(struct cros_ec_dev *dev);
|
int cros_ec_interrupt_pending(struct udevice *dev);
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
CROS_EC_OK,
|
CROS_EC_OK,
|
||||||
|
|
Loading…
Reference in New Issue