EFI Arrives..Finally

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.
Status
Not open for further replies.

Peter

Elite Member
Oct 15, 1999
9,640
1
0
You don't really know what these ODMs do, right? What you get from them is the complete thing as you ordered, which is restricted to being only minor choices around a design they've already created (hence the term Original Design Manufacturer). The machine remains the same, it does what it does, no ifs or buts - minor case alterations (like button and LED positions), CPU model, RAM and HDD size, WLAN card yes/no, and that's it.

As long as you're doing that kind of ODM job as an OEM, you don't get to specify your own "special" BIOS or EFI either.
 

jhu

Lifer
Oct 10, 1999
11,918
9
81
Originally posted by: VinDSL
Originally posted by: QuixoticOne
Couldn't be soon enough for me.

BIOS is a major bane of the PC right now that turns what could be
"workstation / server" class hardware into "consumer junk"...

True that...

You should see the BIOS in this (typical) Toshiba laptop!!! :laugh:

BIOS doesn't allow the possibility of changing hardly anything - looks like something from the early 90's!

EFI couldn't be soon enough for me either... ;)

if the manufacturer doesn't want you to change settings, having them implement an efi firmware won't change things. for example, remember apple's very first intel macs? they used efi for the firmware. however, there was no way to enter the firmware console without a few hacks that the average computer user had no idea how to do.

bottom-line: for the end-user, efi doesn't do much and allowable machine customization is dependant upon the manufacturer.
 

VinDSL

Diamond Member
Apr 11, 2006
4,869
1
81
www.lenon.com
Originally posted by: Peter
...as a BIOS engineer of trade...

Originally posted by: jhu
...there was no way to enter the firmware console without a few hacks that the average computer user had no idea how to do...

No big deal! ;)

I'll just get Pete, or some other BIOS engineer of trade, to hack it for me.

That's what 'community' is all about, yes?


SOURCE

SecureCore, Phoenix Technologies is providing a safe and efficient bridge for OEMs and ODMs to move from traditional BIOS to UEFI core firmware. SecureCore supports traditional BIOS code developed by customers and at the same time, enables modular UEFI standard drivers and plug-ins, thus providing for long-term ROI.
 

nerp

Diamond Member
Dec 31, 2005
9,865
105
106
Originally posted by: Peter
And you better be glad, or else I'll give you an early 1990s PC puzzle to solve ... VESA local bus graphics and multi-IO, eight SIMM slots, cache RAM in sockets, 80 MHz AMD486DX, ISA SCSI card, and a SoundBlaster megamonster with its own pair of SIMMs on. Two dozen hardware configuration jumpers on the mainboard and about this many on the cards before it even twitches, three pages of obscure chipset configuration tweaks before it's stable and some more before it's stable and fast - and then install your operating system, which is another fun game if you don't have PnP.

I remember ALL of this and I had some pretty complex stuff going on even though I was still fairly young in early adolescence, but I was determined to learn it and so I did. Getting a new rig working properly was often a 2-3 day affair and this is just to get the motherboad, modem, video and sound cards all in harmony and booting to a DOS prompt, let alone configuring the proper IRQs and I/O settings in all the software applications.

We take the interoperability of all our hardware devices with the OS and applications for granted these days. It used to be quite an affair to get all software working with the hardware properly. It wasn't long ago that the thought of having a persistent, always-on connection while listening to music and playing a 3d game was a pipe dream and totally unimaginable. We're a world away from then -- and it took a damn long time for PnP to really evolve into a stable standard -- and so I think while this EFI stuff looks interesting, it's far from revolutionary.
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
VinDSL, in the ad you quote, you do realize that "customers" refers to Phoenix customers, which are the mainboard and notebook makers - not the end user. And the bit about "traditional BIOS code" refers to the fact that some of the relevant project work in EFI still is quite similar to how it's been done in BIOS, so you (again, "you" as in the OEM who buys generic code off Phoenix or AMI to port it to your particular design) don't have to throw all your code away.

