Merge tag 'kvm-x86-misc-6.9' of https://github.com/kvm-x86/linux into HEAD
[linux-2.6-block.git] / include / drm / bridge / aux-bridge.h
CommitLineData
2a047391
DB
1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * Copyright (C) 2023 Linaro Ltd.
4 *
5 * Author: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
6 */
7#ifndef DRM_AUX_BRIDGE_H
8#define DRM_AUX_BRIDGE_H
9
e560518a
DB
10#include <drm/drm_connector.h>
11
e5ca2635
JH
12struct auxiliary_device;
13
2a047391
DB
14#if IS_ENABLED(CONFIG_DRM_AUX_BRIDGE)
15int drm_aux_bridge_register(struct device *parent);
16#else
17static inline int drm_aux_bridge_register(struct device *parent)
18{
19 return 0;
20}
21#endif
22
e560518a 23#if IS_ENABLED(CONFIG_DRM_AUX_HPD_BRIDGE)
e5ca2635
JH
24struct auxiliary_device *devm_drm_dp_hpd_bridge_alloc(struct device *parent, struct device_node *np);
25int devm_drm_dp_hpd_bridge_add(struct device *dev, struct auxiliary_device *adev);
e560518a
DB
26struct device *drm_dp_hpd_bridge_register(struct device *parent,
27 struct device_node *np);
28void drm_aux_hpd_bridge_notify(struct device *dev, enum drm_connector_status status);
29#else
e5ca2635
JH
30static inline struct auxiliary_device *devm_drm_dp_hpd_bridge_alloc(struct device *parent,
31 struct device_node *np)
32{
33 return NULL;
34}
35
36static inline int devm_drm_dp_hpd_bridge_add(struct auxiliary_device *adev)
37{
38 return 0;
39}
40
e560518a
DB
41static inline struct device *drm_dp_hpd_bridge_register(struct device *parent,
42 struct device_node *np)
43{
812cc1da 44 return NULL;
e560518a
DB
45}
46
47static inline void drm_aux_hpd_bridge_notify(struct device *dev, enum drm_connector_status status)
48{
49}
50#endif
51
2a047391 52#endif