qi: add build instructions for the bootloader
[qi-bootmenu-system/guyou.git] / sources / patches / qi-bootloader-gta02-load-NAND-kernel-upon-AUX-press.patch
blob679e3d4377c37eac1752910d26355c84db8f652e
1 From fa5733c2e85cb5edfb7f9a20412922b5c6a4b28e Mon Sep 17 00:00:00 2001
2 From: Marc Andre Tanner <mat@brain-dump.org>
3 Date: Wed, 2 Dec 2009 01:29:58 +0100
4 Subject: [PATCH 2/3] gta02: load NAND kernel upon AUX press
6 Signed-off-by: Marc Andre Tanner <mat@brain-dump.org>
7 ---
8 src/cpu/s3c2442/gta02.c | 14 +++++++++++---
9 1 files changed, 11 insertions(+), 3 deletions(-)
11 diff --git a/src/cpu/s3c2442/gta02.c b/src/cpu/s3c2442/gta02.c
12 index 13be2ac..32a63bf 100644
13 --- a/src/cpu/s3c2442/gta02.c
14 +++ b/src/cpu/s3c2442/gta02.c
15 @@ -493,18 +493,24 @@ static u8 get_ui_keys_gta02(void)
16 u8 ret = 0;
17 static u8 old_keys = 0; /* previous state for debounce */
18 static u8 older_keys = 0; /* previous debounced output for edge detect */
19 + static u8 kernel_ui = 0;
21 /* GPF6 is AUX on GTA02, map to UI_ACTION_SKIPKERNEL, down = 1 */
22 keys = !!(rGPFDAT & (1 << 6));
24 /* edge action */
25 - if ((old_keys & 1) && !(older_keys & 1))
26 - ret |= UI_ACTION_SKIPKERNEL;
27 + if ((old_keys & 1) && !(older_keys & 1)) {
28 + /* only generate 1 skip event if a bootmenu kernel is configured
29 + * otherwise we would probably end up skipping the ui kernel too */
30 + if (!board_api_gta02.kernel_ui || !kernel_ui)
31 + ret |= UI_ACTION_SKIPKERNEL;
32 + kernel_ui = UI_ACTION_UI_KERNEL;
33 + }
35 older_keys = old_keys;
36 old_keys = keys;
38 - return ret;
39 + return ret | kernel_ui;
42 static u8 get_ui_debug_gta02(void)
43 @@ -737,4 +743,6 @@ const struct board_api board_api_gta02 = {
44 "root=/dev/mtdblock6 ",
47 + /* boot NAND kernel on AUX press */
48 + .kernel_ui = 3,
50 --
51 1.6.5