[U-Boot] Please pull u-boot-x86

Bin Meng bmeng.cn at gmail.com
Tue Feb 7 05:51:22 UTC 2017


Hi Tom,

This is U-Boot x86 64-bit preliminary support, on Google Chromebook
Link and QEMU targets.

The following changes since commit c83a824e62277162ad35f52879b2316902c0eff5:

  Merge git://git.denx.de/u-boot-fsl-qoriq (2017-02-03 20:33:42 -0500)

are available in the git repository at:

  git://git.denx.de/u-boot-x86.git

for you to fetch changes up to 446d4e048ee3b00f7907e15cd02aa404cc714c77:

  x86: make LOAD_FROM_32_BIT visible for platforms (2017-02-07 13:36:50 +0800)

----------------------------------------------------------------
Andy Shevchenko (2):
      x86: Synchronize list of x86 subarchitectures (update bootparam.h)
      x86: make LOAD_FROM_32_BIT visible for platforms

Bin Meng (13):
      x86: qemu: Add missing DECLARE_GLOBAL_DATA_PTR in e820.c
      x86: Wrap print_ch() with config option
      x86: spl: Add weak arch_cpu_init_dm()
      x86: Compile irq.c for 64-bit
      x86: qemu: Hide arch_cpu_init() and print_cpuinfo() for U-Boot proper
      x86: qemu: Fix compiler warnings for 64-bit
      x86: qemu: Set up device tree for SPL
      x86: qemu: Mark ucode as optional for SPL in u-boot.dtsi
      tools: binman: Call correct init for Entry_u_boot_spl_with_ucode_ptr
      tools: binman: Handle optional microcode case in SPL image
      x86: qemu: Add a text base for 64-bit U-Boot
      x86: qemu: Add build options for SPL
      x86: qemu: Add a config for 64-bit U-Boot

Simon Glass (62):
      console: Don't enable CONFIG-CONSOLE_MUX, etc. in SPL
      spl: spi: Add a debug message if loading fails
      spl: Makefile: Define SPL_ earlier
      spl: Allow CPU drivers to be used in SPL
      spl: Allow PCI drivers to be used in SPL
      spl: Allow RTC drivers to be used in SPL
      spl: Allow timer drivers to be used in SPL
      spl: Allow PCH drivers to be used in SPL
      spl: Don't create a BSS padding when it is separate
      x86: Use unsigned long for address in table generation
      x86: Update mpspec to build on 64-bit machines
      x86: ivybridge: Declare global data where it is used
      x86: ivybridge: Add more debugging for failures
      x86: ivybridge: Fix types for 64-bit compilation
      x86: dts: Mark serial as needed before relocation
      x86: fsp: Fix cast for 64-bit compilation
      x86: lib: Fix types and casts for 64-bit compilation
      x86: Add Kconfig options to build 64-bit U-Boot
      x86: Kconfig: Add location options for 16/32-bit init
      x86: Use X86_16BIT_INIT instead of X86_RESET_VECTOR
      x86: Use X86_32BIT_INIT instead of X86_RESET_VECTOR
      x86: ivybridge: Allow 32-bit init to move to SPL
      x86: Add 64-bit start-up code
      x86: board_f: Update init sequence for 64-bit startup
      board_f/r: Use static const for the init sequences
      x86: board_r: Set the global data pointer after relocation
      x86: Do relocation before clearing BSS
      x86: Refactor relocation to prepare for 64-bit
      x86: Add support for 64-bit relocation
      x86: Tidy up use of size_t in relocation
      x86: Add an SPL implementation
      x86: Move the i386 code into its own directory
      x86: Add cpu code for x86_64
      x86: Support global_data on x86_64
      x86: Fix up CONFIG_X86_64 check
      x86: Add a link script for 64-bit x86
      x86: Add a link script for SPL
      x86: Add SPL build rules for start-up code
      x86: Fix up byteorder.h for x86_64
      x86: Drop flag_is_changable() on x86_64
      x86: Fix up type sizes for 64-bit
      x86: ivybridge: Skip SATA init in SPL
      x86: ivybridge: Provide a dummy SDRAM init for 64-bit
      x86: Don't try to run the VGA BIOS in 64-bit mode
      x86: Don't build call64 and setjmp on 64-bit
      x86: Don't build cpu files which are not supported on 64-bit
      x86: Don't build 32-bit efi files on x86_64
      x86: Don't try to boot Linux from SPL
      x86: Drop interrupt support in 64-bit mode
      x86: Support jumping from SPL to U-Boot
      x86: Move pirq_routing_table to global_data
      x86: Move turbo_state to global_data
      x86: Change irq_already_routed to a local variable
      x86: Move call64 to the i386 directory
      x86: Move setjmp to the i386 directory
      x86: Add a dummy setjmp implementation for x86_64
      x86: link: Add a text base for 64-bit U-Boot
      x86: link: Add SPL declarations to the binman image
      x86: link: Set up device tree for SPL
      x86: link: Add build options for SPL
      x86: Update compile/link flags to support 64-bit U-Boot
      x86: link: Add a config for 64-bit U-Boot

 Makefile                                        |   7 +-
 arch/x86/Kconfig                                |  94 +++++++++++++++++++
 arch/x86/Makefile                               |   9 +-
 arch/x86/config.mk                              |  30 +++++-
 arch/x86/cpu/Makefile                           |  24 ++++-
 arch/x86/cpu/config.mk                          |   8 +-
 arch/x86/cpu/cpu.c                              | 504
