2015-07-22 14:14:34 +00:00
|
|
|
From d27d2a5ba388b2d18881a7ed429d3639801251ec Mon Sep 17 00:00:00 2001
|
2013-06-12 19:24:37 +00:00
|
|
|
From: Paulo Flabiano Smorigo <pfsmorigo@br.ibm.com>
|
|
|
|
Date: Tue, 11 Jun 2013 15:14:05 -0300
|
2015-07-22 14:14:34 +00:00
|
|
|
Subject: [PATCH 25/74] Disable GRUB video support for IBM power machines
|
2013-06-12 19:24:37 +00:00
|
|
|
|
|
|
|
Should fix the problem in bugzilla:
|
|
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=973205
|
|
|
|
---
|
|
|
|
grub-core/kern/ieee1275/cmain.c | 5 ++++-
|
|
|
|
grub-core/video/ieee1275.c | 9 ++++++---
|
|
|
|
include/grub/ieee1275/ieee1275.h | 2 ++
|
|
|
|
3 files changed, 12 insertions(+), 4 deletions(-)
|
|
|
|
|
|
|
|
diff --git a/grub-core/kern/ieee1275/cmain.c b/grub-core/kern/ieee1275/cmain.c
|
2014-06-24 15:18:06 +00:00
|
|
|
index 3e12e6b..3e14f53 100644
|
2013-06-12 19:24:37 +00:00
|
|
|
--- a/grub-core/kern/ieee1275/cmain.c
|
|
|
|
+++ b/grub-core/kern/ieee1275/cmain.c
|
2014-06-24 15:18:06 +00:00
|
|
|
@@ -90,7 +90,10 @@ grub_ieee1275_find_options (void)
|
|
|
|
}
|
2013-06-12 19:24:37 +00:00
|
|
|
|
|
|
|
if (rc >= 0 && grub_strncmp (tmp, "IBM", 3) == 0)
|
|
|
|
- grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS);
|
|
|
|
+ {
|
|
|
|
+ grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_NO_TREE_SCANNING_FOR_DISKS);
|
|
|
|
+ grub_ieee1275_set_flag (GRUB_IEEE1275_FLAG_DISABLE_VIDEO_SUPPORT);
|
|
|
|
+ }
|
|
|
|
|
|
|
|
/* Old Macs have no key repeat, newer ones have fully working one.
|
|
|
|
The ones inbetween when repeated key generates an escaoe sequence
|
|
|
|
diff --git a/grub-core/video/ieee1275.c b/grub-core/video/ieee1275.c
|
2014-01-06 16:39:16 +00:00
|
|
|
index 0b150ec..813ab38 100644
|
2013-06-12 19:24:37 +00:00
|
|
|
--- a/grub-core/video/ieee1275.c
|
|
|
|
+++ b/grub-core/video/ieee1275.c
|
2014-01-06 16:39:16 +00:00
|
|
|
@@ -351,9 +351,12 @@ static struct grub_video_adapter grub_video_ieee1275_adapter =
|
2013-06-12 19:24:37 +00:00
|
|
|
|
|
|
|
GRUB_MOD_INIT(ieee1275_fb)
|
|
|
|
{
|
|
|
|
- find_display ();
|
|
|
|
- if (display)
|
|
|
|
- grub_video_register (&grub_video_ieee1275_adapter);
|
|
|
|
+ if (! grub_ieee1275_test_flag (GRUB_IEEE1275_FLAG_DISABLE_VIDEO_SUPPORT))
|
|
|
|
+ {
|
|
|
|
+ find_display ();
|
|
|
|
+ if (display)
|
|
|
|
+ grub_video_register (&grub_video_ieee1275_adapter);
|
|
|
|
+ }
|
|
|
|
}
|
|
|
|
|
|
|
|
GRUB_MOD_FINI(ieee1275_fb)
|
|
|
|
diff --git a/include/grub/ieee1275/ieee1275.h b/include/grub/ieee1275/ieee1275.h
|
2014-03-13 18:02:22 +00:00
|
|
|
index 6a21f5d..663935d 100644
|
2013-06-12 19:24:37 +00:00
|
|
|
--- a/include/grub/ieee1275/ieee1275.h
|
|
|
|
+++ b/include/grub/ieee1275/ieee1275.h
|
2014-03-13 18:02:22 +00:00
|
|
|
@@ -146,6 +146,8 @@ enum grub_ieee1275_flag
|
2013-06-12 19:24:37 +00:00
|
|
|
GRUB_IEEE1275_FLAG_BROKEN_REPEAT,
|
|
|
|
|
|
|
|
GRUB_IEEE1275_FLAG_CURSORONOFF_ANSI_BROKEN,
|
|
|
|
+
|
|
|
|
+ GRUB_IEEE1275_FLAG_DISABLE_VIDEO_SUPPORT
|
|
|
|
};
|
|
|
|
|
|
|
|
extern int EXPORT_FUNC(grub_ieee1275_test_flag) (enum grub_ieee1275_flag flag);
|
|
|
|
--
|
2015-07-22 13:44:51 +00:00
|
|
|
2.4.3
|
2013-06-12 19:24:37 +00:00
|
|
|
|