xref: /aosp_15_r20/external/coreboot/src/device/gpio.c (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <console/console.h>
4 #include <device/device.h>
5 #include <device/gpio.h>
6 #include <stddef.h>
7 
dev_get_gpio_ops(struct device * dev)8 const struct gpio_operations *dev_get_gpio_ops(struct device *dev)
9 {
10 	if (!dev) {
11 		printk(BIOS_ERR, "Could not get gpio operations, device is NULL.");
12 		return NULL;
13 	} else if (!dev->ops) {
14 		printk(BIOS_ERR, "Could not get gpio operations, dev->ops is NULL.");
15 		return NULL;
16 	} else if (!dev->ops->ops_gpio) {
17 		printk(BIOS_ERR, "Could not get gpio operations, ops_gpio is NULL.");
18 		return NULL;
19 	}
20 
21 	return dev->ops->ops_gpio;
22 }
23