I have plan to start development on Intel Quark X1000 based our custom board for one of IoT based Product. I have some Intel Galileo Gen 2 development boards which is Intel Quark x1000 based boards. I have created kernel images and rootfs file system using Yocto Linux Build system and also started board with my custom zImage and rootfs file system through SD card interface.
So, board is started successfully with my custom Linux Kernel image and core image minimal rootfs file system which works fine without any issue.
After that, I have looked some parts of Grub Loader, BIOS settings and Cap file to understand boot up sequence of board before starting kernel image. I have also tried to look about how BIOS and Grub loader is flashed into SPI Flash memory which is 8 MB flash memory but not found much details for that.
Please provide me how BIOS and Grub Loader is working and board is starting to load kernel image from SD card as I need to plan to create same setup on my custom board with Intel Quark x1000 SoC.
Please let me know if anyone has any document or idea to do it.
You can find the information you need in the Quark X1000 documentation https://www-ssl.intel.com/content/www/us/en/embedded/products/quark/x1000/documentation.html https://www-ssl.intel.com/content/www/us/en/embedded/products/quark/x1000/documentation.html .
Different documents cover different aspects of the information you need.
Some of the ones you can find most helpful are the following:
Thanks for quick reply.
Actually, I have looked specifications of Intel Quark x1000 SoC and found that there is no any support of secure boot for this SoC. So, I need to move ahead with consideration of NON Secure Mode for this SoC.
I have also looked some documents which you provided in Links which is also helpful for me but I would like to understand how BIOS and Grub Loader is managed inside Legacy SPI NOR Flash memory and how it is divided into different partitions to start Boot Loader, Kernel Image with Initramfs and full minimal core root file system.
If you have any idea or clue about that then please explain it to me as I want to understand how it is managed which will be more helpful to create my custom board based on Intel Quark x1000 SoC.
Anyone has did anything regarding question which I posted to get information about how Grub Loader or BIOS is configured into LSPI flash to start Intel Quark x1000 SoC based embedded board?
Please let me know if anyone has any idea or clue for this as quickly as possible which will be more helpful to create Intel Quark x1000 SoC based custom board for my product.
We'll post here the response for this thread's question as well as the one from /thread/105628 https://communities.intel.com/thread/105628 . This is because the suggestion will help on both cases and to avoid confusions.
Please take a look at the latest BSP version 184.108.40.206 https://downloadcenter.intel.com/download/23197/Intel-Quark-SoC-X1000-Board-Support-Package-BSP- https://downloadcenter.intel.com/download/23197/Intel-Quark-SoC-X1000-Board-Support-Package-BSP- . Here you can find information about the BIOS and Grub Loader. You also mention in /thread/105628 https://communities.intel.com/thread/105628 :
"Now, I am planning to create Firmware Update Mechanism for all boot, zImage, Initrd and full file system images into SD card and I think OTA update will be best option as I am creating this product as IoT product.I am thinking to create one partition for Grub Loader, One Master Partition for zImage, Initrd & Full Rootfs Images, One Slave Partition for Backup, One Partition for Database storage etc partitions into SD card as our board will be started from SD card only. So, does any one has any idea or information about how to manage all this partitions and update it into SD card as part of Firmware Update Process?"
For this, please refer to:
Let us know if this is what you were looking for.
Thanks for providing some useful informations.
I will look above links in details and get back to you if need any help from your side.