[U-Boot] [RFC PATCH 0/6] x86: New Intel Quark SoC support

Simon Glass sjg at chromium.org
Wed Jan 28 19:05:14 CET 2015


Hi Bin,

On 28 January 2015 at 07:19, Bin Meng <bmeng.cn at gmail.com> wrote:
> This series adds the first step of bare support for the Intel Quark
> SoC support which can be validated on Intel Galileo board.
>
> Intel Quark is a line of 32-bit x86 SoCs by Intel, designed for small
> size and low power consumption, and targeted at new markets including
> wearable devices. They are smaller and slower than Atom processors and
> consume less power. They lack support for SIMD instruction sets (such
> as MMX and SSE) and only support embedded operating systems. Quark
> powers the Intel Galileo developer microcontroller board. The CPU
> instruction set is the same as Pentium (P54C/i586) CPU.
>
> Intel decided to completely publish Quark's hardware specification to
> software developers, which includes an SoC datasheet, a UEFI Firmware
> Writer's Guide, and a complete reference source code for the UEFI BIOS
> which is pre-flahsed on the Galileo board. As of today, the only BIOS
> for Galileo is the Intel one with UEFI inteface only. There is no CSM
> support yet in that BIOS, neither any 3rd party BIOS vendor provides
> support to Quark SoC.

So no binary blobs?

>
> Note there are two generation of Galileo boards, aka gen1 and gen2.
> Currently the development work is on gen2, but once we get it boot,
> we can easily add the gen1 board (old version).
>
> With this patch series, the generated u-boot.rom could boot the Intel
> Galileo board up to fdt relocate, where U-Boot hangs because the DRAM
> is not initializaed yet. A follow up patch series will be sent soon
> to add support for Memory Reference Code (MRC).
>
> Note this patch series may need rebase after Simon's Minnowmax support
> patch series is applied.

You can rebase on x86/minnow-working if you like.

>
>
> Bin Meng (6):
>   x86: Add header files for Intel Quark SoC defines
>   x86: quark: Add routines to access message bus registers
>   x86: quark: Add Cache-As-RAM initialization
>   x86: Add basic Intel Quark processor support
>   x86: Add basic Intel Galileo board support
>   x86: Enable the Intel quark/galileo build
>
>  arch/x86/Kconfig                           |  17 +++++
>  arch/x86/cpu/Makefile                      |   1 +
>  arch/x86/cpu/quark/Kconfig                 |  63 +++++++++++++++++
>  arch/x86/cpu/quark/Makefile                |   8 +++
>  arch/x86/cpu/quark/car.S                   | 105 +++++++++++++++++++++++++++++
>  arch/x86/cpu/quark/dram.c                  |  39 +++++++++++
>  arch/x86/cpu/quark/msg_port.c              |  76 +++++++++++++++++++++
>  arch/x86/cpu/quark/pci.c                   |  70 +++++++++++++++++++
>  arch/x86/cpu/quark/quark.c                 |  44 ++++++++++++
>  arch/x86/dts/Makefile                      |   3 +-
>  arch/x86/dts/galileo.dts                   |  43 ++++++++++++
>  arch/x86/include/asm/arch-quark/device.h   |  28 ++++++++
>  arch/x86/include/asm/arch-quark/gpio.h     |  13 ++++
>  arch/x86/include/asm/arch-quark/msg_port.h |  93 +++++++++++++++++++++++++
>  arch/x86/include/asm/arch-quark/quark.h    |  57 ++++++++++++++++
>  board/intel/galileo/Kconfig                |  21 ++++++
>  board/intel/galileo/MAINTAINERS            |   6 ++
>  board/intel/galileo/Makefile               |   7 ++
>  board/intel/galileo/galileo.c              |  19 ++++++
>  board/intel/galileo/start.S                |   9 +++
>  configs/galileo_defconfig                  |   6 ++
>  include/configs/galileo.h                  |  53 +++++++++++++++
>  22 files changed, 780 insertions(+), 1 deletion(-)
>  create mode 100644 arch/x86/cpu/quark/Kconfig
>  create mode 100644 arch/x86/cpu/quark/Makefile
>  create mode 100644 arch/x86/cpu/quark/car.S
>  create mode 100644 arch/x86/cpu/quark/dram.c
>  create mode 100644 arch/x86/cpu/quark/msg_port.c
>  create mode 100644 arch/x86/cpu/quark/pci.c
>  create mode 100644 arch/x86/cpu/quark/quark.c
>  create mode 100644 arch/x86/dts/galileo.dts
>  create mode 100644 arch/x86/include/asm/arch-quark/device.h
>  create mode 100644 arch/x86/include/asm/arch-quark/gpio.h
>  create mode 100644 arch/x86/include/asm/arch-quark/msg_port.h
>  create mode 100644 arch/x86/include/asm/arch-quark/quark.h
>  create mode 100644 board/intel/galileo/Kconfig
>  create mode 100644 board/intel/galileo/MAINTAINERS
>  create mode 100644 board/intel/galileo/Makefile
>  create mode 100644 board/intel/galileo/galileo.c
>  create mode 100644 board/intel/galileo/start.S
>  create mode 100644 configs/galileo_defconfig
>  create mode 100644 include/configs/galileo.h
>
> --
> 1.8.2.1
>

Regards,
Simon


More information about the U-Boot mailing list