aboutsummaryrefslogtreecommitdiffstats
path: root/packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch')
-rw-r--r--packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch203
1 files changed, 0 insertions, 203 deletions
diff --git a/packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch b/packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch
deleted file mode 100644
index a2a707014d..0000000000
--- a/packages/linux/linux-ezx-2.6.24/patches/ezx-backlight.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-
-#
-# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher
-#
-
-Index: linux-2.6.24/drivers/video/backlight/Kconfig
-===================================================================
---- linux-2.6.24.orig/drivers/video/backlight/Kconfig
-+++ linux-2.6.24/drivers/video/backlight/Kconfig
-@@ -90,3 +90,12 @@
- help
- If you have a Intel LE80578 (Carillo Ranch) say Y to enable the
- backlight driver.
-+
-+config BACKLIGHT_EZX
-+ tristate "Motorola EXZ Backlight Driver (A780/E680/E680i)"
-+ depends on BACKLIGHT_CLASS_DEVICE && PXA_EZX
-+ default y
-+ help
-+ If you have a Motorola A780 or E680(i), say y to enable the
-+ backlight driver.
-+
-Index: linux-2.6.24/drivers/video/backlight/Makefile
-===================================================================
---- linux-2.6.24.orig/drivers/video/backlight/Makefile
-+++ linux-2.6.24/drivers/video/backlight/Makefile
-@@ -9,3 +9,4 @@
- obj-$(CONFIG_BACKLIGHT_LOCOMO) += locomolcd.o
- obj-$(CONFIG_BACKLIGHT_PROGEAR) += progear_bl.o
- obj-$(CONFIG_BACKLIGHT_CARILLO_RANCH) += cr_bllcd.o
-+obj-$(CONFIG_BACKLIGHT_EZX) += ezx_bl.o
-Index: linux-2.6.24/drivers/video/backlight/ezx_bl.c
-===================================================================
---- /dev/null
-+++ linux-2.6.24/drivers/video/backlight/ezx_bl.c
-@@ -0,0 +1,142 @@
-+/*
-+ * Backlight Driver for Motorola A780 and E680(i) GSM Phones.
-+ *
-+ * Copyright 2006 Vanille Media
-+ *
-+ * Author: Michael Lauer <mickey@Vanille.de>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/kernel.h>
-+#include <linux/init.h>
-+#include <linux/platform_device.h>
-+#include <linux/fb.h>
-+#include <linux/backlight.h>
-+
-+#include <asm/arch/pxa-regs.h>
-+#include <asm/arch/ezx.h>
-+
-+#define EZX_MIN_INTENSITY 0
-+#define EZX_MAX_INTENSITY 50
-+#define EZX_DEFAULT_INTENSITY 30
-+
-+static struct backlight_device *ezx_backlight_device;
-+static int last_intensity;
-+static int suspended;
-+
-+static int ezxbl_send_intensity(struct backlight_device *bd)
-+{
-+ int intensity = bd->props.brightness;
-+
-+ if (suspended || bd->props.power != FB_BLANK_UNBLANK ||
-+ bd->props.fb_blank != FB_BLANK_UNBLANK)
-+ intensity = 0;
-+
-+ if ( !last_intensity && intensity ) {
-+ PWM_CTRL0 = 2; /* pre-scaler */
-+ PWM_PWDUTY0 = intensity; /* duty cycle */
-+ PWM_PERVAL0 = 49; /* period */
-+ pxa_gpio_mode(GPIO16_PWM0_MD); /* set GPIO16 as alternate function + output */
-+ pxa_set_cken(CKEN_PWM0, 1); /* clock enable */
-+ }
-+ else if ( last_intensity && !intensity ) {
-+ PWM_PWDUTY0 = 0;
-+ GAFR0_U &= 0xFFFFFFFC; /* ??? */
-+ pxa_set_cken(CKEN_PWM0, 0); /* clock disable */
-+ pxa_gpio_mode(GPIO16_PWM0); /* set GPIO16 as input */
-+ } else if ( last_intensity && intensity ) {
-+ PWM_PWDUTY0 = intensity; /* duty cycle */
-+ }
-+ last_intensity = intensity;
-+ return 0;
-+}
-+
-+static int ezxbl_get_intensity(struct backlight_device *bd)
-+{
-+ return last_intensity;
-+}
-+
-+static int ezxbl_set_intensity(struct backlight_device *bd)
-+{
-+ return ezxbl_send_intensity(ezx_backlight_device);
-+}
-+
-+#ifdef CONFIG_PM
-+static int ezxbl_suspend(struct platform_device *pdev, pm_message_t state)
-+{
-+ suspended = 1;
-+ ezxbl_set_intensity(ezx_backlight_device);
-+ return 0;
-+}
-+
-+static int ezxbl_resume(struct platform_device *pdev)
-+{
-+ suspended = 0;
-+ ezxbl_set_intensity(ezx_backlight_device);
-+ return 0;
-+}
-+#else
-+#define ezxbl_suspend NULL
-+#define ezxbl_resume NULL
-+#endif
-+
-+static struct backlight_ops ezxbl_ops = {
-+ .get_brightness = ezxbl_get_intensity,
-+ .update_status = ezxbl_set_intensity,
-+};
-+
-+static int __init ezxbl_probe(struct platform_device *pdev)
-+{
-+ ezx_backlight_device = backlight_device_register ("ezx-bl",
-+ &pdev->dev, NULL, &ezxbl_ops);
-+ if (IS_ERR (ezx_backlight_device))
-+ return PTR_ERR (ezx_backlight_device);
-+
-+ platform_set_drvdata(pdev, ezx_backlight_device);
-+
-+ ezx_backlight_device->props.power = FB_BLANK_UNBLANK;
-+ ezx_backlight_device->props.max_brightness = EZX_MAX_INTENSITY;
-+ ezx_backlight_device->props.brightness = EZX_DEFAULT_INTENSITY;
-+ ezxbl_set_intensity(ezx_backlight_device);
-+ backlight_update_status(ezx_backlight_device);
-+
-+ return 0;
-+}
-+
-+static int ezxbl_remove(struct platform_device *pdev)
-+{
-+ backlight_device_unregister(ezx_backlight_device);
-+ return 0;
-+}
-+
-+static struct platform_driver ezxbl_driver = {
-+ .probe = ezxbl_probe,
-+ .remove = ezxbl_remove,
-+ .suspend = ezxbl_suspend,
-+ .resume = ezxbl_resume,
-+ .driver = {
-+ .name = "ezx-bl",
-+ },
-+};
-+
-+static int __init ezxbl_init(void)
-+{
-+ return platform_driver_register(&ezxbl_driver);
-+}
-+
-+static void __exit ezxbl_exit(void)
-+{
-+ platform_driver_unregister(&ezxbl_driver);
-+}
-+
-+module_init(ezxbl_init);
-+module_exit(ezxbl_exit);
-+
-+MODULE_AUTHOR("Michael Lauer <mickey@Vanille.de>");
-+MODULE_DESCRIPTION("Backlight Driver for Motorola A780|E680(i)");
-+MODULE_LICENSE("GPL");
-Index: linux-2.6.24/arch/arm/mach-pxa/ezx.c
-===================================================================
---- linux-2.6.24.orig/arch/arm/mach-pxa/ezx.c
-+++ linux-2.6.24/arch/arm/mach-pxa/ezx.c
-@@ -66,6 +66,12 @@
- #endif
- EXPORT_SYMBOL_GPL(ezx_backlight_power);
-
-+/* EZX LCD Backlight */
-+static struct platform_device ezxbacklight_device = {
-+ .name = "ezx-bl",
-+ .id = -1,
-+};
-+
- /* OHCI Controller */
- static int ezx_ohci_init(struct device *dev)
- {
-@@ -107,6 +113,7 @@
-
- static struct platform_device *devices[] __initdata = {
- &ezxbp_device,
-+ &ezxbacklight_device,
- };
-
- /* PM */