From 9f979c42d1768b225bea7e2814fea1348818d846 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 27 Sep 2010 09:58:16 +0200 Subject: linux-openmoko-2.6.34: add 3 patches from qtmoko Signed-off-by: Martin Jansa --- ...me-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch | 29 ++++++++ ...-Enable-powering-off-after-8s-POWER-press.patch | 48 ++++++++++++ ...t-remember-state-of-bluetooth-in-variable.patch | 85 ++++++++++++++++++++++ recipes/linux/linux-openmoko-2.6.34_git.bb | 5 +- 4 files changed, 166 insertions(+), 1 deletion(-) create mode 100644 recipes/linux/linux-openmoko-2.6.34/0018-Rename-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch create mode 100644 recipes/linux/linux-openmoko-2.6.34/0019-Enable-powering-off-after-8s-POWER-press.patch create mode 100644 recipes/linux/linux-openmoko-2.6.34/0020-GTA02-bt-remember-state-of-bluetooth-in-variable.patch diff --git a/recipes/linux/linux-openmoko-2.6.34/0018-Rename-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch b/recipes/linux/linux-openmoko-2.6.34/0018-Rename-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch new file mode 100644 index 0000000000..9521760a38 --- /dev/null +++ b/recipes/linux/linux-openmoko-2.6.34/0018-Rename-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch @@ -0,0 +1,29 @@ +From e6fe7275578d6b22adbb5cbd2d0d225ccac1221b Mon Sep 17 00:00:00 2001 +From: Radek Polak +Date: Tue, 21 Sep 2010 20:55:41 +0200 +Subject: [PATCH 18/19] Rename /dev/s3c2410_serialXXX to /dev/ttySACXXX + +It's nice that devtmpfs now creates the serial port with well known +name. + +http://docs.openmoko.org/trac/ticket/2338 +--- + drivers/serial/samsung.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/drivers/serial/samsung.c b/drivers/serial/samsung.c +index f7b80ae..cda5e88 100644 +--- a/drivers/serial/samsung.c ++++ b/drivers/serial/samsung.c +@@ -878,7 +878,7 @@ static struct uart_ops s3c24xx_serial_ops = { + + static struct uart_driver s3c24xx_uart_drv = { + .owner = THIS_MODULE, +- .dev_name = "s3c2410_serial", ++ .dev_name = S3C24XX_SERIAL_NAME, + .nr = CONFIG_SERIAL_SAMSUNG_UARTS, + .cons = S3C24XX_SERIAL_CONSOLE, + .driver_name = S3C24XX_SERIAL_NAME, +-- +1.7.3 + diff --git a/recipes/linux/linux-openmoko-2.6.34/0019-Enable-powering-off-after-8s-POWER-press.patch b/recipes/linux/linux-openmoko-2.6.34/0019-Enable-powering-off-after-8s-POWER-press.patch new file mode 100644 index 0000000000..acca83939c --- /dev/null +++ b/recipes/linux/linux-openmoko-2.6.34/0019-Enable-powering-off-after-8s-POWER-press.patch @@ -0,0 +1,48 @@ +From da26c49d00123c126fcdddb1c2568fdbdd5c40d8 Mon Sep 17 00:00:00 2001 +From: Radek Polak +Date: Thu, 16 Sep 2010 07:36:50 +0200 +Subject: [PATCH 19/19] Enable powering off after 8s POWER press + +--- + arch/arm/mach-s3c2440/mach-gta02.c | 11 ++++++----- + 1 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/arch/arm/mach-s3c2440/mach-gta02.c b/arch/arm/mach-s3c2440/mach-gta02.c +index e639cac..6b57c42 100644 +--- a/arch/arm/mach-s3c2440/mach-gta02.c ++++ b/arch/arm/mach-s3c2440/mach-gta02.c +@@ -688,6 +688,11 @@ static struct pcf50633_bl_platform_data gta02_backlight_data = { + .ramp_time = 3, + }; + ++static void gta02_poweroff(void) ++{ ++ pcf50633_reg_set_bit_mask(gta02_pcf, PCF50633_REG_OOCSHDWN, 1, 1); ++} ++ + struct pcf50633_platform_data gta02_pcf_pdata = { + .resumers = { + [0] = PCF50633_INT1_USBINS | +@@ -831,6 +836,7 @@ struct pcf50633_platform_data gta02_pcf_pdata = { + }, + .probe_done = gta02_pmu_attach_child_devices, + .mbc_event_callback = gta02_pmu_event_callback, ++ .force_shutdown = gta02_poweroff, + }; + + +@@ -1309,11 +1315,6 @@ static void gta02_pmu_attach_child_devices(struct pcf50633 *pcf) + ARRAY_SIZE(gta02_devices_pmu_children)); + } + +-static void gta02_poweroff(void) +-{ +- pcf50633_reg_set_bit_mask(gta02_pcf, PCF50633_REG_OOCSHDWN, 1, 1); +-} +- + struct gta02_device_children { + const char *dev_name; + size_t num_children; +-- +1.7.3 + diff --git a/recipes/linux/linux-openmoko-2.6.34/0020-GTA02-bt-remember-state-of-bluetooth-in-variable.patch b/recipes/linux/linux-openmoko-2.6.34/0020-GTA02-bt-remember-state-of-bluetooth-in-variable.patch new file mode 100644 index 0000000000..b8cb2fa276 --- /dev/null +++ b/recipes/linux/linux-openmoko-2.6.34/0020-GTA02-bt-remember-state-of-bluetooth-in-variable.patch @@ -0,0 +1,85 @@ +From 67a15139d71019e8f2ad8a566f72f28cf52f7a1f Mon Sep 17 00:00:00 2001 +From: Radek Polak +Date: Tue, 21 Sep 2010 20:03:14 +0200 +Subject: [PATCH 20/20] GTA02 bt - remember state of bluetooth in variable + +Reading bt status before suspend for some reason does not work. It +always resumes with bluetooth turned off. + +This patch remembers if bluetooth is switched on/off in variable +and after resume bluetooth ends up in the same state as was before +suspend. +--- + arch/arm/mach-s3c2440/gta02-pm-bt.c | 18 +++++++++++------- + 1 files changed, 11 insertions(+), 7 deletions(-) + +diff --git a/arch/arm/mach-s3c2440/gta02-pm-bt.c b/arch/arm/mach-s3c2440/gta02-pm-bt.c +index 5cf35d8..1101411 100644 +--- a/arch/arm/mach-s3c2440/gta02-pm-bt.c ++++ b/arch/arm/mach-s3c2440/gta02-pm-bt.c +@@ -56,7 +56,8 @@ static ssize_t bt_read(struct device *dev, struct device_attribute *attr, + } + } + +-static void __gta02_pm_bt_toggle_radio(struct device *dev, unsigned int on) ++static void __gta02_pm_bt_toggle_radio(struct device *dev, unsigned int on, ++ bool remember_state) + { + struct gta02_pm_bt_data *bt_data = dev_get_drvdata(dev); + +@@ -75,6 +76,9 @@ static void __gta02_pm_bt_toggle_radio(struct device *dev, unsigned int on) + } + + s3c2410_gpio_setpin(GTA02_GPIO_BT_EN, on); ++ ++ if (remember_state) ++ bt_data->pre_resume_state = on; + } + + +@@ -82,7 +86,7 @@ static int bt_rfkill_set_block(void *data, bool blocked) + { + struct device *dev = data; + +- __gta02_pm_bt_toggle_radio(dev, !blocked); ++ __gta02_pm_bt_toggle_radio(dev, !blocked, true); + + return 0; + } +@@ -101,7 +105,7 @@ static ssize_t bt_write(struct device *dev, struct device_attribute *attr, + if (!strcmp(attr->attr.name, "power_on")) { + rfkill_set_sw_state(bt_data->rfkill, on ? 1 : 0); + +- __gta02_pm_bt_toggle_radio(dev, on); ++ __gta02_pm_bt_toggle_radio(dev, on, true); + } else if (!strcmp(attr->attr.name, "reset")) { + /* reset is low-active, so we need to invert */ + s3c2410_gpio_setpin(GTA02_GPIO_BT_EN, on ? 0 : 1); +@@ -116,12 +120,12 @@ static DEVICE_ATTR(reset, 0644, bt_read, bt_write); + #ifdef CONFIG_PM + static int gta02_bt_suspend(struct platform_device *pdev, pm_message_t state) + { +- struct gta02_pm_bt_data *bt_data = dev_get_drvdata(&pdev->dev); ++/* struct gta02_pm_bt_data *bt_data = dev_get_drvdata(&pdev->dev); */ + + dev_dbg(&pdev->dev, DRVMSG ": suspending\n"); + +- bt_data->pre_resume_state = s3c2410_gpio_getpin(GTA02_GPIO_BT_EN); +- __gta02_pm_bt_toggle_radio(&pdev->dev, 0); ++ /* bt_data->pre_resume_state = s3c2410_gpio_getpin(GTA02_GPIO_BT_EN); */ ++ __gta02_pm_bt_toggle_radio(&pdev->dev, 0, false); + + return 0; + } +@@ -131,7 +135,7 @@ static int gta02_bt_resume(struct platform_device *pdev) + struct gta02_pm_bt_data *bt_data = dev_get_drvdata(&pdev->dev); + dev_dbg(&pdev->dev, DRVMSG ": resuming\n"); + +- __gta02_pm_bt_toggle_radio(&pdev->dev, bt_data->pre_resume_state); ++ __gta02_pm_bt_toggle_radio(&pdev->dev, bt_data->pre_resume_state, false); + return 0; + } + #else +-- +1.7.3 + diff --git a/recipes/linux/linux-openmoko-2.6.34_git.bb b/recipes/linux/linux-openmoko-2.6.34_git.bb index d2728a493f..64a2f92bd5 100644 --- a/recipes/linux/linux-openmoko-2.6.34_git.bb +++ b/recipes/linux/linux-openmoko-2.6.34_git.bb @@ -4,7 +4,7 @@ require linux-openmoko.inc KERNEL_RELEASE="2.6.34.7" SRCREV = "e4182f3551f1b8e8f8bd07a2d68e49a0ec4cd04a" -OEV = "oe4.6" +OEV = "oe5" PV = "${KERNEL_RELEASE}-${OEV}+gitr${SRCPV}" SRC_URI = "\ @@ -31,6 +31,9 @@ SRC_URI = "\ file://0002-usbhost.patch.patch \ file://0003-ar6000_delay.patch.patch \ file://0004-save_regs.patch.patch \ + file://0018-Rename-dev-s3c2410_serialXXX-to-dev-ttySACXXX.patch \ + file://0019-Enable-powering-off-after-8s-POWER-press.patch \ + file://0020-GTA02-bt-remember-state-of-bluetooth-in-variable.patch \ # fix PR2349 file://0010-mach-gta02-fix-PR2349-do-not-manage-down.patch \ file://defconfig \ -- cgit v1.2.3