1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * Copyright (c) 2016 Google, Inc 4 * Written by Simon Glass <sjg@chromium.org> 5 */ 6 7 #ifndef _PANEL_H 8 #define _PANEL_H 9 10 struct panel_ops { 11 /** 12 * enable_backlight() - Enable the panel backlight 13 * 14 * @dev: Panel device containing the backlight to enable 15 * @return 0 if OK, -ve on error 16 */ 17 int (*enable_backlight)(struct udevice *dev); 18 /** 19 * get_timings() - Get display timings from panel. 20 * 21 * @dev: Panel device containing the display timings 22 * @tim: Place to put timings 23 * @return 0 if OK, -ve on error 24 */ 25 int (*get_display_timing)(struct udevice *dev, 26 struct display_timing *timing); 27 }; 28 29 #define panel_get_ops(dev) ((struct panel_ops *)(dev)->driver->ops) 30 31 /** 32 * panel_enable_backlight() - Enable the panel backlight 33 * 34 * @dev: Panel device containing the backlight to enable 35 * @return 0 if OK, -ve on error 36 */ 37 int panel_enable_backlight(struct udevice *dev); 38 39 /** 40 * panel_get_display_timing() - Get display timings from panel. 41 * 42 * @dev: Panel device containing the display timings 43 * @return 0 if OK, -ve on error 44 */ 45 int panel_get_display_timing(struct udevice *dev, 46 struct display_timing *timing); 47 48 #endif 49