[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20120531120635.209266aabe1b08ebc4595249@canb.auug.org.au>
Date: Thu, 31 May 2012 12:06:35 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Matthew Garrett <mjg59@...f.ucam.org>
Cc: linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
Corentin Chary <corentin.chary@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Seth Forshee <seth.forshee@...onical.com>
Subject: linux-next: manual merge of the drivers-x86 tree with Linus' tree
Hi Matthew,
Today's linux-next merge of the drivers-x86 tree got a conflict in
drivers/platform/x86/toshiba_acpi.c between commit f5f4fd451634
("backlight: initialize struct backlight_properties properly") from
Linus' tree and commit 7d307fbdefbf ("toshiba_acpi: Only register
backlight device when interface is read/write") from the drivers-x86 tree.
I fixed it up (see below) and can carry the fix as necessary.
--
Cheers,
Stephen Rothwell sfr@...b.auug.org.au
diff --cc drivers/platform/x86/toshiba_acpi.c
index 57787d8,bde32de..0000000
--- a/drivers/platform/x86/toshiba_acpi.c
+++ b/drivers/platform/x86/toshiba_acpi.c
@@@ -1020,6 -1069,54 +1069,55 @@@ static int __devinit toshiba_acpi_setup
return error;
}
+ static int __devinit toshiba_acpi_setup_backlight(struct toshiba_acpi_dev *dev)
+ {
+ struct backlight_properties props;
+ int brightness;
+ int ret;
+ bool enabled;
+
+ /*
+ * Some machines don't support the backlight methods at all, and
+ * others support it read-only. Either of these is pretty useless,
+ * so only register the backlight device if the backlight method
+ * supports both reads and writes.
+ */
+ brightness = __get_lcd_brightness(dev);
+ if (brightness < 0)
+ return 0;
+ ret = set_lcd_brightness(dev, brightness);
+ if (ret) {
+ pr_debug("Backlight method is read-only, disabling backlight support\n");
+ return 0;
+ }
+
+ /* Determine whether or not BIOS supports transflective backlight */
+ ret = get_tr_backlight_status(dev, &enabled);
+ dev->tr_backlight_supported = !ret;
+
++ memset(&props, 0, sizeof(props));
+ props.type = BACKLIGHT_PLATFORM;
+ props.max_brightness = HCI_LCD_BRIGHTNESS_LEVELS - 1;
+
+ /* adding an extra level and having 0 change to transflective mode */
+ if (dev->tr_backlight_supported)
+ props.max_brightness++;
+ dev->backlight_dev = backlight_device_register("toshiba",
+ &dev->acpi_dev->dev,
+ dev,
+ &toshiba_backlight_data,
+ &props);
+ if (IS_ERR(dev->backlight_dev)) {
+ ret = PTR_ERR(dev->backlight_dev);
+ pr_err("Could not register toshiba backlight device\n");
+ dev->backlight_dev = NULL;
+ return ret;
+ }
+
+ dev->backlight_dev->props.brightness = brightness;
+ return 0;
+ }
+
static int toshiba_acpi_remove(struct acpi_device *acpi_dev, int type)
{
struct toshiba_acpi_dev *dev = acpi_driver_data(acpi_dev);
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists