lkml.org 
[lkml]   [2002]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [RFC] x86 ELF bootable kernels/Linux booting Linux/LinuxBIOS
    From
    Date
    "H. Peter Anvin" <hpa@zytor.com> writes:

    > Followup to: <m1elk7d37d.fsf@frodo.biederman.org>
    > By author: ebiederm@xmission.com (Eric W. Biederman)
    > In newsgroup: linux.dev.kernel
    > >
    > > - Code at that entry point to query from the firmware/BIOS the
    > > information the kernel needs.
    > >
    >
    > How do you query from the 16-bit firmware/BIOS at the 32-bit
    > entrypoint? Or is it that you have a table, fixed by protocol, of
    > what information is available (so we're basically fucked when
    > something needs to change)?

    I drop back into real mode. Run the existing query code, (I had to factor
    setup.S but the queries are 100% the same) and then I climb back to
    32bit mode. But I do it from setup_arch() so if I don't have a
    pcbios, I can skip all that nasty busyness.

    I did it the wrong way (fixed table) initially and after some
    conversations with you and some thinking I changed it around.

    There is nothing outside the ELF specification that needs to be used.
    All I depend on is having flat 32bit code and data segments, initially
    loaded in %cs and %ds. So basically anyones x86 ELF bootloader should
    work.

    I have defined a fully optional table of tagged elements, so the
    bootloader can tell me what kind of firmware I have. All it passes
    besides that is the bootloader name and the bootloader version. So
    you must do the bios queries yourself.

    Eric
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:16    [W:0.028 / U:0.112 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site