107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani/* 2d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema * Copyright (c) 2017, The Linux Foundation. All rights reserved. 307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * 407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * Redistribution and use in source and binary forms, with or without 507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * modification, are permitted provided that the following conditions are 607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * met: 707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * * Redistributions of source code must retain the above copyright 807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * notice, this list of conditions and the following disclaimer. 907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * * Redistributions in binary form must reproduce the above 1007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * copyright notice, this list of conditions and the following 1107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * disclaimer in the documentation and/or other materials provided 1207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * with the distribution. 1307bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * * Neither the name of The Linux Foundation nor the names of its 1407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * contributors may be used to endorse or promote products derived 1507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * from this software without specific prior written permission. 1607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * 1707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 1807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 1907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 2007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 2107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 2407bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 2507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 2607bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 2707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani */ 2907bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 3007bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 3107bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 32d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#include <hardware/hwcomposer_defs.h> 33d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#include "disp_color_apis.h" 34d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema#include "lights_prv.h" 3507bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 36d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema/******************************************************************************/ 37d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemastatic DISPAPI_HANDLE g_ctx; 3807bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 39d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema/** 40d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema * device methods 41d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema */ 42d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema 43d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemavoid set_brightness_ext_init(void) 44d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema{ 45d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema disp_api_init((DISPAPI_HANDLE*) &g_ctx, 0); 46d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema} 4707bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 48d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennemaint set_brightness_ext_level(int level) 49d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema{ 50d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema int err = disp_api_set_panel_brightness_level_ext(g_ctx, HWC_DISPLAY_PRIMARY, 51d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema level, 0); 5207bbf1e89c031a5d41a7561433e832d396c311a5Prashant Malani 53d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema return err; 54d39a514dd0540cf47e121775a77e9ac1b578bdb1Ben Fennema} 55