summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorThomas Zimmermann <tzimmermann@suse.de>2024-02-12 12:06:10 +0300
committerThomas Zimmermann <tzimmermann@suse.de>2024-02-14 12:09:16 +0300
commit036105e3a776b6fc2fe0d262896a23ff2cc2e6b1 (patch)
tree2849d117a6ab8067abc637f14721a728ee839d26 /include/linux
parent75fa9b7e375e35739663cde0252d31e586c6314a (diff)
downloadlinux-036105e3a776b6fc2fe0d262896a23ff2cc2e6b1.tar.xz
video: Provide screen_info_get_pci_dev() to find screen_info's PCI device
Add screen_info_get_pci_dev() to find the PCI device of an instance of screen_info. Does nothing on systems without PCI bus. v3: * search PCI device with pci_get_base_class() (Sui) v2: * remove ret from screen_info_pci_dev() (Javier) Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240212090736.11464-3-tzimmermann@suse.de
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/screen_info.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/screen_info.h b/include/linux/screen_info.h
index e7a02c5609d1..0eae08e3c6f9 100644
--- a/include/linux/screen_info.h
+++ b/include/linux/screen_info.h
@@ -9,6 +9,7 @@
*/
#define SCREEN_INFO_MAX_RESOURCES 3
+struct pci_dev;
struct resource;
static inline bool __screen_info_has_lfb(unsigned int type)
@@ -104,6 +105,15 @@ static inline unsigned int screen_info_video_type(const struct screen_info *si)
ssize_t screen_info_resources(const struct screen_info *si, struct resource *r, size_t num);
+#if defined(CONFIG_PCI)
+struct pci_dev *screen_info_pci_dev(const struct screen_info *si);
+#else
+static inline struct pci_dev *screen_info_pci_dev(const struct screen_info *si)
+{
+ return NULL;
+}
+#endif
+
extern struct screen_info screen_info;
#endif /* _SCREEN_INFO_H */