Again, no news here. You, the end user, have not and will not be able to modify your machine's boot firmware, whichever platform this has been built on.
 

Peter

Elite Member
Oct 15, 1999
9,640
1
0
Originally posted by: nerp
We take the interoperability of all our hardware devices with the OS and applications for granted these days. It used to be quite an affair to get all software working with the hardware properly. It wasn't long ago that the thought of having a persistent, always-on connection while listening to music and playing a 3d game was a pipe dream and totally unimaginable. We're a world away from then -- and it took a damn long time for PnP to really evolve into a stable standard -- and so I think while this EFI stuff looks interesting, it's far from revolutionary.

You got it. And as technology moves along, more and more of those non-self-enumerating bits of legacy hardware disappear - and that in turn obsoletes one BIOS control, driver configuration flag, and manual user interaction after the other.
 

QuixoticOne

Golden Member
Nov 4, 2005
1,855
0
0
Originally posted by: Fox5
For instance I've got a DELL PDA that has had exactly *two*
firmware updates *ever*

If it's a x50v or x51v, then a nice gent that goes by football has released some home made updated firmware for them that works damn nice. Makes the devices work like they should have when they were launched.

Why yes indeed it is an X50V; this sounds like extremely useful information; thanks
a million for posting it!

Do you run this software, and if so, have you had any troubles / downsides
with your experience of it?


Does the fellow have his one web site, or does he hang out on aximsite or some
other such common place discussing his firmware? I've never seen it mentioned,
though I've tapered off looking at those boards after there seemed to be
a relative cessation of development for the platform.

 

QuixoticOne

Golden Member
Nov 4, 2005
1,855
0
0
Well I was assuming (hoping) there would be at least significantly *better*
end-user (if that user IS a sysadmin / developer / IT pro type) customizability /
tweakability of EFI systems vs. the standard BIOS ones.

I don't expect (though it would be nice!!!) to get the motherboard schematics,
BIOS source code and development manual on a CD when I buy the
machine (though the old CP/M, S-100 and PC-XT / PC-AT stuff often did just that and it
was GREAT!).

I would like to be able to say write / edit some customized NSH shell (see below)
scripts to customize my boot sequence, hardware register settings, whatever.

Even at a minimum that'd be a billion times better than the current junk ==
"if you have the reflexes of a cat, hit F2 to enter setup,
hit PAUSE to see the hardware I/O & memory map that scrolls 80% unpreventably
off your screen before even superman could read the first page of it..., hit F11
if you actually want to *choose* boot devices, hit [YOU MUST BE KIDDING] if you
actually want to choose OS boot flags..,
hit [F1] to enter setup to turn off the useless full screen logo that displays INSTEAD
of telling you how to enter setup to get rid of it....".

As for modularity?

Well if I have a 4MB AMI BIOS, and say that includes subsidiary
BIOSES for Marvell (LAN), JMICRON (SATA RAID), INTEL (LAN), I'd HOPE we'd
start to see flash utilities to let you say download the latest BIOS from say Marvell
probably itself some 512kB image, then reflash *that* part of the BIOS if there's
an update to its BIOS but not the whole AMI BIOS overall. Traditionally if these
other devices weren't integrated on the MB they'd have physically distinct BIOS ROMs
of their own that could be reflashed, so I'd be shocked if there couldn't be some physical
segregation of a big single MB ROM to admit sectional flashing of the sub-ROMs it
contails. Not uniquely an EFI 'feature' but hopefully the better architecture / toolset /
evolutionary mentality would be conducive to giving such finer grained control options.

Also, of course, if there are NSH scripts for things like device self-test,
default configuration parameters, etc., I'd hope it'd be trivial to have those all
stored as individually updatable files / modules / scripts in an environment string block /
whatever.


