1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (c) 2012-2020, The Linux Foundation. All rights reserved.
4 */
5
6#ifndef _DP_AUX_H_
7#define _DP_AUX_H_
8
9#include "dp_catalog.h"
10#include <drm/drm_dp_helper.h>
11
12#define DP_AUX_ERR_NONE		0
13#define DP_AUX_ERR_ADDR		-1
14#define DP_AUX_ERR_TOUT		-2
15#define DP_AUX_ERR_NACK		-3
16#define DP_AUX_ERR_DEFER	-4
17#define DP_AUX_ERR_NACK_DEFER	-5
18#define DP_AUX_ERR_PHY		-6
19
20int dp_aux_register(struct drm_dp_aux *dp_aux);
21void dp_aux_unregister(struct drm_dp_aux *dp_aux);
22void dp_aux_isr(struct drm_dp_aux *dp_aux);
23void dp_aux_init(struct drm_dp_aux *dp_aux);
24void dp_aux_deinit(struct drm_dp_aux *dp_aux);
25void dp_aux_reconfig(struct drm_dp_aux *dp_aux);
26
27struct drm_dp_aux *dp_aux_get(struct device *dev, struct dp_catalog *catalog);
28void dp_aux_put(struct drm_dp_aux *aux);
29
30#endif /*__DP_AUX_H_*/
31