summaryrefslogtreecommitdiffstats
path: root/recipes-kernel/linux/linux-3.0/sakoman
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denys@ti.com>2013-09-28 16:37:39 -0400
committerDenys Dmytriyenko <denys@ti.com>2013-09-30 16:36:04 -0400
commitc168b9dca4ec2b10df5c67fc8d0db4b57eb822f7 (patch)
treec3f254bd317e699f56d8abda4e6bc852fc1fbb8a /recipes-kernel/linux/linux-3.0/sakoman
parent8c96f41ba6e3160d0826e112599285cf64541257 (diff)
downloadmeta-ti-c168b9dca4ec2b10df5c67fc8d0db4b57eb822f7.tar.gz
linux-3.0: remove old beagleboard-specific 3.0 and 3.1rc kernel recipes
Beagleboard is supported by newer 3.2 and 3.3.7 kernel recipes. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
Diffstat (limited to 'recipes-kernel/linux/linux-3.0/sakoman')
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0001-mmc-don-t-display-single-block-read-console-messages.patch28
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0002-omap-Change-omap_device-activate-dectivate-latency-m.patch49
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0003-OMAP-DSS2-add-bootarg-for-selecting-svideo-or-compos.patch75
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0004-mtd-nand-Eliminate-noisey-uncorrectable-error-messag.patch28
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0005-video-add-timings-for-hd720.patch27
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0006-drivers-net-smsc911x-return-ENODEV-if-device-is-not-.patch29
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0007-drivers-input-touchscreen-ads7846-return-ENODEV-if-d.patch45
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0008-Revert-omap2_mcspi-Flush-posted-writes.patch27
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0009-rtc-twl-Use-threaded-IRQ-remove-IRQ-enable-in-interr.patch57
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0010-rtc-twl-Fix-registration-vs.-init-order.patch122
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0011-soc-codecs-Enable-audio-capture-by-default-for-twl40.patch27
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0012-soc-codecs-twl4030-Turn-on-mic-bias-by-default.patch25
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0013-omap-mmc-twl4030-move-clock-input-selection-prior-to.patch39
-rw-r--r--recipes-kernel/linux/linux-3.0/sakoman/0014-rtc-twl-add-support-for-backup-battery-recharge.patch57
14 files changed, 0 insertions, 635 deletions
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0001-mmc-don-t-display-single-block-read-console-messages.patch b/recipes-kernel/linux/linux-3.0/sakoman/0001-mmc-don-t-display-single-block-read-console-messages.patch
deleted file mode 100644
index 8c1fabaf..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0001-mmc-don-t-display-single-block-read-console-messages.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From cc8c276d530520ce822a1d0e8d748f7b9e54a2d5 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Mon, 4 Jan 2010 19:20:25 -0800
4Subject: [PATCH 01/14] mmc: don't display single block read console messages
5
6mmc: don't display single block read console messages
7---
8 drivers/mmc/card/block.c | 4 ++--
9 1 files changed, 2 insertions(+), 2 deletions(-)
10
11diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c
12index f85e422..0025735 100644
13--- a/drivers/mmc/card/block.c
14+++ b/drivers/mmc/card/block.c
15@@ -812,8 +812,8 @@ static int mmc_blk_issue_rw_rq(struct mmc_queue *mq, struct request *req)
16 brq.data.error || brq.stop.error) {
17 if (brq.data.blocks > 1 && rq_data_dir(req) == READ) {
18 /* Redo read one sector at a time */
19- printk(KERN_WARNING "%s: retrying using single "
20- "block read\n", req->rq_disk->disk_name);
21+ /* printk(KERN_WARNING "%s: retrying using single "
22+ "block read\n", req->rq_disk->disk_name); */
23 disable_multi = 1;
24 continue;
25 }
26--
271.7.2.5
28
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0002-omap-Change-omap_device-activate-dectivate-latency-m.patch b/recipes-kernel/linux/linux-3.0/sakoman/0002-omap-Change-omap_device-activate-dectivate-latency-m.patch
deleted file mode 100644
index 54305bde..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0002-omap-Change-omap_device-activate-dectivate-latency-m.patch
+++ /dev/null
@@ -1,49 +0,0 @@
1From a2e59d4041e8c42e21d90c0696ea8437a0cfc866 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Mon, 23 May 2011 12:16:50 -0700
4Subject: [PATCH 02/14] omap: Change omap_device activate/dectivate latency messages from pr_warning to pr_debug
5
6Messages can be safely ignored, so reduce console noise
7
8Signed-off-by: Steve Sakoman <steve@sakoman.com>
9---
10 arch/arm/plat-omap/omap_device.c | 8 ++++----
11 1 files changed, 4 insertions(+), 4 deletions(-)
12
13diff --git a/arch/arm/plat-omap/omap_device.c b/arch/arm/plat-omap/omap_device.c
14index be45147..e3d9520 100644
15--- a/arch/arm/plat-omap/omap_device.c
16+++ b/arch/arm/plat-omap/omap_device.c
17@@ -146,12 +146,12 @@ static int _omap_device_activate(struct omap_device *od, u8 ignore_lat)
18 odpl->activate_lat_worst = act_lat;
19 if (odpl->flags & OMAP_DEVICE_LATENCY_AUTO_ADJUST) {
20 odpl->activate_lat = act_lat;
21- pr_warning("omap_device: %s.%d: new worst case "
22+ pr_debug("omap_device: %s.%d: new worst case "
23 "activate latency %d: %llu\n",
24 od->pdev.name, od->pdev.id,
25 od->pm_lat_level, act_lat);
26 } else
27- pr_warning("omap_device: %s.%d: activate "
28+ pr_debug("omap_device: %s.%d: activate "
29 "latency %d higher than exptected. "
30 "(%llu > %d)\n",
31 od->pdev.name, od->pdev.id,
32@@ -214,12 +214,12 @@ static int _omap_device_deactivate(struct omap_device *od, u8 ignore_lat)
33 odpl->deactivate_lat_worst = deact_lat;
34 if (odpl->flags & OMAP_DEVICE_LATENCY_AUTO_ADJUST) {
35 odpl->deactivate_lat = deact_lat;
36- pr_warning("omap_device: %s.%d: new worst case "
37+ pr_debug("omap_device: %s.%d: new worst case "
38 "deactivate latency %d: %llu\n",
39 od->pdev.name, od->pdev.id,
40 od->pm_lat_level, deact_lat);
41 } else
42- pr_warning("omap_device: %s.%d: deactivate "
43+ pr_debug("omap_device: %s.%d: deactivate "
44 "latency %d higher than exptected. "
45 "(%llu > %d)\n",
46 od->pdev.name, od->pdev.id,
47--
481.7.2.5
49
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0003-OMAP-DSS2-add-bootarg-for-selecting-svideo-or-compos.patch b/recipes-kernel/linux/linux-3.0/sakoman/0003-OMAP-DSS2-add-bootarg-for-selecting-svideo-or-compos.patch
deleted file mode 100644
index 43562874..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0003-OMAP-DSS2-add-bootarg-for-selecting-svideo-or-compos.patch
+++ /dev/null
@@ -1,75 +0,0 @@
1From 630557c2785955cc0abbe4bf29b22f703a404e02 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Tue, 19 Jan 2010 21:19:15 -0800
4Subject: [PATCH 03/14] OMAP: DSS2: add bootarg for selecting svideo or composite for tv output
5
6also add pal-16 and ntsc-16 omapfb.mode settings for 16bpp
7---
8 drivers/video/omap2/dss/venc.c | 22 ++++++++++++++++++++++
9 drivers/video/omap2/omapfb/omapfb-main.c | 10 +++++++++-
10 2 files changed, 31 insertions(+), 1 deletions(-)
11
12diff --git a/drivers/video/omap2/dss/venc.c b/drivers/video/omap2/dss/venc.c
13index 980f919..4fb594d 100644
14--- a/drivers/video/omap2/dss/venc.c
15+++ b/drivers/video/omap2/dss/venc.c
16@@ -85,6 +85,11 @@
17 #define VENC_OUTPUT_TEST 0xC8
18 #define VENC_DAC_B__DAC_C 0xC8
19
20+static char *tv_connection;
21+
22+module_param_named(tvcable, tv_connection, charp, 0);
23+MODULE_PARM_DESC(tvcable, "TV connection type (svideo, composite)");
24+
25 struct venc_config {
26 u32 f_control;
27 u32 vidout_ctrl;
28@@ -461,6 +466,23 @@ static int venc_panel_probe(struct omap_dss_device *dssdev)
29 {
30 dssdev->panel.timings = omap_dss_pal_timings;
31
32+ /* Allow the TV output to be overriden */
33+ if (tv_connection) {
34+ if (strcmp(tv_connection, "svideo") == 0) {
35+ printk(KERN_INFO
36+ "omapdss: tv output is svideo.\n");
37+ dssdev->phy.venc.type = OMAP_DSS_VENC_TYPE_SVIDEO;
38+ } else if (strcmp(tv_connection, "composite") == 0) {
39+ printk(KERN_INFO
40+ "omapdss: tv output is composite.\n");
41+ dssdev->phy.venc.type = OMAP_DSS_VENC_TYPE_COMPOSITE;
42+ } else {
43+ printk(KERN_INFO
44+ "omapdss: unsupported output type'%s'.\n",
45+ tv_connection);
46+ }
47+ }
48+
49 return 0;
50 }
51
52diff --git a/drivers/video/omap2/omapfb/omapfb-main.c b/drivers/video/omap2/omapfb/omapfb-main.c
53index 505bc12..c35c1f8 100644
54--- a/drivers/video/omap2/omapfb/omapfb-main.c
55+++ b/drivers/video/omap2/omapfb/omapfb-main.c
56@@ -2002,7 +2002,15 @@ static int omapfb_mode_to_timings(const char *mode_str,
57 int r;
58
59 #ifdef CONFIG_OMAP2_DSS_VENC
60- if (strcmp(mode_str, "pal") == 0) {
61+ if (strcmp(mode_str, "pal-16") == 0) {
62+ *timings = omap_dss_pal_timings;
63+ *bpp = 16;
64+ return 0;
65+ } else if (strcmp(mode_str, "ntsc-16") == 0) {
66+ *timings = omap_dss_ntsc_timings;
67+ *bpp = 16;
68+ return 0;
69+ } else if (strcmp(mode_str, "pal") == 0) {
70 *timings = omap_dss_pal_timings;
71 *bpp = 24;
72 return 0;
73--
741.7.2.5
75
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0004-mtd-nand-Eliminate-noisey-uncorrectable-error-messag.patch b/recipes-kernel/linux/linux-3.0/sakoman/0004-mtd-nand-Eliminate-noisey-uncorrectable-error-messag.patch
deleted file mode 100644
index 94d629b4..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0004-mtd-nand-Eliminate-noisey-uncorrectable-error-messag.patch
+++ /dev/null
@@ -1,28 +0,0 @@
1From bf974dd3f24e623f04422b8013d047d78d430f0e Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Fri, 1 Jul 2011 10:00:03 -0700
4Subject: [PATCH 04/14] mtd: nand: Eliminate noisey "uncorrectable error" messages
5
6Other layers of the stack give more informative messages when __nand_correct_data() fails
7
8Signed-off-by: Steve Sakoman <steve@sakoman.com>
9---
10 drivers/mtd/nand/nand_ecc.c | 2 +-
11 1 files changed, 1 insertions(+), 1 deletions(-)
12
13diff --git a/drivers/mtd/nand/nand_ecc.c b/drivers/mtd/nand/nand_ecc.c
14index 271b8e7..ad55e55 100644
15--- a/drivers/mtd/nand/nand_ecc.c
16+++ b/drivers/mtd/nand/nand_ecc.c
17@@ -507,7 +507,7 @@ int __nand_correct_data(unsigned char *buf,
18 if ((bitsperbyte[b0] + bitsperbyte[b1] + bitsperbyte[b2]) == 1)
19 return 1; /* error in ecc data; no action needed */
20
21- printk(KERN_ERR "uncorrectable error : ");
22+ // printk(KERN_ERR "uncorrectable error : ");
23 return -1;
24 }
25 EXPORT_SYMBOL(__nand_correct_data);
26--
271.7.2.5
28
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0005-video-add-timings-for-hd720.patch b/recipes-kernel/linux/linux-3.0/sakoman/0005-video-add-timings-for-hd720.patch
deleted file mode 100644
index 2b474d64..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0005-video-add-timings-for-hd720.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From fbc33b30b663ec8c0d4374ba08f0608a7cc4b977 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Sat, 19 Dec 2009 06:52:43 -0800
4Subject: [PATCH 05/14] video: add timings for hd720
5
6---
7 drivers/video/modedb.c | 4 ++++
8 1 files changed, 4 insertions(+), 0 deletions(-)
9
10diff --git a/drivers/video/modedb.c b/drivers/video/modedb.c
11index cb175fe..9baead4 100644
12--- a/drivers/video/modedb.c
13+++ b/drivers/video/modedb.c
14@@ -103,6 +103,10 @@ static const struct fb_videomode modedb[] = {
15 { NULL, 70, 1024, 768, 13333, 144, 24, 29, 3, 136, 6, 0,
16 FB_VMODE_NONINTERLACED },
17
18+ /* 1280x720 @ 60 Hz, 45 kHz hsync, CEA 681-E Format 4 */
19+ { "hd720", 60, 1280, 720, 13468, 220, 110, 20, 5, 40, 5, 0,
20+ FB_VMODE_NONINTERLACED },
21+
22 /* 1280x1024 @ 87 Hz interlaced, 51 kHz hsync */
23 { NULL, 87, 1280, 1024, 12500, 56, 16, 128, 1, 216, 12, 0,
24 FB_VMODE_INTERLACED },
25--
261.7.2.5
27
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0006-drivers-net-smsc911x-return-ENODEV-if-device-is-not-.patch b/recipes-kernel/linux/linux-3.0/sakoman/0006-drivers-net-smsc911x-return-ENODEV-if-device-is-not-.patch
deleted file mode 100644
index b8fdba24..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0006-drivers-net-smsc911x-return-ENODEV-if-device-is-not-.patch
+++ /dev/null
@@ -1,29 +0,0 @@
1From 948bbae38457af6a11232375f9d95fc69641e9f4 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <sakoman@gmail.com>
3Date: Tue, 15 Dec 2009 15:17:44 -0800
4Subject: [PATCH 06/14] drivers: net: smsc911x: return ENODEV if device is not found
5
6Signed-off-by: Steve Sakoman <sakoman@gmail.com>
7---
8 drivers/net/smsc911x.c | 4 +++-
9 1 files changed, 3 insertions(+), 1 deletions(-)
10
11diff --git a/drivers/net/smsc911x.c b/drivers/net/smsc911x.c
12index c6d47d1..0c7c4a2 100644
13--- a/drivers/net/smsc911x.c
14+++ b/drivers/net/smsc911x.c
15@@ -2169,8 +2169,10 @@ static int __devinit smsc911x_drv_probe(struct platform_device *pdev)
16 pdata->ops = &shifted_smsc911x_ops;
17
18 retval = smsc911x_init(dev);
19- if (retval < 0)
20+ if (retval < 0) {
21+ retval = -ENODEV;
22 goto out_unmap_io_3;
23+ }
24
25 /* configure irq polarity and type before connecting isr */
26 if (pdata->config.irq_polarity == SMSC911X_IRQ_POLARITY_ACTIVE_HIGH)
27--
281.7.2.5
29
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0007-drivers-input-touchscreen-ads7846-return-ENODEV-if-d.patch b/recipes-kernel/linux/linux-3.0/sakoman/0007-drivers-input-touchscreen-ads7846-return-ENODEV-if-d.patch
deleted file mode 100644
index 158c0ad6..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0007-drivers-input-touchscreen-ads7846-return-ENODEV-if-d.patch
+++ /dev/null
@@ -1,45 +0,0 @@
1From 34f40fe736113c2066bf86ca163a4aff8b6d061f Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <sakoman@gmail.com>
3Date: Tue, 15 Dec 2009 15:24:10 -0800
4Subject: [PATCH 07/14] drivers: input: touchscreen: ads7846: return ENODEV if device is not found
5
6Signed-off-by: Steve Sakoman <sakoman@gmail.com>
7---
8 drivers/input/touchscreen/ads7846.c | 13 ++++++++++---
9 1 files changed, 10 insertions(+), 3 deletions(-)
10
11diff --git a/drivers/input/touchscreen/ads7846.c b/drivers/input/touchscreen/ads7846.c
12index 5196861..b0bd1ba 100644
13--- a/drivers/input/touchscreen/ads7846.c
14+++ b/drivers/input/touchscreen/ads7846.c
15@@ -1349,9 +1349,16 @@ static int __devinit ads7846_probe(struct spi_device *spi)
16 * the touchscreen, in case it's not connected.
17 */
18 if (ts->model == 7845)
19- ads7845_read12_ser(&spi->dev, PWRDOWN);
20+ err = ads7845_read12_ser(&spi->dev, PWRDOWN);
21 else
22- (void) ads7846_read12_ser(&spi->dev, READ_12BIT_SER(vaux));
23+ err = ads7846_read12_ser(&spi->dev, READ_12BIT_SER(vaux));
24+
25+ /* if sample is all 0's or all 1's then there is no device on spi */
26+ if ( (err == 0x000) || (err == 0xfff)) {
27+ dev_info(&spi->dev, "no device detected, test read result was 0x%08X\n", err);
28+ err = -ENODEV;
29+ goto err_free_irq;
30+ }
31
32 err = sysfs_create_group(&spi->dev.kobj, &ads784x_attr_group);
33 if (err)
34@@ -1376,7 +1383,7 @@ static int __devinit ads7846_probe(struct spi_device *spi)
35 err_put_regulator:
36 regulator_put(ts->reg);
37 err_free_gpio:
38- if (!ts->get_pendown_state)
39+ if (!ts->get_pendown_state && ts->gpio_pendown != -1)
40 gpio_free(ts->gpio_pendown);
41 err_cleanup_filter:
42 if (ts->filter_cleanup)
43--
441.7.2.5
45
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0008-Revert-omap2_mcspi-Flush-posted-writes.patch b/recipes-kernel/linux/linux-3.0/sakoman/0008-Revert-omap2_mcspi-Flush-posted-writes.patch
deleted file mode 100644
index 8058b5c3..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0008-Revert-omap2_mcspi-Flush-posted-writes.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From baf40f002836b7c0fe9aeeba92ba483f6e9d2384 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Thu, 3 Mar 2011 13:29:30 -0800
4Subject: [PATCH 08/14] Revert "omap2_mcspi: Flush posted writes"
5
6This reverts commit a330ce2001b290c59fe98c37e981683ef0a75fdf.
7
8The above commit breaks the ads7846 driver
9---
10 drivers/spi/omap2_mcspi.c | 1 -
11 1 files changed, 0 insertions(+), 1 deletions(-)
12
13diff --git a/drivers/spi/omap2_mcspi.c b/drivers/spi/omap2_mcspi.c
14index 969cdd2..da981ee 100644
15--- a/drivers/spi/omap2_mcspi.c
16+++ b/drivers/spi/omap2_mcspi.c
17@@ -195,7 +195,6 @@ static inline void mcspi_write_chconf0(const struct spi_device *spi, u32 val)
18
19 cs->chconf0 = val;
20 mcspi_write_cs_reg(spi, OMAP2_MCSPI_CHCONF0, val);
21- mcspi_read_cs_reg(spi, OMAP2_MCSPI_CHCONF0);
22 }
23
24 static void omap2_mcspi_set_dma_req(const struct spi_device *spi,
25--
261.7.2.5
27
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0009-rtc-twl-Use-threaded-IRQ-remove-IRQ-enable-in-interr.patch b/recipes-kernel/linux/linux-3.0/sakoman/0009-rtc-twl-Use-threaded-IRQ-remove-IRQ-enable-in-interr.patch
deleted file mode 100644
index 220f9749..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0009-rtc-twl-Use-threaded-IRQ-remove-IRQ-enable-in-interr.patch
+++ /dev/null
@@ -1,57 +0,0 @@
1From 3532a9ceb9eb81147eab751b8c124b59acc87374 Mon Sep 17 00:00:00 2001
2From: Todd Poynor <toddpoynor@google.com>
3Date: Wed, 27 Jul 2011 07:07:20 +0000
4Subject: [PATCH 09/14] rtc: twl: Use threaded IRQ, remove IRQ enable in interrupt handler
5
6IRQs disabled on entry to twl_rtc_interrupt is not a consequence
7of LOCKDEP; both twl6030 and twl4030 explicitly disable IRQs
8before calling the module IRQ handlers.
9
10The ISR should not be enabling IRQs; use a threaded IRQ handler
11instead.
12
13Also fixes warnings:
14
15 WARNING: at kernel/irq/handle.c:130 handle_irq_event_percpu+nnn
16 irq nnn handler twl_rtc_interrupt+nnn enabled interrupts
17
18Signed-off-by: Todd Poynor <toddpoynor@google.com>
19---
20 drivers/rtc/rtc-twl.c | 14 +++-----------
21 1 files changed, 3 insertions(+), 11 deletions(-)
22
23diff --git a/drivers/rtc/rtc-twl.c b/drivers/rtc/rtc-twl.c
24index f9a2799..3fee95e 100644
25--- a/drivers/rtc/rtc-twl.c
26+++ b/drivers/rtc/rtc-twl.c
27@@ -362,14 +362,6 @@ static irqreturn_t twl_rtc_interrupt(int irq, void *rtc)
28 int res;
29 u8 rd_reg;
30
31-#ifdef CONFIG_LOCKDEP
32- /* WORKAROUND for lockdep forcing IRQF_DISABLED on us, which
33- * we don't want and can't tolerate. Although it might be
34- * friendlier not to borrow this thread context...
35- */
36- local_irq_enable();
37-#endif
38-
39 res = twl_rtc_read_u8(&rd_reg, REG_RTC_STATUS_REG);
40 if (res)
41 goto out;
42@@ -462,9 +454,9 @@ static int __devinit twl_rtc_probe(struct platform_device *pdev)
43 if (ret < 0)
44 goto out1;
45
46- ret = request_irq(irq, twl_rtc_interrupt,
47- IRQF_TRIGGER_RISING,
48- dev_name(&rtc->dev), rtc);
49+ ret = request_threaded_irq(irq, NULL, twl_rtc_interrupt,
50+ IRQF_TRIGGER_RISING,
51+ dev_name(&rtc->dev), rtc);
52 if (ret < 0) {
53 dev_err(&pdev->dev, "IRQ is not free.\n");
54 goto out1;
55--
561.7.2.5
57
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0010-rtc-twl-Fix-registration-vs.-init-order.patch b/recipes-kernel/linux/linux-3.0/sakoman/0010-rtc-twl-Fix-registration-vs.-init-order.patch
deleted file mode 100644
index d710643a..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0010-rtc-twl-Fix-registration-vs.-init-order.patch
+++ /dev/null
@@ -1,122 +0,0 @@
1From 2cc62887b37d504df009d7241e6cebc3c65c32a5 Mon Sep 17 00:00:00 2001
2From: Todd Poynor <toddpoynor@google.com>
3Date: Wed, 27 Jul 2011 07:07:21 +0000
4Subject: [PATCH 10/14] rtc: twl: Fix registration vs. init order
5
6Only register as an RTC device after the hardware has been
7successfully initialized. The RTC class driver will call
8back to this driver to read a pending alarm, and other
9drivers watching for new devices on the RTC class may
10read the RTC time upon registration. Such access might
11occur while the RTC is stopped, prior to clearing
12pending alarms, etc.
13
14The new ordering also avoids leaving the platform
15device drvdata set to an unregistered struct rtc_device *
16on probe errors.
17
18Signed-off-by: Todd Poynor <toddpoynor@google.com>
19---
20 drivers/rtc/rtc-twl.c | 52 ++++++++++++++++++++++--------------------------
21 1 files changed, 24 insertions(+), 28 deletions(-)
22
23diff --git a/drivers/rtc/rtc-twl.c b/drivers/rtc/rtc-twl.c
24index 3fee95e..a64494e 100644
25--- a/drivers/rtc/rtc-twl.c
26+++ b/drivers/rtc/rtc-twl.c
27@@ -420,24 +420,12 @@ static struct rtc_class_ops twl_rtc_ops = {
28 static int __devinit twl_rtc_probe(struct platform_device *pdev)
29 {
30 struct rtc_device *rtc;
31- int ret = 0;
32+ int ret = -EINVAL;
33 int irq = platform_get_irq(pdev, 0);
34 u8 rd_reg;
35
36 if (irq <= 0)
37- return -EINVAL;
38-
39- rtc = rtc_device_register(pdev->name,
40- &pdev->dev, &twl_rtc_ops, THIS_MODULE);
41- if (IS_ERR(rtc)) {
42- ret = PTR_ERR(rtc);
43- dev_err(&pdev->dev, "can't register RTC device, err %ld\n",
44- PTR_ERR(rtc));
45- goto out0;
46-
47- }
48-
49- platform_set_drvdata(pdev, rtc);
50+ goto out1;
51
52 ret = twl_rtc_read_u8(&rd_reg, REG_RTC_STATUS_REG);
53 if (ret < 0)
54@@ -454,14 +442,6 @@ static int __devinit twl_rtc_probe(struct platform_device *pdev)
55 if (ret < 0)
56 goto out1;
57
58- ret = request_threaded_irq(irq, NULL, twl_rtc_interrupt,
59- IRQF_TRIGGER_RISING,
60- dev_name(&rtc->dev), rtc);
61- if (ret < 0) {
62- dev_err(&pdev->dev, "IRQ is not free.\n");
63- goto out1;
64- }
65-
66 if (twl_class_is_6030()) {
67 twl6030_interrupt_unmask(TWL6030_RTC_INT_MASK,
68 REG_INT_MSK_LINE_A);
69@@ -472,28 +452,44 @@ static int __devinit twl_rtc_probe(struct platform_device *pdev)
70 /* Check RTC module status, Enable if it is off */
71 ret = twl_rtc_read_u8(&rd_reg, REG_RTC_CTRL_REG);
72 if (ret < 0)
73- goto out2;
74+ goto out1;
75
76 if (!(rd_reg & BIT_RTC_CTRL_REG_STOP_RTC_M)) {
77 dev_info(&pdev->dev, "Enabling TWL-RTC.\n");
78 rd_reg = BIT_RTC_CTRL_REG_STOP_RTC_M;
79 ret = twl_rtc_write_u8(rd_reg, REG_RTC_CTRL_REG);
80 if (ret < 0)
81- goto out2;
82+ goto out1;
83 }
84
85 /* init cached IRQ enable bits */
86 ret = twl_rtc_read_u8(&rtc_irq_bits, REG_RTC_INTERRUPTS_REG);
87 if (ret < 0)
88+ goto out1;
89+
90+ rtc = rtc_device_register(pdev->name,
91+ &pdev->dev, &twl_rtc_ops, THIS_MODULE);
92+ if (IS_ERR(rtc)) {
93+ ret = PTR_ERR(rtc);
94+ dev_err(&pdev->dev, "can't register RTC device, err %ld\n",
95+ PTR_ERR(rtc));
96+ goto out1;
97+ }
98+
99+ ret = request_threaded_irq(irq, NULL, twl_rtc_interrupt,
100+ IRQF_TRIGGER_RISING,
101+ dev_name(&rtc->dev), rtc);
102+ if (ret < 0) {
103+ dev_err(&pdev->dev, "IRQ is not free.\n");
104 goto out2;
105+ }
106
107- return ret;
108+ platform_set_drvdata(pdev, rtc);
109+ return 0;
110
111 out2:
112- free_irq(irq, rtc);
113-out1:
114 rtc_device_unregister(rtc);
115-out0:
116+out1:
117 return ret;
118 }
119
120--
1211.7.2.5
122
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0011-soc-codecs-Enable-audio-capture-by-default-for-twl40.patch b/recipes-kernel/linux/linux-3.0/sakoman/0011-soc-codecs-Enable-audio-capture-by-default-for-twl40.patch
deleted file mode 100644
index 4a903b2a..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0011-soc-codecs-Enable-audio-capture-by-default-for-twl40.patch
+++ /dev/null
@@ -1,27 +0,0 @@
1From 76ab79b5491dd823477cd181b57795aa6b55f53c Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Thu, 17 Dec 2009 12:45:20 -0800
4Subject: [PATCH 11/14] soc: codecs: Enable audio capture by default for twl4030
5
6---
7 sound/soc/codecs/twl4030.c | 4 ++--
8 1 files changed, 2 insertions(+), 2 deletions(-)
9
10diff --git a/sound/soc/codecs/twl4030.c b/sound/soc/codecs/twl4030.c
11index bec788b..158ea04 100644
12--- a/sound/soc/codecs/twl4030.c
13+++ b/sound/soc/codecs/twl4030.c
14@@ -55,8 +55,8 @@ static const u8 twl4030_reg[TWL4030_CACHEREGNUM] = {
15 0x00, /* REG_OPTION (0x2) */
16 0x00, /* REG_UNKNOWN (0x3) */
17 0x00, /* REG_MICBIAS_CTL (0x4) */
18- 0x00, /* REG_ANAMICL (0x5) */
19- 0x00, /* REG_ANAMICR (0x6) */
20+ 0x34, /* REG_ANAMICL (0x5) */
21+ 0x14, /* REG_ANAMICR (0x6) */
22 0x00, /* REG_AVADC_CTL (0x7) */
23 0x00, /* REG_ADCMICSEL (0x8) */
24 0x00, /* REG_DIGMIXING (0x9) */
25--
261.7.2.5
27
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0012-soc-codecs-twl4030-Turn-on-mic-bias-by-default.patch b/recipes-kernel/linux/linux-3.0/sakoman/0012-soc-codecs-twl4030-Turn-on-mic-bias-by-default.patch
deleted file mode 100644
index 199a0f03..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0012-soc-codecs-twl4030-Turn-on-mic-bias-by-default.patch
+++ /dev/null
@@ -1,25 +0,0 @@
1From 31ec83c7092588f41b69e024f0ddd585c1981094 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Wed, 29 Dec 2010 11:39:16 -0800
4Subject: [PATCH 12/14] soc: codecs: twl4030: Turn on mic bias by default
5
6---
7 sound/soc/codecs/twl4030.c | 2 +-
8 1 files changed, 1 insertions(+), 1 deletions(-)
9
10diff --git a/sound/soc/codecs/twl4030.c b/sound/soc/codecs/twl4030.c
11index 158ea04..9bbf301 100644
12--- a/sound/soc/codecs/twl4030.c
13+++ b/sound/soc/codecs/twl4030.c
14@@ -54,7 +54,7 @@ static const u8 twl4030_reg[TWL4030_CACHEREGNUM] = {
15 0x00, /* REG_CODEC_MODE (0x1) */
16 0x00, /* REG_OPTION (0x2) */
17 0x00, /* REG_UNKNOWN (0x3) */
18- 0x00, /* REG_MICBIAS_CTL (0x4) */
19+ 0x03, /* REG_MICBIAS_CTL (0x4) */
20 0x34, /* REG_ANAMICL (0x5) */
21 0x14, /* REG_ANAMICR (0x6) */
22 0x00, /* REG_AVADC_CTL (0x7) */
23--
241.7.2.5
25
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0013-omap-mmc-twl4030-move-clock-input-selection-prior-to.patch b/recipes-kernel/linux/linux-3.0/sakoman/0013-omap-mmc-twl4030-move-clock-input-selection-prior-to.patch
deleted file mode 100644
index 016323de..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0013-omap-mmc-twl4030-move-clock-input-selection-prior-to.patch
+++ /dev/null
@@ -1,39 +0,0 @@
1From 23d7e04b5d71feafdd920f4bf4b735cc452fef59 Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Sun, 24 Jan 2010 09:33:56 -0800
4Subject: [PATCH 13/14] omap: mmc-twl4030: move clock input selection prior to vcc test
5
6otherwise it is not executed on systems that use non-twl regulators
7---
8 arch/arm/mach-omap2/hsmmc.c | 14 ++++++--------
9 1 files changed, 6 insertions(+), 8 deletions(-)
10
11diff --git a/arch/arm/mach-omap2/hsmmc.c b/arch/arm/mach-omap2/hsmmc.c
12index 66868c5..48a6cfb 100644
13--- a/arch/arm/mach-omap2/hsmmc.c
14+++ b/arch/arm/mach-omap2/hsmmc.c
15@@ -192,15 +192,13 @@ static void hsmmc23_before_set_reg(struct device *dev, int slot,
16 if (mmc->slots[0].remux)
17 mmc->slots[0].remux(dev, slot, power_on);
18
19- if (power_on) {
20- /* Only MMC2 supports a CLKIN */
21- if (mmc->slots[0].internal_clock) {
22- u32 reg;
23+ /* Only MMC2 supports a CLKIN */
24+ if (mmc->slots[0].internal_clock) {
25+ u32 reg;
26
27- reg = omap_ctrl_readl(control_devconf1_offset);
28- reg |= OMAP2_MMCSDIO2ADPCLKISEL;
29- omap_ctrl_writel(reg, control_devconf1_offset);
30- }
31+ reg = omap_ctrl_readl(control_devconf1_offset);
32+ reg |= OMAP2_MMCSDIO2ADPCLKISEL;
33+ omap_ctrl_writel(reg, control_devconf1_offset);
34 }
35 }
36
37--
381.7.2.5
39
diff --git a/recipes-kernel/linux/linux-3.0/sakoman/0014-rtc-twl-add-support-for-backup-battery-recharge.patch b/recipes-kernel/linux/linux-3.0/sakoman/0014-rtc-twl-add-support-for-backup-battery-recharge.patch
deleted file mode 100644
index f44b3d05..00000000
--- a/recipes-kernel/linux/linux-3.0/sakoman/0014-rtc-twl-add-support-for-backup-battery-recharge.patch
+++ /dev/null
@@ -1,57 +0,0 @@
1From 55f8fd15557b03c2b336c8214d44de9753d0ba5f Mon Sep 17 00:00:00 2001
2From: Steve Sakoman <steve@sakoman.com>
3Date: Thu, 4 Feb 2010 12:26:22 -0800
4Subject: [PATCH 14/14] rtc-twl: add support for backup battery recharge
5
6---
7 drivers/rtc/rtc-twl.c | 27 ++++++++++++++++++++++++++-
8 1 files changed, 26 insertions(+), 1 deletions(-)
9
10diff --git a/drivers/rtc/rtc-twl.c b/drivers/rtc/rtc-twl.c
11index a64494e..552446b 100644
12--- a/drivers/rtc/rtc-twl.c
13+++ b/drivers/rtc/rtc-twl.c
14@@ -30,7 +30,24 @@
15
16 #include <linux/i2c/twl.h>
17
18-
19+/*
20+ * PM_RECEIVER block register offsets (use TWL4030_MODULE_PM_RECEIVER)
21+ */
22+#define REG_BB_CFG 0x12
23+
24+/* PM_RECEIVER BB_CFG bitfields */
25+#define BIT_PM_RECEIVER_BB_CFG_BBCHEN 0x10
26+#define BIT_PM_RECEIVER_BB_CFG_BBSEL 0x0C
27+#define BIT_PM_RECEIVER_BB_CFG_BBSEL_2V5 0x00
28+#define BIT_PM_RECEIVER_BB_CFG_BBSEL_3V0 0x04
29+#define BIT_PM_RECEIVER_BB_CFG_BBSEL_3V1 0x08
30+#define BIT_PM_RECEIVER_BB_CFG_BBSEL_3v2 0x0c
31+#define BIT_PM_RECEIVER_BB_CFG_BBISEL 0x03
32+#define BIT_PM_RECEIVER_BB_CFG_BBISEL_25UA 0x00
33+#define BIT_PM_RECEIVER_BB_CFG_BBISEL_150UA 0x01
34+#define BIT_PM_RECEIVER_BB_CFG_BBISEL_500UA 0x02
35+#define BIT_PM_RECEIVER_BB_CFG_BBISEL_1MA 0x03
36+
37 /*
38 * RTC block register offsets (use TWL_MODULE_RTC)
39 */
40@@ -484,6 +501,14 @@ static int __devinit twl_rtc_probe(struct platform_device *pdev)
41 goto out2;
42 }
43
44+ /* enable backup battery charging */
45+ /* use a conservative 25uA @ 3.1V */
46+ ret = twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER,
47+ BIT_PM_RECEIVER_BB_CFG_BBCHEN |
48+ BIT_PM_RECEIVER_BB_CFG_BBSEL_3V1 |
49+ BIT_PM_RECEIVER_BB_CFG_BBISEL_25UA,
50+ REG_BB_CFG);
51+
52 platform_set_drvdata(pdev, rtc);
53 return 0;
54
55--
561.7.2.5
57