-------------------------------------------------------------------------------------------------
 arch/x86/cpu/i386/Makefile                      |   9 ++
 arch/x86/cpu/{ => i386}/call64.S                |   3 +
 arch/x86/cpu/i386/cpu.c                         | 598
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 arch/x86/cpu/{interrupts.c => i386/interrupt.c} |   6 +-
 arch/x86/cpu/{ => i386}/setjmp.S                |   0
 arch/x86/cpu/intel_common/Makefile              |  10 +-
 arch/x86/cpu/irq.c                              |  20 ++--
 arch/x86/cpu/ivybridge/Makefile                 |   9 +-
 arch/x86/cpu/ivybridge/bd82x6x.c                |   2 +
 arch/x86/cpu/ivybridge/cpu.c                    |   4 +-
 arch/x86/cpu/ivybridge/lpc.c                    |   2 +
 arch/x86/cpu/ivybridge/model_206ax.c            |   2 +
 arch/x86/cpu/ivybridge/northbridge.c            |   2 +
 arch/x86/cpu/ivybridge/sata.c                   |   4 +-
 arch/x86/cpu/ivybridge/sdram.c                  |  37 ++++++--
 arch/x86/cpu/ivybridge/sdram_nop.c              |  18 ++++
 arch/x86/cpu/qemu/e820.c                        |   2 +
 arch/x86/cpu/qemu/qemu.c                        |   7 +-
 arch/x86/cpu/start.S                            |  12 +--
 arch/x86/cpu/start64.S                          |  28 ++++++
 arch/x86/cpu/turbo.c                            |   8 +-
 arch/x86/cpu/u-boot-64.lds                      |  76 +++++++++++++++
 arch/x86/cpu/u-boot-spl.lds                     |  74 +++++++++++++++
 arch/x86/cpu/u-boot.lds                         |   2 +-
 arch/x86/cpu/x86_64/Makefile                    |   6 ++
 arch/x86/cpu/x86_64/cpu.c                       |  73 +++++++++++++++
 arch/x86/cpu/x86_64/interrupts.c                |  29 ++++++
 arch/x86/cpu/x86_64/setjmp.c                    |  20 ++++
 arch/x86/dts/chromebook_link.dts                |  15 ++-
 arch/x86/dts/emulation-u-boot.dtsi              |   6 ++
 arch/x86/dts/qemu-x86_i440fx.dts                |   4 +
 arch/x86/dts/qemu-x86_q35.dts                   |   4 +
 arch/x86/dts/serial.dtsi                        |   1 +
 arch/x86/dts/u-boot.dtsi                        |  19 ++++
 arch/x86/include/asm/acpi_table.h               |   2 +-
 arch/x86/include/asm/bootparam.h                |   3 +-
 arch/x86/include/asm/byteorder.h                |  17 ++--
 arch/x86/include/asm/cpu.h                      |  12 +++
 arch/x86/include/asm/fsp/fsp_hob.h              |   4 +-
 arch/x86/include/asm/global_data.h              |   9 +-
 arch/x86/include/asm/mp.h                       |   3 +
 arch/x86/include/asm/mpspec.h                   |  10 +-
 arch/x86/include/asm/posix_types.h              |   5 +
 arch/x86/include/asm/sfi.h                      |   2 +-
 arch/x86/include/asm/spl.h                      |   8 ++
 arch/x86/include/asm/tables.h                   |   2 +-
 arch/x86/include/asm/types.h                    |   5 +
 arch/x86/lib/Makefile                           |  11 +++
 arch/x86/lib/acpi_table.c                       |   4 +-
 arch/x86/lib/bios.c                             |   4 +-
 arch/x86/lib/bootm.c                            |   7 ++
 arch/x86/lib/init_helpers.c                     |   2 +-
 arch/x86/lib/interrupts.c                       |   5 +
 arch/x86/lib/mpspec.c                           |  14 +--
 arch/x86/lib/pinctrl_ich6.c                     |   2 +-
 arch/x86/lib/pirq_routing.c                     |  14 +--
 arch/x86/lib/relocate.c                         | 100 +++++++++++++++-----
 arch/x86/lib/sfi.c                              |   6 +-
 arch/x86/lib/spl.c                              | 159
