Blob Blame Raw
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