moko nand blocksize is 128k
[openwrt/staging/dedeckeh.git] / target / linux / s3c24xx / patches-2.6.26 / 0128-gta01-fix-jbt-platform-missing-members.patch.patch
1 From a471ebdb87d610c8e0b85c01b7a2b95c13a869cc Mon Sep 17 00:00:00 2001
2 From: Mike Westerhof <mwester@dls.net>
3 Date: Fri, 25 Jul 2008 23:06:07 +0100
4 Subject: [PATCH] gta01-fix-jbt-platform-missing-members.patch
5
6 Created an attachment (id=594) / BZ#79
7 Add missing platform_data that caused the GTA01 to crash on suspend/resume
8
9 The interface to the jbt6k74 driver changed slightly; this patch adds the
10 missing platform_data for the GTA01. This prevents a crash while suspending.
11 This patch also makes some minor changes to cleanup and clarify some debug
12 messages.
13 Signed-off-by: Mike Westerhof <mwester@dls.net>
14 ---
15 arch/arm/mach-s3c2410/mach-gta01.c | 21 ++++++++++++++++-----
16 1 files changed, 16 insertions(+), 5 deletions(-)
17
18 diff --git a/arch/arm/mach-s3c2410/mach-gta01.c b/arch/arm/mach-s3c2410/mach-gta01.c
19 index ff08449..a77ed3d 100644
20 --- a/arch/arm/mach-s3c2410/mach-gta01.c
21 +++ b/arch/arm/mach-s3c2410/mach-gta01.c
22 @@ -73,6 +73,7 @@
23 #include <asm/plat-s3c24xx/pm.h>
24 #include <asm/plat-s3c24xx/udc.h>
25 #include <asm/plat-s3c24xx/neo1973.h>
26 +#include <linux/jbt6k74.h>
27
28 static struct map_desc gta01_iodesc[] __initdata = {
29 {
30 @@ -389,7 +390,7 @@ static void gta01_mmc_set_power(unsigned char power_mode, unsigned short vdd)
31 int bit;
32 int mv = 1700; /* 1.7V for MMC_VDD_165_195 */
33
34 - printk(KERN_DEBUG "mmc_set_power(power_mode=%u, vdd=%u\n",
35 + printk(KERN_DEBUG "mmc_set_power(power_mode=%u, vdd=%u)\n",
36 power_mode, vdd);
37
38 switch (system_rev) {
39 @@ -499,10 +500,20 @@ static struct s3c2410_ts_mach_info gta01_ts_cfg = {
40
41 /* SPI */
42
43 +void gta01_jbt6k74_reset(int devidx, int level)
44 +{
45 + /* empty place holder; gta01 does not yet use this */
46 + printk(KERN_DEBUG "gta01_jbt6k74_reset\n");
47 +}
48 +
49 +const struct jbt6k74_platform_data gta01_jbt6k74_pdata = {
50 + .reset = gta01_jbt6k74_reset,
51 +};
52 +
53 static struct spi_board_info gta01_spi_board_info[] = {
54 {
55 .modalias = "jbt6k74",
56 - /* platform_data */
57 + .platform_data = &gta01_jbt6k74_pdata,
58 /* controller_data */
59 /* irq */
60 .max_speed_hz = 10 * 1000 * 1000,
61 @@ -641,7 +652,7 @@ static void __init gta01_map_io(void)
62
63 static irqreturn_t gta01_modem_irq(int irq, void *param)
64 {
65 - printk(KERN_DEBUG "modem wakeup interrupt\n");
66 + printk(KERN_DEBUG "GSM wakeup interrupt (IRQ %d)\n", irq);
67 return IRQ_HANDLED;
68 }
69
70 @@ -709,9 +720,9 @@ static void __init gta01_machine_init(void)
71 set_irq_type(GTA01_IRQ_MODEM, IRQT_RISING);
72 rc = request_irq(GTA01_IRQ_MODEM, gta01_modem_irq, IRQF_DISABLED,
73 "modem", NULL);
74 - if (!rc)
75 - printk(KERN_ERR "GTA01: can't request GSM modem wakeup IRQ\n");
76 enable_irq_wake(GTA01_IRQ_MODEM);
77 + printk(KERN_DEBUG "Enabled GSM wakeup IRQ %d (rc=%d)\n",
78 + GTA01_IRQ_MODEM, rc);
79 }
80
81 MACHINE_START(NEO1973_GTA01, "GTA01")
82 --
83 1.5.6.3
84