/* * Copyrights (C) 2017 Samsung Electronics, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include #if defined(CONFIG_BATTERY_NOTIFIER) #include #endif struct pdic_notifier_struct pd_noti; void (*fp_select_pdo)(int num); int (*fp_sec_pd_select_pps)(int num, int ppsVol, int ppsCur); int (*fp_sec_pd_get_apdo_max_power)(unsigned int *pdo_pos, unsigned int *taMaxVol, unsigned int *taMaxCur, unsigned int *taMaxPwr); int (*fp_pps_enable)(int num, int ppsVol, int ppsCur, int enable); void select_pdo(int num) { if (fp_select_pdo) fp_select_pdo(num); } int sec_pd_select_pps(int num, int ppsVol, int ppsCur) { if (fp_sec_pd_select_pps) return fp_sec_pd_select_pps(num, ppsVol, ppsCur); return 0; } int sec_pps_enable(int num, int ppsVol, int ppsCur, int enable) { if (fp_pps_enable) return fp_pps_enable(num, ppsVol, ppsCur, enable); return 0; } int sec_pd_get_apdo_max_power(unsigned int *pdo_pos, unsigned int *taMaxVol, unsigned int *taMaxCur, unsigned int *taMaxPwr) { if (fp_sec_pd_get_apdo_max_power) return fp_sec_pd_get_apdo_max_power(pdo_pos, taMaxVol, taMaxCur, taMaxPwr); return -ENOTSUPP; }