+++++++++++++++++++++++++++++++
 arch/x86/lib/tables.c                           |  11 +--
 arch/x86/lib/zimage.c                           |   2 +-
 board/emulation/Kconfig                         |   7 ++
 board/emulation/qemu-x86/Kconfig                |   6 +-
 board/emulation/qemu-x86/MAINTAINERS            |   7 ++
 board/google/Kconfig                            |   7 ++
 board/google/chromebook_link/Kconfig            |   5 +-
 board/google/chromebook_link/MAINTAINERS        |   7 ++
 common/board_f.c                                |  16 ++--
 common/board_r.c                                |  12 ++-
 common/console.c                                |  30 +++---
 common/iomux.c                                  |   4 +-
 common/spl/Kconfig                              |  47 ++++++++++
 common/spl/spl_spi.c                            |   5 +-
 common/usb_kbd.c                                |   6 +-
 configs/chromebook_link64_defconfig             |  89 ++++++++++++++++++
 configs/chromebook_link_defconfig               |   4 +-
 configs/qemu-x86_64_defconfig                   |  80 ++++++++++++++++
 drivers/Makefile                                |   5 +
 drivers/misc/qfw.c                              |   4 +-
 drivers/pci/pci_rom.c                           |   2 +-
 drivers/video/ivybridge_igd.c                   |   6 +-
 include/configs/chromebook_link.h               |   9 ++
 include/configs/qemu-x86.h                      |   9 ++
 include/smbios.h                                |   4 +-
 lib/smbios.c                                    |  22 ++---
 scripts/Makefile.spl                            |  18 +++-
 tools/binman/etype/u_boot_spl_with_ucode_ptr.py |   2 +-
 tools/binman/etype/u_boot_ucode.py              |   6 ++
 95 files changed, 1929 insertions(+), 701 deletions(-)
 create mode 100644 arch/x86/cpu/i386/Makefile
 rename arch/x86/cpu/{ => i386}/call64.S (98%)
 create mode 100644 arch/x86/cpu/i386/cpu.c
 rename arch/x86/cpu/{interrupts.c => i386/interrupt.c} (99%)
 rename arch/x86/cpu/{ => i386}/setjmp.S (100%)
 create mode 100644 arch/x86/cpu/ivybridge/sdram_nop.c
 create mode 100644 arch/x86/cpu/start64.S
 create mode 100644 arch/x86/cpu/u-boot-64.lds
 create mode 100644 arch/x86/cpu/u-boot-spl.lds
 create mode 100644 arch/x86/cpu/x86_64/Makefile
 create mode 100644 arch/x86/cpu/x86_64/cpu.c
 create mode 100644 arch/x86/cpu/x86_64/interrupts.c
 create mode 100644 arch/x86/cpu/x86_64/setjmp.c
 create mode 100644 arch/x86/include/asm/spl.h
 create mode 100644 arch/x86/lib/spl.c
 create mode 100644 configs/chromebook_link64_defconfig
 create mode 100644 configs/qemu-x86_64_defconfig

Regards,
Bin


More information about the U-Boot mailing list