mirror of
				https://github.com/oplus-giulia-dev/android_hardware_oplus
				synced 2025-11-04 13:55:35 +08:00 
			
		
		
		
	livedisplay: Use PWM turbo for IAntiFlicker if available
Change-Id: I4162f79c5309038dfff1bd00f2ca8a726c7eb206
This commit is contained in:
		@@ -19,7 +19,8 @@ AntiFlicker::AntiFlicker() : mOplusDisplayFd(open("/dev/oplus_display", O_RDWR))
 | 
			
		||||
 | 
			
		||||
ndk::ScopedAStatus AntiFlicker::getEnabled(bool* _aidl_return) {
 | 
			
		||||
    unsigned int value;
 | 
			
		||||
    if (ioctl(mOplusDisplayFd, PANEL_IOCTL_GET_DIMLAYER_BL_EN, &value) != 0) {
 | 
			
		||||
    if (ioctl(mOplusDisplayFd, PANEL_IOCTL_GET_PWM_TURBO, &value) != 0 &&
 | 
			
		||||
        ioctl(mOplusDisplayFd, PANEL_IOCTL_GET_DIMLAYER_BL_EN, &value) != 0) {
 | 
			
		||||
        LOG(ERROR) << "Failed to read current AntiFlicker state";
 | 
			
		||||
        return ndk::ScopedAStatus::fromExceptionCode(EX_UNSUPPORTED_OPERATION);
 | 
			
		||||
    }
 | 
			
		||||
@@ -33,7 +34,7 @@ ndk::ScopedAStatus AntiFlicker::setEnabled(bool enabled) {
 | 
			
		||||
        return status;
 | 
			
		||||
    }
 | 
			
		||||
    unsigned int value = enabled;
 | 
			
		||||
    if (isEnabled != enabled &&
 | 
			
		||||
    if (isEnabled != enabled && ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_PWM_TURBO, &value) != 0 &&
 | 
			
		||||
        ioctl(mOplusDisplayFd, PANEL_IOCTL_SET_DIMLAYER_BL_EN, &value) != 0) {
 | 
			
		||||
        LOG(ERROR) << "Failed to set AntiFlicker state";
 | 
			
		||||
        return ndk::ScopedAStatus::fromExceptionCode(EX_UNSUPPORTED_OPERATION);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user