Lines Matching full:device

3  * device.h - generic, centralized driver model
29 #include <asm/device.h>
31 struct device;
65 * struct bus_type - The bus type of the device
69 * @dev_root: Default device to use as the parent.
72 * @drv_groups: Default attributes of the device drivers on the bus.
73 * @match: Called, perhaps multiple times, whenever a new device or driver
75 * given device can be handled by the given driver and zero
77 * the driver supports the device is not possible. In case of
78 * -EPROBE_DEFER it will queue the device for deferred probing.
79 * @uevent: Called when a device is added, removed, or a few other things
81 * @probe: Called when a new device or driver add to this bus, and callback
82 * the specific driver's probe to initial the matched device.
83 * @remove: Called when a device removed from this bus.
84 * @shutdown: Called at shut-down time to quiesce the device.
86 * @online: Called to put the device back online (after offlining it).
87 * @offline: Called to put the device offline for hot-removal. May fail.
89 * @suspend: Called when a device on this bus wants to go to sleep mode.
90 * @resume: Called to bring a device on this bus out of sleep mode.
91 * @num_vf: Called to find out how many virtual functions a device on this
93 * @dma_configure: Called to setup DMA configuration on a device on
96 * device driver's pm-ops.
103 * @need_parent_lock: When probing or removing a device on this bus, the
104 * device core should lock the device's parent.
107 * purposes of the device model, all devices are connected via a bus, even if
109 * A USB controller is usually a PCI device, for example. The device model
118 struct device *dev_root;
123 int (*match)(struct device *dev, struct device_driver *drv);
124 int (*uevent)(struct device *dev, struct kobj_uevent_env *env);
125 int (*probe)(struct device *dev);
126 int (*remove)(struct device *dev);
127 void (*shutdown)(struct device *dev);
129 int (*online)(struct device *dev);
130 int (*offline)(struct device *dev);
132 int (*suspend)(struct device *dev, pm_message_t state);
133 int (*resume)(struct device *dev);
135 int (*num_vf)(struct device *dev);
137 int (*dma_configure)(struct device *dev);
162 struct device *start,
164 struct device *subsys_dev_iter_next(struct subsys_dev_iter *iter);
167 int device_match_name(struct device *dev, const void *name);
168 int device_match_of_node(struct device *dev, const void *np);
169 int device_match_fwnode(struct device *dev, const void *fwnode);
170 int device_match_devt(struct device *dev, const void *pdevt);
171 int device_match_acpi_dev(struct device *dev, const void *adev);
172 int device_match_any(struct device *dev, const void *unused);
174 int bus_for_each_dev(struct bus_type *bus, struct device *start, void *data,
175 int (*fn)(struct device *dev, void *data));
176 struct device *bus_find_device(struct bus_type *bus, struct device *start,
178 int (*match)(struct device *dev, const void *data));
180 * bus_find_device_by_name - device iterator for locating a particular device
183 * @start: Device to begin with
184 * @name: name of the device to match
186 static inline struct device *bus_find_device_by_name(struct bus_type *bus, in bus_find_device_by_name()
187 struct device *start, in bus_find_device_by_name()
194 * bus_find_device_by_of_node : device iterator for locating a particular device
197 * @np: of_node of the device to match.
199 static inline struct device *
206 * bus_find_device_by_fwnode : device iterator for locating a particular device
209 * @fwnode: fwnode of the device to match.
211 static inline struct device *
218 * bus_find_device_by_devt : device iterator for locating a particular device
219 * matching the device type.
221 * @devt: device type of the device to match.
223 static inline struct device *bus_find_device_by_devt(struct bus_type *bus, in bus_find_device_by_devt()
230 * bus_find_next_device - Find the next device after a given device in a
233 * @cur: device to begin the search with.
235 static inline struct device *
236 bus_find_next_device(struct bus_type *bus,struct device *cur) in bus_find_next_device()
245 * bus_find_device_by_acpi_dev : device iterator for locating a particular device
246 * matching the ACPI COMPANION device.
248 * @adev: ACPI COMPANION device to match.
250 static inline struct device *
256 static inline struct device *
263 struct device *subsys_find_device_by_id(struct bus_type *bus, unsigned int id,
264 struct device *hint);
268 int (*compare)(const struct device *a,
269 const struct device *b));
283 /* All 4 notifers below get called with the target struct device *
285 * with the device lock held in the core, so be careful.
287 #define BUS_NOTIFY_ADD_DEVICE 0x00000001 /* device added */
288 #define BUS_NOTIFY_DEL_DEVICE 0x00000002 /* device to be removed */
289 #define BUS_NOTIFY_REMOVED_DEVICE 0x00000003 /* device removed */
292 #define BUS_NOTIFY_BOUND_DRIVER 0x00000005 /* driver bound to device */
296 from the device */
303 * enum probe_type - device driver probe type to try
304 * Device drivers may opt in for special handling of their
315 * device registration (with the exception of -EPROBE_DEFER
331 * struct device_driver - The basic device driver structure
332 * @name: Name of the device driver.
333 * @bus: The bus which the device of this driver belongs to.
340 * @probe: Called to query the existence of a specific device,
342 * to a specific device.
343 * @remove: Called when the device is removed from the system to
344 * unbind a device from this driver.
345 * @shutdown: Called at shut-down time to quiesce the device.
346 * @suspend: Called to put the device to sleep mode. Usually to a
348 * @resume: Called to bring a device from sleep mode.
351 * @dev_groups: Additional attributes attached to device instance once the
353 * @pm: Power management operations of the device which matched
355 * @coredump: Called when sysfs entry is written to. The device driver
361 * The device driver-model tracks all of the drivers known to the system.
364 * system, however, a number of other things become possible. Device drivers
366 * of any specific device.
381 int (*probe) (struct device *dev);
382 int (*remove) (struct device *dev);
383 void (*shutdown) (struct device *dev);
384 int (*suspend) (struct device *dev, pm_message_t state);
385 int (*resume) (struct device *dev);
390 void (*coredump) (struct device *dev);
426 struct device *start,
428 int (*fn)(struct device *dev,
430 struct device *driver_find_device(struct device_driver *drv,
431 struct device *start, const void *data,
432 int (*match)(struct device *dev, const void *data));
435 * driver_find_device_by_name - device iterator for locating a particular device
438 * @name: name of the device to match
440 static inline struct device *driver_find_device_by_name(struct device_driver *drv, in driver_find_device_by_name()
447 * driver_find_device_by_of_node- device iterator for locating a particular device
452 static inline struct device *
460 * driver_find_device_by_fwnode- device iterator for locating a particular device
465 static inline struct device *
473 * driver_find_device_by_devt- device iterator for locating a particular device
478 static inline struct device *driver_find_device_by_devt(struct device_driver *drv, in driver_find_device_by_devt()
484 static inline struct device *driver_find_next_device(struct device_driver *drv, in driver_find_next_device()
485 struct device *start) in driver_find_next_device()
492 * driver_find_device_by_acpi_dev : device iterator for locating a particular
493 * device matching the ACPI_COMPANION device.
495 * @adev: ACPI_COMPANION device to match.
497 static inline struct device *
504 static inline struct device *
511 void driver_deferred_probe_add(struct device *dev);
512 int driver_deferred_probe_check_state(struct device *dev);
513 int driver_deferred_probe_check_state_continue(struct device *dev);
516 * struct subsys_interface - interfaces to device functions
517 * @name: name of the device function
520 * @add_dev: device hookup to device function handler
521 * @remove_dev: device hookup to device function handler
532 int (*add_dev)(struct device *dev, struct subsys_interface *sif);
533 void (*remove_dev)(struct device *dev, struct subsys_interface *sif);
545 * struct class - device classes
551 * @dev_uevent: Called when a device is added, removed from this class, or a
556 * @dev_release: Called to release the device.
559 * @namespace: Namespace of the device belongs to this class.
562 * device's namespace.
563 * @pm: The default device power management operations of this class.
567 * A class is a higher-level view of a device that abstracts out low-level
581 int (*dev_uevent)(struct device *dev, struct kobj_uevent_env *env);
582 char *(*devnode)(struct device *dev, umode_t *mode);
585 void (*dev_release)(struct device *dev);
587 int (*shutdown_pre)(struct device *dev);
590 const void *(*namespace)(struct device *dev);
592 void (*get_ownership)(struct device *dev, kuid_t *uid, kgid_t *gid);
621 int class_compat_create_link(struct class_compat *cls, struct device *dev,
622 struct device *device_link);
623 void class_compat_remove_link(struct class_compat *cls, struct device *dev,
624 struct device *device_link);
628 struct device *start,
630 extern struct device *class_dev_iter_next(struct class_dev_iter *iter);
633 extern int class_for_each_device(struct class *class, struct device *start,
635 int (*fn)(struct device *dev, void *data));
636 extern struct device *class_find_device(struct class *class,
637 struct device *start, const void *data,
638 int (*match)(struct device *, const void *));
641 * class_find_device_by_name - device iterator for locating a particular device
644 * @name: name of the device to match
646 static inline struct device *class_find_device_by_name(struct class *class, in class_find_device_by_name()
653 * class_find_device_by_of_node : device iterator for locating a particular device
656 * @np: of_node of the device to match.
658 static inline struct device *
665 * class_find_device_by_fwnode : device iterator for locating a particular device
668 * @fwnode: fwnode of the device to match.
670 static inline struct device *
678 * class_find_device_by_devt : device iterator for locating a particular device
679 * matching the device type.
681 * @devt: device type of the device to match.
683 static inline struct device *class_find_device_by_devt(struct class *class, in class_find_device_by_devt()
692 * class_find_device_by_acpi_dev : device iterator for locating a particular
693 * device matching the ACPI_COMPANION device.
695 * @adev: ACPI_COMPANION device to match.
697 static inline struct device *
703 static inline struct device *
764 int (*add_dev) (struct device *, struct class_interface *);
765 void (*remove_dev) (struct device *, struct class_interface *);
785 * The type of device, "struct device" is embedded in. A class
788 * This identifies the device type and carries type-specific
796 int (*uevent)(struct device *dev, struct kobj_uevent_env *env);
797 char *(*devnode)(struct device *dev, umode_t *mode,
799 void (*release)(struct device *dev);
804 /* interface for exporting device attributes */
807 ssize_t (*show)(struct device *dev, struct device_attribute *attr,
809 ssize_t (*store)(struct device *dev, struct device_attribute *attr,
818 ssize_t device_show_ulong(struct device *dev, struct device_attribute *attr,
820 ssize_t device_store_ulong(struct device *dev, struct device_attribute *attr,
822 ssize_t device_show_int(struct device *dev, struct device_attribute *attr,
824 ssize_t device_store_int(struct device *dev, struct device_attribute *attr,
826 ssize_t device_show_bool(struct device *dev, struct device_attribute *attr,
828 ssize_t device_store_bool(struct device *dev, struct device_attribute *attr,
855 extern int device_create_file(struct device *device,
857 extern void device_remove_file(struct device *dev,
859 extern bool device_remove_file_self(struct device *dev,
861 extern int __must_check device_create_bin_file(struct device *dev,
863 extern void device_remove_bin_file(struct device *dev,
866 /* device resource management */
867 typedef void (*dr_release_t)(struct device *dev, void *res);
868 typedef int (*dr_match_t)(struct device *dev, void *res, void *match_data);
886 extern void devres_for_each_res(struct device *dev, dr_release_t release,
888 void (*fn)(struct device *, void *, void *),
891 extern void devres_add(struct device *dev, void *res);
892 extern void *devres_find(struct device *dev, dr_release_t release,
894 extern void *devres_get(struct device *dev, void *new_res,
896 extern void *devres_remove(struct device *dev, dr_release_t release,
898 extern int devres_destroy(struct device *dev, dr_release_t release,
900 extern int devres_release(struct device *dev, dr_release_t release,
904 extern void * __must_check devres_open_group(struct device *dev, void *id,
906 extern void devres_close_group(struct device *dev, void *id);
907 extern void devres_remove_group(struct device *dev, void *id);
908 extern int devres_release_group(struct device *dev, void *id);
910 /* managed devm_k.alloc/kfree for device drivers */
911 extern void *devm_kmalloc(struct device *dev, size_t size, gfp_t gfp) __malloc;
913 char *devm_kvasprintf(struct device *dev, gfp_t gfp, const char *fmt,
916 char *devm_kasprintf(struct device *dev, gfp_t gfp, const char *fmt, ...) __malloc;
917 static inline void *devm_kzalloc(struct device *dev, size_t size, gfp_t gfp) in devm_kzalloc()
921 static inline void *devm_kmalloc_array(struct device *dev, in devm_kmalloc_array()
931 static inline void *devm_kcalloc(struct device *dev, in devm_kcalloc()
936 extern void devm_kfree(struct device *dev, const void *p);
937 extern char *devm_kstrdup(struct device *dev, const char *s, gfp_t gfp) __malloc;
938 extern const char *devm_kstrdup_const(struct device *dev,
940 extern void *devm_kmemdup(struct device *dev, const void *src, size_t len,
943 extern unsigned long devm_get_free_pages(struct device *dev,
945 extern void devm_free_pages(struct device *dev, unsigned long addr);
947 void __iomem *devm_ioremap_resource(struct device *dev,
950 void __iomem *devm_of_iomap(struct device *dev,
955 int devm_add_action(struct device *dev, void (*action)(void *), void *data);
956 void devm_remove_action(struct device *dev, void (*action)(void *), void *data);
957 void devm_release_action(struct device *dev, void (*action)(void *), void *data);
959 static inline int devm_add_action_or_reset(struct device *dev, in devm_add_action_or_reset()
973 * @dev: Device to allocate per-cpu memory for
986 void __percpu *__devm_alloc_percpu(struct device *dev, size_t size,
988 void devm_free_percpu(struct device *dev, void __percpu *pdata);
1000 * struct device_connection - Device Connection Descriptor
1001 * @fwnode: The device node of the connected device
1023 void *device_connection_find_match(struct device *dev, const char *con_id,
1026 struct device *device_connection_find(struct device *dev, const char *con_id);
1032 * device_connections_add - Add multiple device connections at once
1033 * @cons: Zero terminated array of device connection descriptors
1044 * device_connections_remove - Remove multiple device connections at once
1045 * @cons: Zero terminated array of device connection descriptors
1056 * enum device_link_state - Device link states.
1074 * Device link flags.
1093 * struct device_link - Device link representation.
1094 * @supplier: The device on the supplier end of the link.
1095 * @s_node: Hook to the supplier device's list of links to consumers.
1096 * @consumer: The device on the consumer end of the link.
1097 * @c_node: Hook to the consumer device's list of links to suppliers.
1100 * @rpm_active: Whether or not the consumer device is runtime-PM-active.
1106 struct device *supplier;
1108 struct device *consumer;
1121 * enum dl_dev_state - Device driver presence tracking information.
1122 * @DL_DEV_NO_DRIVER: There is no driver attached to the device.
1124 * @DL_DEV_DRIVER_BOUND: The driver has been bound to the device.
1125 * @DL_DEV_UNBINDING: The driver is unbinding from the device.
1135 * struct dev_links_info - Device data related to device links.
1147 * struct device - The basic device structure
1148 * @parent: The device's "parent" device, the device to which it is attached.
1149 * In most cases, a parent device is some sort of bus or host
1150 * controller. If parent is NULL, the device, is a top-level device,
1152 * @p: Holds the private data of the driver core portions of the device.
1155 * @init_name: Initial name of the device.
1156 * @type: The type of device.
1157 * This identifies the device type and carries type-specific
1162 * @bus: Type of bus device is on.
1164 * @platform_data: Platform data specific to the device.
1173 * @links: Links to suppliers and consumers of this device.
1174 * @power: For device power management.
1179 * @pins: For device pin management.
1182 * @msi_domain: The generic MSI domain this device is using.
1183 * @numa_node: NUMA node this device is close to.
1184 * @dma_ops: DMA mapping operations for this device.
1185 * @dma_mask: Dma mask (if dma'ble device).
1190 * limit than the device itself supports.
1194 * @dma_pools: Dma pools (if dma'ble device).
1198 * @of_node: Associated device tree node.
1199 * @fwnode: Associated device node supplied by platform firmware.
1201 * @id: device instance
1202 * @devres_lock: Spinlock to protect the resource of the device.
1203 * @devres_head: The resources list of the device.
1204 * @knode_class: The node used to add the device to the class list.
1205 * @class: The class of the device.
1207 * @release: Callback to free the device after all references have
1209 * device (i.e. the bus driver that discovered the device).
1210 * @iommu_group: IOMMU group the device belongs to.
1212 * @iommu_param: Per device generic IOMMU runtime data
1214 * @offline_disabled: If set, the device is permanently online.
1216 * @of_node_reused: Set if the device-tree node is shared with an ancestor
1217 * device.
1218 * @dma_coherent: this particular device is dma coherent, even if the
1221 * At the lowest level, every device in a Linux system is represented by an
1222 * instance of struct device. The device structure contains the information
1223 * that the device model core needs to model the system. Most subsystems,
1225 * result, it is rare for devices to be represented by bare device structures;
1227 * a higher-level representation of the device.
1229 struct device { struct
1231 struct device *parent; argument
1235 const char *init_name; /* initial name of the device */ argument
1238 struct bus_type *bus; /* type of bus device is on */ argument
1240 device */
1241 void *platform_data; /* Platform specific data, device argument
1267 u64 *dma_mask; /* dma mask (if dma'able device) */ argument
1291 struct device_node *of_node; /* associated device tree node */ argument
1292 struct fwnode_handle *fwnode; /* firmware device node */ argument
1295 int numa_node; /* NUMA node this device is close to */ argument
1298 u32 id; /* device instance */ argument
1306 void (*release)(struct device *dev); argument
1321 static inline struct device *kobj_to_dev(struct kobject *kobj) in kobj_to_dev() argument
1323 return container_of(kobj, struct device, kobj); in kobj_to_dev()
1327 * device_iommu_mapped - Returns true when the device DMA is translated
1329 * @dev: Device to perform the check on
1331 static inline bool device_iommu_mapped(struct device *dev) in device_iommu_mapped()
1336 /* Get the wakeup routines, which depend on struct device */
1339 static inline const char *dev_name(const struct device *dev) in dev_name()
1349 int dev_set_name(struct device *dev, const char *name, ...);
1352 static inline int dev_to_node(struct device *dev) in dev_to_node()
1356 static inline void set_dev_node(struct device *dev, int node) in set_dev_node()
1361 static inline int dev_to_node(struct device *dev) in dev_to_node()
1365 static inline void set_dev_node(struct device *dev, int node) in set_dev_node()
1370 static inline struct irq_domain *dev_get_msi_domain(const struct device *dev) in dev_get_msi_domain()
1379 static inline void dev_set_msi_domain(struct device *dev, struct irq_domain *d) in dev_set_msi_domain()
1386 static inline void *dev_get_drvdata(const struct device *dev) in dev_get_drvdata()
1391 static inline void dev_set_drvdata(struct device *dev, void *data) in dev_set_drvdata()
1396 static inline struct pm_subsys_data *dev_to_psd(struct device *dev) in dev_to_psd()
1401 static inline unsigned int dev_get_uevent_suppress(const struct device *dev) in dev_get_uevent_suppress()
1406 static inline void dev_set_uevent_suppress(struct device *dev, int val) in dev_set_uevent_suppress()
1411 static inline int device_is_registered(struct device *dev) in device_is_registered()
1416 static inline void device_enable_async_suspend(struct device *dev) in device_enable_async_suspend()
1422 static inline void device_disable_async_suspend(struct device *dev) in device_disable_async_suspend()
1428 static inline bool device_async_suspend_enabled(struct device *dev) in device_async_suspend_enabled()
1433 static inline bool device_pm_not_required(struct device *dev) in device_pm_not_required()
1438 static inline void device_set_pm_not_required(struct device *dev) in device_set_pm_not_required()
1443 static inline void dev_pm_syscore_device(struct device *dev, bool val) in dev_pm_syscore_device()
1450 static inline void dev_pm_set_driver_flags(struct device *dev, u32 flags) in dev_pm_set_driver_flags()
1455 static inline bool dev_pm_test_driver_flags(struct device *dev, u32 flags) in dev_pm_test_driver_flags()
1460 static inline void device_lock(struct device *dev) in device_lock()
1465 static inline int device_lock_interruptible(struct device *dev) in device_lock_interruptible()
1470 static inline int device_trylock(struct device *dev) in device_trylock()
1475 static inline void device_unlock(struct device *dev) in device_unlock()
1480 static inline void device_lock_assert(struct device *dev) in device_lock_assert()
1485 static inline struct device_node *dev_of_node(struct device *dev) in dev_of_node()
1497 extern int __must_check device_register(struct device *dev);
1498 extern void device_unregister(struct device *dev);
1499 extern void device_initialize(struct device *dev);
1500 extern int __must_check device_add(struct device *dev);
1501 extern void device_del(struct device *dev);
1502 extern int device_for_each_child(struct device *dev, void *data,
1503 int (*fn)(struct device *dev, void *data));
1504 extern int device_for_each_child_reverse(struct device *dev, void *data,
1505 int (*fn)(struct device *dev, void *data));
1506 extern struct device *device_find_child(struct device *dev, void *data,
1507 int (*match)(struct device *dev, void *data));
1508 extern struct device *device_find_child_by_name(struct device *parent,
1510 extern int device_rename(struct device *dev, const char *new_name);
1511 extern int device_move(struct device *dev, struct device *new_parent,
1513 extern const char *device_get_devnode(struct device *dev,
1517 static inline bool device_supports_offline(struct device *dev) in device_supports_offline()
1525 extern int device_offline(struct device *dev);
1526 extern int device_online(struct device *dev);
1527 extern void set_primary_fwnode(struct device *dev, struct fwnode_handle *fwnode);
1528 extern void set_secondary_fwnode(struct device *dev, struct fwnode_handle *fwnode);
1529 void device_set_of_node_from_dev(struct device *dev, const struct device *dev2);
1531 static inline int dev_num_vf(struct device *dev) in dev_num_vf()
1539 * Root device objects for grouping under /sys/devices
1541 extern struct device *__root_device_register(const char *name,
1548 extern void root_device_unregister(struct device *root);
1550 static inline void *dev_get_platdata(const struct device *dev) in dev_get_platdata()
1556 * Manual binding of a device to driver. See drivers/base/bus.c
1559 extern int __must_check device_bind_driver(struct device *dev);
1560 extern void device_release_driver(struct device *dev);
1561 extern int __must_check device_attach(struct device *dev);
1563 extern void device_initial_probe(struct device *dev);
1564 extern int __must_check device_reprobe(struct device *dev);
1566 extern bool device_is_bound(struct device *dev);
1572 struct device *device_create_vargs(struct class *cls, struct device *parent,
1576 struct device *device_create(struct class *cls, struct device *parent,
1580 struct device *device_create_with_groups(struct class *cls,
1581 struct device *parent, dev_t devt, void *drvdata,
1586 extern int __must_check device_add_groups(struct device *dev,
1588 extern void device_remove_groups(struct device *dev,
1591 static inline int __must_check device_add_group(struct device *dev, in device_add_group()
1599 static inline void device_remove_group(struct device *dev, in device_remove_group()
1607 extern int __must_check devm_device_add_groups(struct device *dev,
1609 extern void devm_device_remove_groups(struct device *dev,
1611 extern int __must_check devm_device_add_group(struct device *dev,
1613 extern void devm_device_remove_group(struct device *dev,
1618 * about devices and actions that the general device layer doesn't
1621 /* Notify platform of device discovery */
1622 extern int (*platform_notify)(struct device *dev);
1624 extern int (*platform_notify_remove)(struct device *dev);
1628 * get_device - atomically increment the reference count for the device.
1631 extern struct device *get_device(struct device *dev);
1632 extern void put_device(struct device *dev);
1633 extern bool kill_device(struct device *dev);
1636 extern int devtmpfs_create_node(struct device *dev);
1637 extern int devtmpfs_delete_node(struct device *dev);
1640 static inline int devtmpfs_create_node(struct device *dev) { return 0; } in devtmpfs_create_node()
1641 static inline int devtmpfs_delete_node(struct device *dev) { return 0; } in devtmpfs_delete_node()
1649 extern const char *dev_driver_string(const struct device *dev);
1651 /* Device links interface. */
1652 struct device_link *device_link_add(struct device *consumer,
1653 struct device *supplier, u32 flags);
1655 void device_link_remove(void *consumer, struct device *supplier);
1664 int dev_vprintk_emit(int level, const struct device *dev,
1667 int dev_printk_emit(int level, const struct device *dev, const char *fmt, ...);
1670 void dev_printk(const char *level, const struct device *dev,
1673 void _dev_emerg(const struct device *dev, const char *fmt, ...);
1675 void _dev_alert(const struct device *dev, const char *fmt, ...);
1677 void _dev_crit(const struct device *dev, const char *fmt, ...);
1679 void _dev_err(const struct device *dev, const char *fmt, ...);
1681 void _dev_warn(const struct device *dev, const char *fmt, ...);
1683 void _dev_notice(const struct device *dev, const char *fmt, ...);
1685 void _dev_info(const struct device *dev, const char *fmt, ...);
1690 int dev_vprintk_emit(int level, const struct device *dev, in dev_vprintk_emit()
1694 int dev_printk_emit(int level, const struct device *dev, const char *fmt, ...) in dev_printk_emit()
1697 static inline void __dev_printk(const char *level, const struct device *dev, in __dev_printk()
1701 void dev_printk(const char *level, const struct device *dev, in dev_printk()
1706 void _dev_emerg(const struct device *dev, const char *fmt, ...) in _dev_emerg()
1709 void _dev_crit(const struct device *dev, const char *fmt, ...) in _dev_crit()
1712 void _dev_alert(const struct device *dev, const char *fmt, ...) in _dev_alert()
1715 void _dev_err(const struct device *dev, const char *fmt, ...) in _dev_err()
1718 void _dev_warn(const struct device *dev, const char *fmt, ...) in _dev_warn()
1721 void _dev_notice(const struct device *dev, const char *fmt, ...) in _dev_notice()
1724 void _dev_info(const struct device *dev, const char *fmt, ...) in _dev_info()