X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=drivers%2Fvideo%2Fbacklight%2Fpandora_bl.c;h=1187c2c000009ca4db5710699579db082da466d0;hp=4ec30748b4473486e1f4086ddee9753f0a698ed8;hb=071cd8e3b4013c8a5b4ed7ebade8752da5cb936a;hpb=e2517977596b7faff87f410b1b254676a0941383 diff --git a/drivers/video/backlight/pandora_bl.c b/drivers/video/backlight/pandora_bl.c index 4ec30748b447..1187c2c00000 100644 --- a/drivers/video/backlight/pandora_bl.c +++ b/drivers/video/backlight/pandora_bl.c @@ -40,7 +40,6 @@ static int pandora_backlight_update_status(struct backlight_device *bl) { int brightness = bl->props.brightness; - u8 r; if (bl->props.power != FB_BLANK_UNBLANK) brightness = 0; @@ -57,12 +56,10 @@ static int pandora_backlight_update_status(struct backlight_device *bl) goto done; /* first disable PWM0 output, then clock */ - twl_i2c_read_u8(TWL4030_MODULE_INTBR, &r, TWL_INTBR_GPBR1); - r &= ~PWM0_ENABLE; - twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1); - r &= ~PWM0_CLK_ENABLE; - twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1); - + twl_i2c_rmw_u8(TWL4030_MODULE_INTBR, PWM0_ENABLE, 0, + TWL_INTBR_GPBR1); + twl_i2c_rmw_u8(TWL4030_MODULE_INTBR, PWM0_CLK_ENABLE, 0, + TWL_INTBR_GPBR1); goto done; } @@ -75,12 +72,10 @@ static int pandora_backlight_update_status(struct backlight_device *bl) TWL_PWM0_OFF); /* first enable clock, then PWM0 out */ - twl_i2c_read_u8(TWL4030_MODULE_INTBR, &r, TWL_INTBR_GPBR1); - r &= ~PWM0_ENABLE; - r |= PWM0_CLK_ENABLE; - twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1); - r |= PWM0_ENABLE; - twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_GPBR1); + twl_i2c_rmw_u8(TWL4030_MODULE_INTBR, + PWM0_ENABLE, PWM0_CLK_ENABLE, TWL_INTBR_GPBR1); + twl_i2c_rmw_u8(TWL4030_MODULE_INTBR, + 0, PWM0_ENABLE, TWL_INTBR_GPBR1); /* * TI made it very easy to enable digital control, so easy that @@ -117,7 +112,6 @@ static int pandora_backlight_probe(struct platform_device *pdev) { struct backlight_properties props; struct backlight_device *bl; - u8 r; memset(&props, 0, sizeof(props)); props.max_brightness = MAX_USER_VALUE; @@ -139,10 +133,8 @@ static int pandora_backlight_probe(struct platform_device *pdev) backlight_update_status(bl); /* enable PWM function in pin mux */ - twl_i2c_read_u8(TWL4030_MODULE_INTBR, &r, TWL_INTBR_PMBR1); - r &= ~TWL_PMBR1_PWM0_MUXMASK; - r |= TWL_PMBR1_PWM0; - twl_i2c_write_u8(TWL4030_MODULE_INTBR, r, TWL_INTBR_PMBR1); + twl_i2c_rmw_u8(TWL4030_MODULE_INTBR, + TWL_PMBR1_PWM0_MUXMASK, TWL_PMBR1_PWM0, TWL_INTBR_PMBR1); return 0; }