ACPI table modularity / end user tweaks, etc?
Well fortunately I haven't had to get too deeply into this for my own present
devices (they're either hopelessly broken or sorta-work-enough-for-the-moment).
But it does seem like it's increasingly common for people to actually be patching
their ACPI tables to fix known problems their BIOS OEM's won't. I'd only assume
that EFI's better scriptability / modularity / power would facilitate test / debug /
patch / override of these sorts.
q.v.:
http://gentoo-wiki.com/HOWTO_Fix_Common_ACPI_Problems
http://ubuntuforums.org/archive/index.php/t-609925.html
http://acpi.sourceforge.net/dsdt/index.php

So from your comments I take it you're possibly a BIOS engineer by trade;
if you have some inside scoop as to how some MB / BIOS OEMs are planning
to deploy EFI, perhaps you can share a few more details? Just basic
things like how / if the scripting may be supported / made accessable to
end user environment variables / scripts, what kinds of spare memory
capacity for BIOS expansion a typical MB might have, whether the
user settable BIOS configuration parameters would typically be exported / imported
as "environment / shell" variables to scripts, if the BIOS GUI basically would be
scripted, etc.

Thanks for the info you've posted previously, it's interesting.

http://en.wikipedia.org/wiki/E...ble_Firmware_Interface
...
The EFI shell

The EFI community has created an open source shell environment[6].; rather than booting directly into a full OS, on some implementations, the user can boot to the EFI shell. The shell is an EFI application; it can reside directly within the platform ROM, or on a device for which the drivers are in ROM.

The shell can be used to execute other EFI applications, such as setup, OS install, diagnostic or configuration utilities, and system flash updates; it can also be used to play CDs or DVDs without having to boot to a complete operating system, provided that an EFI application with the appropriate features is written. Shell commands also make it possible to copy or move files and directories between supported file systems. Drivers can be loaded and unloaded, and a complete TCP/IP stack can also be used from within the shell.

The EFI shell supports scripting through .nsh files, which are analogous to DOS batch files.

Originally posted by: Peter
Yeah, QuixoticOne, your software quality rant is heard, but really, it's nothing to do with the choice of firmware platform. It's a symptom of the general end user's buying behaviour. There's an impressing willingness to put up with sh*t software rather than put the money where the quality is. Always the latest and greatest, if it still has rough edges, "it's just software issues, let's wait for updates" rather than return it and buy something slightly older that's actually been developped and tested all the way through. Etc. etc.

Getting the software right upon release is possible - and where customers demand it, it is actually being done. Server gear, embedded x86 computing in mission critical aero, space, medical applications, they all can do it. It costs money, it takes time, and you're not getting a "new and improved" piece of hardware every three months either.

The normal computer buyer is different. When Intel or AMD present a new chipset or CPU, everyone here expects product on shop shelves five seconds later. Of course it's not going to be good product, but it's being bought anyway, even at the premium prices charged for "early adopter" kit. As a manufacturer in this area, you need to be first to market, not first to market with something that works right - and by the time you'd know enough to actually achieve the latter, you're already two or three generations of halfbakery further down the line. Project engineers don't grow on trees, so the "old" product quickly has to be abandoned.

So much for the general direction of the problem. Now, details.

Even with EFI, you, the end user, is not going to create any patches nor are you going to merge any 3rd party updates into some uncaring OEM's base frame - at least no more than you can now use a BIOS ROM module manager tool to replace a PXE boot image or an integrated VGA BIOS.

Likewise, ACPI is far from being "just tables", vast misconception there too. ACPI is mostly code, existing to abstract the board specific implementation of certain hardware features so the OS can remain generic. With few exceptions of bleeding obvious coding errors, modifying the ACPI in a way that makes sense requires in-depth knowledge of the particular hardware design and what the boot firmware does with it.

 

sm625

Diamond Member
May 6, 2011
8,172
137
106
Does anyone know the efi shell syntax? Like for example if you type "pci" to list pci devices but you want to pause to break the list up into readable chunks. I type "pci /pause" but that doesnt work.

A very good question. But please use a new thread.:)
-ViRGE
 
Last edited by a moderator:
Status
Not open for further replies.