On Sun, Jul 13, 2008 at 1:10 AM, Robert Millan <[EMAIL PROTECTED]> wrote:
> On Sat, Jul 12, 2008 at 11:26:25PM +0800, Bean wrote:
>> On Sat, Jul 12, 2008 at 11:16 PM, Bean <[EMAIL PROTECTED]> wrote:
>> >> Can you be more specific?  I thought grub was completely agnostic about 
>> >> Linux
>> >> parameters.
>> >
>> > In the parameter passed to linux kernel, there are fields for video
>> > adapter information, for example, frame buffer address, line length,
>> > etc. Normally, we don't have to worry about it, but in the case of
>> > efi, we must fill it in, as kernel can't detect the information
>> > properly.
>>
>> Hi,
>>
>> BTW, it's the real mode part of Linux kernel that takes care of such
>> job. It gathers video information by querying vbe. But in efi, we skip
>> the real mode part and jump to protected mode directly, so we must
>> also provide kernel with similar information that would be setup by
>> the real mode part.
>
> Ah, I suppose this explains why Linux crashes when we try to load it via
> grub-linuxbios (I reused the i386-pc loader when doing the port, unaware
> that this would be an issue).

Hi,

Here are the information gathered in real mode:

memory map information
video information
monitor information (edid)
hard disk information
perhaps more

The first two can be retrieved in grub, others are optional, kernel
can normally get the value itself.

Perhaps we can write a generic protected mode linux loader for i386.
Functions such as claiming memory, getting memory map and the like can
be wrapped in platform dependent call arch_xxx.

-- 
Bean


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to