69 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C
		
	
	
	
/* SPDX-License-Identifier: GPL-2.0+ */
 | 
						|
/*
 | 
						|
 * Copyright (c) 2016 Google, Inc
 | 
						|
 * Written by Simon Glass <sjg@chromium.org>
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _PANEL_H
 | 
						|
#define _PANEL_H
 | 
						|
 | 
						|
struct panel_ops {
 | 
						|
	/**
 | 
						|
	 * enable_backlight() - Enable the panel backlight
 | 
						|
	 *
 | 
						|
	 * @dev:	Panel device containing the backlight to enable
 | 
						|
	 * @return 0 if OK, -ve on error
 | 
						|
	 */
 | 
						|
	int (*enable_backlight)(struct udevice *dev);
 | 
						|
 | 
						|
	/**
 | 
						|
	 * set_backlight - Set panel backlight brightness
 | 
						|
	 *
 | 
						|
	 * @dev:	Panel device containing the backlight to update
 | 
						|
	 * @percent:	Brightness value (0 to 100, or BACKLIGHT_... value)
 | 
						|
	 * @return 0 if OK, -ve on error
 | 
						|
	 */
 | 
						|
	int (*set_backlight)(struct udevice *dev, int percent);
 | 
						|
 | 
						|
	/**
 | 
						|
	 * get_timings() - Get display timings from panel.
 | 
						|
	 *
 | 
						|
	 * @dev:	Panel device containing the display timings
 | 
						|
	 * @tim:	Place to put timings
 | 
						|
	 * @return 0 if OK, -ve on error
 | 
						|
	 */
 | 
						|
	int (*get_display_timing)(struct udevice *dev,
 | 
						|
				  struct display_timing *timing);
 | 
						|
};
 | 
						|
 | 
						|
#define panel_get_ops(dev)	((struct panel_ops *)(dev)->driver->ops)
 | 
						|
 | 
						|
/**
 | 
						|
 * panel_enable_backlight() - Enable/disable the panel backlight
 | 
						|
 *
 | 
						|
 * @dev:	Panel device containing the backlight to enable
 | 
						|
 * @enable:	true to enable the backlight, false to dis
 | 
						|
 * Return: 0 if OK, -ve on error
 | 
						|
 */
 | 
						|
int panel_enable_backlight(struct udevice *dev);
 | 
						|
 | 
						|
/**
 | 
						|
 * panel_set_backlight - Set brightness for the panel backlight
 | 
						|
 *
 | 
						|
 * @dev:	Panel device containing the backlight to update
 | 
						|
 * @percent:	Brightness value (0 to 100, or BACKLIGHT_... value)
 | 
						|
 * Return: 0 if OK, -ve on error
 | 
						|
 */
 | 
						|
int panel_set_backlight(struct udevice *dev, int percent);
 | 
						|
 | 
						|
/**
 | 
						|
 * panel_get_display_timing() - Get display timings from panel.
 | 
						|
 *
 | 
						|
 * @dev:	Panel device containing the display timings
 | 
						|
 * Return: 0 if OK, -ve on error
 | 
						|
 */
 | 
						|
int panel_get_display_timing(struct udevice *dev,
 | 
						|
			     struct display_timing *timing);
 | 
						|
 | 
						|
#endif
 |