xref: /rk3399_rockchip-uboot/drivers/video/drm/rockchip_bridge.c (revision f36ea2f6e17621c4d9dd97c4dbfab62d03d061df)
1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  * (C) Copyright 2008-2018 Fuzhou Rockchip Electronics Co., Ltd
4  */
5 
6 #include "rockchip_bridge.h"
7 
8 void rockchip_bridge_pre_enable(struct rockchip_bridge *bridge)
9 {
10 	if (!bridge)
11 		return;
12 
13 	if (bridge->funcs && bridge->funcs->pre_enable)
14 		bridge->funcs->pre_enable(bridge);
15 }
16 
17 void rockchip_bridge_post_disable(struct rockchip_bridge *bridge)
18 {
19 	if (!bridge)
20 		return;
21 
22 	if (bridge->funcs && bridge->funcs->post_disable)
23 		bridge->funcs->post_disable(bridge);
24 }
25 
26 void rockchip_bridge_enable(struct rockchip_bridge *bridge)
27 {
28 	if (!bridge)
29 		return;
30 
31 	if (bridge->funcs && bridge->funcs->enable)
32 		bridge->funcs->enable(bridge);
33 }
34 
35 void rockchip_bridge_disable(struct rockchip_bridge *bridge)
36 {
37 	if (!bridge)
38 		return;
39 
40 	if (bridge->funcs && bridge->funcs->disable)
41 		bridge->funcs->disable(bridge);
42 }
43 
44 void rockchip_bridge_mode_set(struct rockchip_bridge *bridge,
45 			      const struct drm_display_mode *mode)
46 {
47 	if (!bridge || !mode)
48 		return;
49 
50 	if (bridge->funcs && bridge->funcs->mode_set)
51 		bridge->funcs->mode_set(bridge, mode);
52 }
53