brintos

brintos / linux-shallow public Read only

0
0
Text · 2.2 KiB · 9042bca Raw
91 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#ifndef _LINUX_OF_DEVICE_H3#define _LINUX_OF_DEVICE_H4 5#include <linux/device/driver.h>6 7struct device;8struct of_device_id;9struct kobj_uevent_env;10 11#ifdef CONFIG_OF12extern const struct of_device_id *of_match_device(13	const struct of_device_id *matches, const struct device *dev);14 15/**16 * of_driver_match_device - Tell if a driver's of_match_table matches a device.17 * @drv: the device_driver structure to test18 * @dev: the device structure to match against19 */20static inline int of_driver_match_device(struct device *dev,21					 const struct device_driver *drv)22{23	return of_match_device(drv->of_match_table, dev) != NULL;24}25 26extern ssize_t of_device_modalias(struct device *dev, char *str, ssize_t len);27 28extern void of_device_uevent(const struct device *dev, struct kobj_uevent_env *env);29extern int of_device_uevent_modalias(const struct device *dev, struct kobj_uevent_env *env);30 31int of_dma_configure_id(struct device *dev,32		     struct device_node *np,33		     bool force_dma, const u32 *id);34static inline int of_dma_configure(struct device *dev,35				   struct device_node *np,36				   bool force_dma)37{38	return of_dma_configure_id(dev, np, force_dma, NULL);39}40 41void of_device_make_bus_id(struct device *dev);42 43#else /* CONFIG_OF */44 45static inline int of_driver_match_device(struct device *dev,46					 const struct device_driver *drv)47{48	return 0;49}50 51static inline void of_device_uevent(const struct device *dev,52			struct kobj_uevent_env *env) { }53 54static inline int of_device_modalias(struct device *dev,55				     char *str, ssize_t len)56{57	return -ENODEV;58}59 60static inline int of_device_uevent_modalias(const struct device *dev,61				   struct kobj_uevent_env *env)62{63	return -ENODEV;64}65 66static inline const struct of_device_id *of_match_device(67		const struct of_device_id *matches, const struct device *dev)68{69	return NULL;70}71 72static inline int of_dma_configure_id(struct device *dev,73				      struct device_node *np,74				      bool force_dma,75				      const u32 *id)76{77	return 0;78}79static inline int of_dma_configure(struct device *dev,80				   struct device_node *np,81				   bool force_dma)82{83	return 0;84}85 86static inline void of_device_make_bus_id(struct device *dev) {}87 88#endif /* CONFIG_OF */89 90#endif /* _LINUX_OF_DEVICE_H */91