grub2/0038-grub-core-term-terminfo.c-Only-fix-up-powerpc-key-re.patch
Peter Jones f74b50e380 Rebase to upstream, fix a pile of bugs. The usual.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-06-12 15:37:08 -04:00

75 lines
2.4 KiB
Diff

From 5ba7247c064336767ee6b0ad9465b547ac90322a Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwatson@ubuntu.com>
Date: Fri, 14 Sep 2012 11:23:36 +0100
Subject: [PATCH 038/482] * grub-core/term/terminfo.c: Only fix up powerpc key
repeat on IEEE1275 machines. Fixes powerpc-emu compilation. *
include/grub/terminfo.h: Likewise.
---
ChangeLog | 6 ++++++
grub-core/term/terminfo.c | 6 +++---
include/grub/terminfo.h | 2 +-
3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 527e9d1..941ed93 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-09-14 Colin Watson <cjwatson@ubuntu.com>
+
+ * grub-core/term/terminfo.c: Only fix up powerpc key repeat on
+ IEEE1275 machines. Fixes powerpc-emu compilation.
+ * include/grub/terminfo.h: Likewise.
+
2012-09-12 Vladimir Serbinenko <phcoder@gmail.com>
* include/grub/efi/api.h (grub_efi_runtime_services): Make vendor_guid
diff --git a/grub-core/term/terminfo.c b/grub-core/term/terminfo.c
index e35563f..d421e4e 100644
--- a/grub-core/term/terminfo.c
+++ b/grub-core/term/terminfo.c
@@ -33,7 +33,7 @@
#include <grub/extcmd.h>
#include <grub/i18n.h>
#include <grub/time.h>
-#ifdef __powerpc__
+#if defined(__powerpc__) && defined(GRUB_MACHINE_IEEE1275)
#include <grub/ieee1275/ieee1275.h>
#endif
@@ -563,7 +563,7 @@ grub_terminfo_getkey (struct grub_term_input *termi)
grub_terminfo_readkey (termi, data->input_buf,
&data->npending, data->readkey);
-#ifdef __powerpc__
+#if defined(__powerpc__) && defined(GRUB_MACHINE_IEEE1275)
if (data->npending == 1 && data->input_buf[0] == '\e'
&& grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_BROKEN_REPEAT)
&& grub_get_time_ms () - data->last_key_time < 1000
@@ -580,7 +580,7 @@ grub_terminfo_getkey (struct grub_term_input *termi)
int ret;
data->npending--;
ret = data->input_buf[0];
-#ifdef __powerpc__
+#if defined(__powerpc__) && defined(GRUB_MACHINE_IEEE1275)
if (grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_BROKEN_REPEAT))
{
data->last_key = ret;
diff --git a/include/grub/terminfo.h b/include/grub/terminfo.h
index c081a92..20541a9 100644
--- a/include/grub/terminfo.h
+++ b/include/grub/terminfo.h
@@ -32,7 +32,7 @@ struct grub_terminfo_input_state
{
int input_buf[GRUB_TERMINFO_READKEY_MAX_LEN];
int npending;
-#ifdef __powerpc__
+#if defined(__powerpc__) && defined(GRUB_MACHINE_IEEE1275)
int last_key;
grub_uint64_t last_key_time;
#endif
--
1.8.2.1