This repository has been archived on 2026-03-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ubports_kernel_google_msm/include/linux
Jaehoon Chung 7b952b0dda mmc: support BKOPS feature for eMMC
Enable eMMC background operations (BKOPS) feature.

If URGENT_BKOPS is set after a response, note that BKOPS are required.
Immediately run BKOPS if required.  Read/write operations should be
requested during BKOPS(LEVEL-1), then issue HPI to interrupt the
ongoing BKOPS and service the foreground operation.
(This patch only controls the LEVEL2/3.)

When repeating the writing 1GB data, at a certain time, performance is
decreased.  At that time, card triggers the Level-3 or Level-2.  After
running bkops, performance is recovered.

Future considerations:
 * Check BKOPS_LEVEL=1 and start BKOPS in a preventive manner.
 * Interrupt ongoing BKOPS before powering off the card.
 * How do we get BKOPS_STATUS value (periodically send ext_csd command)?
 * If using periodic bkops, also consider runtime_pm control.

(cherry picked from commit 6807769f7bf68984a5aeda4b9b521f1167cbaf00)

[merez@codeaurora.org: core.c: release_host when stopping BKOPs for
non SDIO cards in suspend]
(cherry picked from commit c1a56a1247341d13af7c8f84d5ac1211a3c4b376)

Change-Id: I5ac2ac909222e2b4e94cd97ce7da79f4488f06f0
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Konstantin Dorfman <kdorfman@codeaurora.org>
Reviewed-by: Maya Erez <merez@codeaurora.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Signed-off-by: Maya Erez <merez@codeaurora.org>
(cherry picked from commit 653abe2434532e4d2886d27dfdc3f42ae1c7ade1)
2013-03-07 15:21:14 -08:00
..
2013-02-27 18:16:16 -08:00
2012-04-23 14:23:32 +03:00
2013-03-07 15:21:14 -08:00
2012-04-27 11:03:38 -06:00
2011-11-02 16:07:03 -07:00
2012-04-09 13:57:51 -07:00
2013-02-27 18:13:43 -08:00
2011-10-26 15:43:25 -04:00
2012-03-20 21:29:46 -04:00
2013-02-25 11:30:04 -08:00
2012-03-16 20:35:02 +00:00
2012-03-16 20:35:02 +00:00
2013-02-25 11:29:27 -08:00
2012-02-28 16:02:54 +01:00
2012-01-03 22:54:57 -05:00
2011-10-29 21:20:22 +02:00
2012-04-09 13:57:52 -07:00
2012-03-29 15:38:31 +10:30
2012-03-23 16:58:38 -07:00
2013-02-25 11:29:22 -08:00
2011-12-13 09:26:45 +00:00
2012-03-20 21:29:37 -04:00
2012-03-20 21:29:53 -04:00
2013-02-20 02:50:23 -08:00
2012-02-20 19:46:36 +11:00
2012-01-04 08:56:31 -06:00
2011-10-31 20:19:04 +00:00
2012-05-22 14:01:06 -07:00
2013-02-20 01:31:50 -08:00
2011-11-26 14:59:39 -05:00
2012-04-30 15:30:18 -07:00
2011-12-11 18:25:16 -05:00
2012-01-12 20:13:04 -08:00
2013-03-04 12:44:09 -08:00
2013-02-25 11:33:57 -08:00
2013-02-20 02:50:20 -08:00
2012-04-12 12:57:08 +02:00
2012-02-28 17:10:21 +00:00
2012-04-09 13:53:16 -07:00
2012-04-27 10:46:45 +08:00
2012-04-09 13:57:58 -07:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-27 22:45:26 -04:00
2013-02-08 15:04:34 -08:00
2012-01-03 22:55:17 -05:00
2013-02-27 18:13:08 -08:00
2012-01-09 13:52:09 +01:00
2012-03-08 10:50:35 -08:00
2013-03-04 12:45:02 -08:00
2012-03-21 17:54:57 -07:00
2012-03-08 10:50:35 -08:00
2012-01-17 15:40:51 -08:00
2011-12-27 11:26:41 +02:00
2013-02-25 11:29:50 -08:00
2012-03-15 21:41:34 +01:00
2012-03-03 15:04:45 -05:00
2013-02-25 11:29:50 -08:00
2013-02-25 11:32:22 -08:00
2011-11-14 00:47:54 -05:00
2012-03-05 15:26:47 -05:00
2012-03-21 17:54:58 -07:00
2012-03-21 17:55:01 -07:00
2012-01-06 12:10:26 -08:00
2012-03-16 21:49:24 +01:00
2013-02-25 11:29:50 -08:00
2011-12-13 09:26:45 +00:00
2011-11-02 16:07:02 -07:00
2013-02-25 11:29:28 -08:00
2013-02-25 11:29:28 -08:00
2013-02-25 11:31:56 -08:00
2012-03-20 21:29:38 -04:00
2013-02-27 18:16:43 -08:00
2012-01-03 22:55:07 -05:00
2013-02-25 11:32:34 -08:00
2012-03-28 18:30:03 +01:00
2012-03-08 11:38:50 -08:00
2012-03-12 22:19:13 +01:00
2012-01-09 09:33:57 +09:00
2012-05-01 09:40:19 -04:00
2012-03-06 11:01:33 +02:00
2012-03-19 16:53:08 -04:00
2011-12-13 09:26:45 +00:00
2011-10-31 17:30:47 -07:00
2012-05-16 13:27:23 -07:00
2013-03-04 12:47:43 -08:00
2013-02-25 11:29:18 -08:00
2012-01-03 22:54:56 -05:00
2012-03-22 19:43:43 -07:00
2012-04-10 22:39:17 -06:00
2013-03-04 12:45:08 -08:00
2011-11-02 16:07:02 -07:00
2012-04-11 09:36:00 +01:00
2012-03-08 10:50:35 -08:00
2013-02-20 02:50:29 -08:00
2013-02-25 11:29:50 -08:00