s32 hi6559_lcd_bl_current_set(s32 cur) { u32 selector = 0; s32 iret = BSP_PMU_OK; iret = bsp_hi6559_dr_set_current(PMIC_HI6559_DR01,cur,cur,&selector); pmic_print_info("hi6559_bl_cur_set ok!\n"); return iret; }
s32 bsp_hi6559_dr_set_current_test(s32 dr_id, s32 min_uA, s32 max_uA) { u32 selector = 0; s32 iret = BSP_PMU_OK; iret = bsp_hi6559_dr_set_current(dr_id,min_uA,max_uA,&selector); if(iret) return iret; else { pmic_print_info("selector value is %d!\n",selector); return (int)selector; } }
/***************************************************************************** 函 数 名 : hi6559_dr_current_test 功能描述 : DR电流set/get测试 输入参数 : 无 输出参数 : 无 返 回 值 : 0 - 成功;else - 失败 *****************************************************************************/ s32 hi6559_dr_current_test(void) { PMIC_HI6559_DRS_ATTR *hi6559_dr = NULL; u32 selector = 0; s32 i = 0, j = 0; s32 result = BSP_PMU_OK; s32 dr_current = 0; for(i = PMIC_HI6559_DR_MIN; i <= PMIC_HI6559_DR_MAX; i++) { hi6559_dr = &hi6559_dr_attr[i]; for(j = 0; j < NUM_OF_DR_CURRENT; j++) { dr_current = hi6559_dr->current_list[j]; result = bsp_hi6559_dr_set_current(i,dr_current,dr_current,&selector); if(BSP_PMU_OK != result) { pmic_print_error("ERROR bsp_hi6559_dr_set_current err, ret %d!\n", result); } if(dr_current != bsp_hi6559_dr_get_current(i)) { pmic_print_error("ERROR bsp_hi6559_dr_get_current error dr_id %d!!\n", i); result |= BSP_PMU_ERROR; } if(dr_current != bsp_hi6559_dr_list_current(i,selector)) { pmic_print_error("ERROR bsp_hi6559_dr_list_current error dr_id %d!!\n", i); result |= BSP_PMU_ERROR; } } } if(!result) { pmic_print_error("hi6559_dr_current_test ok!!\n"); } else { pmic_print_error("hi6559_dr_current_test failed, return %d!!\n", result); } return result; }
int bsp_dr_current_set(int dr_id, int min_uA, int max_uA) { unsigned selector = 0; return bsp_hi6559_dr_set_current(dr_id,min_uA,max_uA, &selector); }