View Single Post
  #10  
Old June 26th 16, 01:34 AM posted to alt.comp.hardware.pc-homebuilt,alt.windows7.general
Paul
external usenet poster
 
Posts: 13,364
Default NVMe M.2 SSD Win7, anyone with experience?

B00ze wrote:
On 2016-06-19 10:48, Paul wrote:

Now, why doesn't the NVMe have a config EEPROM
on the device, to provide the code in question ?


Do we now have what the Amiga called "Auto-Config" (20 years ago) on
PCs? i.e. An eprom that loads into the BIOS address-space and configures
the device for you? PCs have been needing that for ever; I don't think
Plug'n'Play is exactly that...

Regards,


The idea was, the PCI config space EEPROM had a BIOS Extended INT 0x13
(interrupt 19) routine, for DOS boot. That's where the BIOS provided
disk services the entire time the OS (DOS) was running. If you had a
RAID card, or even a Promise Ultra133, it could have a config EEPROM.
In the case of the Promise product, the claim by some was, that
the config space info was stored inside the main chip. Which I find
a little hard to believe (combining regular logic and EEPROM
inside the same chip).

If the BIOS modifications in question, are adding a generic
NVMe INT 0x13 routine, that's one thing. But the device should
also have been designed the old way, be autonomous in its
provisioning of legacy support, so the device would work
in more situations. I'm just surprised it's not done that
way. Maybe the introduction of UEFI complicates
matters ? Presumably UEFI still works with older
RAID cards... somehow. Maybe NVMe, the intent is
for it to work in "pure" UEFI environments, with no CSM
at all. There's got to be some (half-assed) reason it
was done this way.

There are plenty of items that don't have config EEPROMs.
And they *could* have added whizzy capabilities if they
wanted. Take, for example, the lowly PCI USB2 card. They
could have written some USB boot emulation codes for those,
such that a user with an older computer that did not have
boot capability at all, could have "pressed control-U" and
brought up a RAID-management-like console and interacted
with devices connected to the USB card. But nobody did that.
Interesting code only exists for a subset of all card types,
so a person could use the excuse that "for NVMe, the dog
ate my homework". But the fact that a BIOS module was
added, a generic module of some sort, shows that just
as easily, that generic module could be purchased from
the developer, and ported to each and every NVMe card.

All we seem to have in computing, is excuses...

Paul