sandbox: Find keyboard driver using driver model
The cros-ec keyboard is always a child of the cros-ec node. Rather than searching the device tree, looking at the children. Remove the compat string which is now unused. Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
@@ -517,6 +517,7 @@ int cros_ec_probe(struct udevice *dev)
|
||||
struct ec_state *ec = dev->priv;
|
||||
struct cros_ec_dev *cdev = dev->uclass_priv;
|
||||
const void *blob = gd->fdt_blob;
|
||||
struct udevice *keyb_dev;
|
||||
int node;
|
||||
int err;
|
||||
|
||||
@@ -525,7 +526,15 @@ int cros_ec_probe(struct udevice *dev)
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
node = fdtdec_next_compatible(blob, 0, COMPAT_GOOGLE_CROS_EC_KEYB);
|
||||
node = -1;
|
||||
for (device_find_first_child(dev, &keyb_dev);
|
||||
keyb_dev;
|
||||
device_find_next_child(&keyb_dev)) {
|
||||
if (device_get_uclass_id(keyb_dev) == UCLASS_KEYBOARD) {
|
||||
node = keyb_dev->of_offset;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (node < 0) {
|
||||
debug("%s: No cros_ec keyboard found\n", __func__);
|
||||
} else if (keyscan_read_fdt_matrix(ec, blob, node)) {
|
||||
|
||||
Reference in New Issue
Block a user