[MinnowBoard] firmware with Bios for minnowboard max
Krau, Michael P
michael.p.krau at intel.com
Sat Jul 14 17:11:00 UTC 2018
You have a lot of questions here. First off let met mention I am not an expert on Coreboot or SeaBIOS. I knew there was an Open Source Legacy BIOS in existence, and was able to find a page discussing projects in Tianocore.org that mentioned SeaBOS. It also noted that the integration project around SeaBIOS was deprioritized.
In you messages, you mentioned QEMU, from this link (https://github.com/tianocore/tianocore.github.io/wiki/EDK-II-Platforms) QEMU is machine simulator, so you may be crossing platform boundaries between real hardware and simulated hardware by pursuing OVFM or QEMU in regards to the current situation.
Also, I know very little about CoreBoot, and am not comfortable attempting to respond to questions on this subject.
My experience is wholly with the UEFI firmware versions, particularly the variant shipped with the product (64 bit production as opposed to 32 bit and/or debug options).
That said, the notice about SeaBIOS basically indicates the following: SeaBIOS source code is predominately in the C programming language, as opposed to assembly (which was the original Legacy BIOS’s source language). The build environment or SeaBIOS was a standard GNU C toolchain (as opposed to other C compilers in the market). The Legacy BIOS image created from the SeaBIOS sources was tested with the following boot loaders: GNU, GRUB, LILO and SYSLINUX. The following Operating systems were tested with SeaBIOS: Microsoft Windows (versions using Legacy BIOS), Linux, FreeDOS, FreeBSD, NetBSD, and OpenBSD.
You can put Coreboot on your MinnowBoard MAX/Turbot, but the specifics on doing so are not in my area of experience or expertise, so I am going to defer those kinds of questions to other members of this community, who have experience and can respond with confidence.
That said, I will make the following general technical statements (to the community: if these statements are less than accurate, please comment and correct them):
· If you cannot boot to the shell on your platform, then the shell based firmware update program cannot be run and that option for SPI update is closed to you.
· Since the platform cannot boot to any OS in its current state, I regretfully have to inform you there is no software only solution (which I am aware of) on how to get your SPI part updated to a new/different firmware image.
· The only remaining option is to use a Hardware SPI programming device to “push” a new firmware image into the SPI part. There have been other conversations about this over the years, so rather than attempt to repeat them, I will leave you to look them up or the community to provide links to the most “helpful” of those still in archive.
· Personal Note: If you are going to build your own firmware images for a MinnowBoard MAX/Turbot, it is recommended you acquire an SPI programmer as it is doubtful that one will not be in a non-booting situation again and will be required to use a hardware device (software options not being available) to get a known working firmware image into the SPI (as well as pushing non-tested experimental firmware images onto the platform)… Basically, this takes one into the realm of doing firmware development, and a hardware programmer is a standard tool for firmware developers.
· There are a few options for SPI programmers, of varying price and capability. There were a few devices at one time that were very economical, which exposed a mechanism to re-flash the SPI, but I do not know if they are still commercially available or not (maybe the community could help here?). I know that Dediprog devices (like the SF100) are still out there, but they are not inexpensive. (Again, maybe the community has some other options to consider?)
Sincerely,
Michael Krau
While I am an Intel employee, I do not represent Intel and am not authorized to speak for Intel.
From: elinux-MinnowBoard [mailto:elinux-minnowboard-bounces at lists.elinux.org] On Behalf Of zahra rahimkhani
Sent: Friday, July 13, 2018 11:01 PM
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org>
Subject: Re: [MinnowBoard] firmware with Bios for minnowboard max
Also, In this link told "https://en.wikipedia.org/wiki/SeaBIOS"
" Most of the SeaBIOS' source code is written in C<https://en.wikipedia.org/wiki/C_(programming_language)>, with its build system relying on the standard GNU toolchain<https://en.wikipedia.org/wiki/GNU_toolchain>.[2]<https://en.wikipedia.org/wiki/SeaBIOS#cite_note-lpc-seabios-2>:5–7 SeaBIOS has been tested with various bootloaders and operating systems, including GNU GRUB<https://en.wikipedia.org/wiki/GNU_GRUB>, LILO<https://en.wikipedia.org/wiki/LILO_(boot_loader)>, SYSLINUX<https://en.wikipedia.org/wiki/SYSLINUX>, Microsoft Windows<https://en.wikipedia.org/wiki/Microsoft_Windows>, Linux<https://en.wikipedia.org/wiki/Linux>, FreeDOS<https://en.wikipedia.org/wiki/FreeDOS>, FreeBSD<https://en.wikipedia.org/wiki/FreeBSD>, NetBSD<https://en.wikipedia.org/wiki/NetBSD> and OpenBSD<https://en.wikipedia.org/wiki/OpenBSD>. "
I confused about it
Could you explain ?
Thanks,
On Sat, Jul 14, 2018 at 10:06 AM zahra rahimkhani <zrahimkhani2014 at gmail.com<mailto:zrahimkhani2014 at gmail.com>> wrote:
Also, I can get it on myboard becuse this link told
https://seabios.org/SeaBIOS
"SeaBIOS is an open source implementation of a 16bit X86 BIOS. SeaBIOS can run in an emulator or it can run natively on X86 hardware with the use of [http://www.coreboot.org/ coreboot]."
But I can use just QEMU and kvm<http://www.linux-kvm.org/>on my board if I want to install FreeBSD , I should change its codes for FreeBSD ?
Thanks ,
On Sat, Jul 14, 2018 at 9:28 AM zahra rahimkhani <zrahimkhani2014 at gmail.com<mailto:zrahimkhani2014 at gmail.com>> wrote:
Also, I downloaded coreboot 4.0 from
https://www.coreboot.org/downloads.html
I can this method for my board
https://www.coreboot.org/developers.html
Thank you for your time
On Sat, Jul 14, 2018 at 9:04 AM zahra rahimkhani <zrahimkhani2014 at gmail.com<mailto:zrahimkhani2014 at gmail.com>> wrote:
Also, Could you explain that how use this link that you sent for to build a Legacy BIOS ?
https://github.com/tianocore/tianocore.github.io/wiki/Tasks
Thanks ,
On Sat, Jul 14, 2018 at 8:34 AM zahra rahimkhani <zrahimkhani2014 at gmail.com<mailto:zrahimkhani2014 at gmail.com>> wrote:
Thank you for your guides.
I did not use FreeBSD when I tested it , I removed the media (SD card, disk drive, etc) containing the OS. but I cannot boot to shell and just see this message
">>>>Start boot option, Press <F2> or <DEL> to enter setup page(5 Sec)....."
Now I should SPI programmer or is other solution?
Thanks,
On Thu, Jul 12, 2018 at 10:48 PM Krau, Michael P <michael.p.krau at intel.com<mailto:michael.p.krau at intel.com>> wrote:
Ok, this sounds like we have two problems:
(Please note: at the end of point 2 I have a suggestion of something to try to see if we can get you booting to the shell)
1) None of the MinnowBoard MAX official release contain “Legacy BIOS” (Or as UEFI (CSM) refers to this functionality “Compatibility Support Module”).
Unfortunately, the term BIOS has been overloaded over time, and some have use the term “BIOS” as a catch all for the firmware image (whether it contains a “Legacy BIOS” component or not).
While the Open Source code (per your link below) may include some of the CSM support it is not complete, as it would require the actual “Legacy BIOS” component (which is loaded in memory at address 0F0000h) to be complete, and Tianocore.org does not include those modules. Also, the builds as provided on TInaocore.org do not include linkages to those parts of the CSM that are available in the code repository.
Per the Tianocore.org Wiki (https://github.com/tianocore/tianocore.github.io/wiki/Tasks), the CSM is listed as a “partially complete” or “deferred” project. It mentions SeaBIOS (a GPL licensed Legacy BIOS: http://www.coreboot.org/SeaBIOS) as a possibility, but it would require some effort to integrate into the overall firmware image. The project was deprioritized, as UEFI support has been more or less mainstreamed in most current OS’s.
One thing I noted in your messages below is that version numbering is confused or confusing. The Firmware versions range from 0.91 (on website – though there were versions released numbering in the 0.7x range long, long ago) to 0.98 (most recent release). While your FreeBSD version number is of the form 9.2. In fact I notice that some references to the firmware version numbers have begun to match the FreeBSD form (9.x), rather than the firmware version form (0.9x).
Do you have the actual quote where it is stated that firmware version 0.91 contains Legacy BIOS support or a complete CSM? I am concerned specifically where and how this was conveyed.
2) The firmware image (version 0.91) on your platform in not booting after being installed. You are not getting to shell much less booting an OS.
This is the more immediate and telling issue, as it makes it hard for you to do much with our board as it is, and until you can at least boot to shell on that board your progress is on hold.
Now, first I have to ask:
Did you use the binary image provided on the website (https://firmware.intel.com/projects/minnowboard-max)?
When you did the firmware update from 0.77 to 0.91, did the process flow and complete per the screen shots provided on the web page (https://minnowboard.org/tutorials/updating-the-firmware)?
The provided firmware image is a known good image, and was thoroughly tested before it was posted on the webpage. If the provided binary was used and the update process did not error, fail, or get interrupted (i.e. reboot or power cycle in the middle of the process), the system should at least be able to boot directly to shell.
This is the sticky part, as once a firmware image is on a platform that cannot at least boot to shell, the only option of getting a new (and working firmware image) on the affected platform is to use and SPI programmer and directly load the image into the SPI flash part. As stated on the “Updating the Firmware” webpage: “NOTE: If this process fails for some reason like power interruption, and you are unable to flash using this process, your remedy is to use the spi flash tool. See the Updating Firmware via SPI Flash Programmer tutorial.”
Getting to the Shell:
However, I have a suggestion before going to the SPI programming option. It is possible that the UEFI firmware has been loaded correctly on your board, but in the boot process has tried to launch the FreeBSD bootloader, then has crashed before it could even put a message on the screen. Actually, if the FreeBSD loader is expecting a legacy BIOS it would not know how to put a message on the screen in a UEFI environment, so there would be no message.
My suggestion, temporarily remove the media (SD card, disk drive, etc) containing the OS from your board, and try to boot it with firmware only. This will force the firmware to boot to shell (if possible). If it can boot to shell, then the firmware image is OK, and it was in the handoff (or after) that the crash occurred. If it cannot boot to shell, then we may get some more data in screen output from the process to help figure out how we can get to shell without resorting to the SPI flash programmer option.
Please let us know how it works out either way.
Thank you,
Michael Krau
While I am an Intel employee, I do not represent Intel and am not authorized to speak for Intel.
From: elinux-MinnowBoard [mailto:elinux-minnowboard-bounces at lists.elinux.org<mailto:elinux-minnowboard-bounces at lists.elinux.org>] On Behalf Of zahra rahimkhani
Sent: Thursday, July 12, 2018 9:41 AM
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org<mailto:elinux-minnowboard at lists.elinux.org>>
Subject: Re: [MinnowBoard] firmware with Bios for minnowboard max
Also, if it does not BIOS, I can compile firmware based on this link
https://github.com/tianocore/tianocore.github.io/wiki/EDK-II?
Thank you very much for your time
On Thu, Jul 12, 2018 at 8:59 PM zahra rahimkhani <zrahimkhani2014 at gmail.com<mailto:zrahimkhani2014 at gmail.com>> wrote:
Thank you very much for this message.
1. How did you perform the upgrade from 0.77 to 0.91?
I used this link for upgrade
https://minnowboard.org/tutorials/updating-the-firmware
I typed that commands on shell .
2.Please explain the “crash” you see after the firmware boot message? Is this FreeBSD crashing after it tries to boot, or a different error?
No, it is without FreeBSD, It does not make Shell. I did not see this message: EFI shell version.....
3. Can you use F2/DEL to enter the firmware setup without a crash/hang?
No, when I see this message " Start boot option, Press <F2> or <DEL> to enter setup page(5 Sec)...."
My keyboard does not work and I did not see shell that type new commands
4. The MinnowBoard Max/Turbot firmware is UEFI only, with no legacy BIOS support. Newer versions of FreeBSD have UEFI support.
I need FreeBSD 9.2 It does not UEFI , In the forums, I saw in new versions, it has BIOS that in this link for 9.1 it told that it has BIOS.
https://firmware.intel.com/projects/minnowboard-max
Thanks
On Thu, Jul 12, 2018 at 8:19 PM Richardson, Brian <brian.richardson at intel.com<mailto:brian.richardson at intel.com>> wrote:
1. How did you perform the upgrade from 0.77 to 0.91?
2. Please explain the “crash” you see after the firmware boot message? Is this FreeBSD crashing after it tries to boot, or a different error?
3. Can you use F2/DEL to enter the firmware setup without a crash/hang?
4. The MinnowBoard Max/Turbot firmware is UEFI only, with no legacy BIOS support. Newer versions of FreeBSD have UEFI support.
Thanks … br
---
Brian Richardson, Senior Technical Marketing Engineer, Intel Software
brian.richardson at intel.com<mailto:brian.richardson at intel.com> -- @intel_brian (Twitter & WeChat)
https://software.intel.com/en-us/meet-the-developers/evangelists/team/brian-richardson
From: elinux-MinnowBoard <elinux-minnowboard-bounces at lists.elinux.org<mailto:elinux-minnowboard-bounces at lists.elinux.org>> On Behalf Of zahra rahimkhani
Sent: Thursday, July 12, 2018 5:05 AM
To: MinnowBoard Development and Community Discussion <elinux-minnowboard at lists.elinux.org<mailto:elinux-minnowboard at lists.elinux.org>>
Subject: [MinnowBoard] firmware with Bios for minnowboard max
Dear Friends
I downloaded firmware of MinnowBoard MAX 0.91 64-Bit because I think it have BIOS and I can use freebsd 9.2 that do not support UEFI.
I put it on my chip but it show this message .
">>>>Start boot option, Press <F2> or <DEL> to enter setup page(5 Sec)....."
and crashed . I can not type anything in this stage.
I would be grateful if you let me know how solve it ?
My board had version 0.77 before.
Best wishes,
_______________________________________________
elinux-MinnowBoard mailing list
elinux-MinnowBoard at lists.elinux.org<mailto:elinux-MinnowBoard at lists.elinux.org>
http://lists.elinux.org/mailman/listinfo/elinux-minnowboard
_______________________________________________
elinux-MinnowBoard mailing list
elinux-MinnowBoard at lists.elinux.org<mailto:elinux-MinnowBoard at lists.elinux.org>
http://lists.elinux.org/mailman/listinfo/elinux-minnowboard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.elinux.org/pipermail/elinux-minnowboard/attachments/20180714/10746324/attachment-0001.html>
More information about the elinux-MinnowBoard
mailing list