[U-Boot] [PATCH v6 0/8] x86: qemu: add fw_cfg interface support for qemu-x86 targets

Bin Meng bmeng.cn at gmail.com
Tue Jan 12 04:53:37 CET 2016


Hi Miao,

On Tue, Jan 12, 2016 at 10:04 AM, Miao Yan <yanmiaobest at gmail.com> wrote:
> Hi Bin,
>
> 2016-01-07 17:31 GMT+08:00 Miao Yan <yanmiaobest at gmail.com>:
>> The fw_cfg interface provided by QEMU allow guests to retrieve various information
>> about the system, e.g. cpu number, variaous firmware data, kernel setup, etc. The
>> fw_cfg interface can be accessed through 3 IO ports (on x86), using x86 in/out
>> instructions.
>>
>>   - 0x510: select configuration items to access
>>   - 0x511: reading this port will return data selected in 0x510
>>   - 0x514: this can be used to detect if DMA interface is available
>>
>> If fw_cfg DMA interface is available, it can be used to accelerate
>> accesses.
>>
>> This patchset adds the following supports for qemu-x86 targets:
>>
>>   + the fw_cfg driver itself
>>
>>   + add a U-Boot command 'fw' to support direct accessing kernel informtion
>>     from fw_cfg interface, this saves the time of loading them from hard disk or
>>     network again, through emulated devices.
>>
>>   + use fw_cfg to get cpu number at runtime, so smp boot no longer relies on
>>     the cpu node hard-coded in dts files.
>>
>> Changes in v6:
>>   - fix oneline comment
>>   - do not update bootargs when kernel cmdline only contains '\0'
>>
>> Miao Yan (8):
>>   x86: adjust ramdisk load address
>>   x86: qemu: add fw_cfg support
>>   x86: qemu: add a cpu uclass driver for qemu target
>>   x86: fix a typo in function name
>>   x86: use actual CPU number for allocating memory
>>   x86: qemu: fix cpu device in smp boot
>>   x86: qemu: remove cpu node in device tree
>>   x86: qemu: add documentaion for the fw_cfg interface
>>
>>  arch/x86/cpu/mp_init.c           |  84 +++++++++++-
>>  arch/x86/cpu/qemu/Makefile       |   2 +-
>>  arch/x86/cpu/qemu/cpu.c          |  46 +++++++
>>  arch/x86/cpu/qemu/fw_cfg.c       | 283 +++++++++++++++++++++++++++++++++++++++
>>  arch/x86/cpu/qemu/qemu.c         |   3 +
>>  arch/x86/dts/qemu-x86_i440fx.dts |   9 +-
>>  arch/x86/dts/qemu-x86_q35.dts    |   9 +-
>>  arch/x86/include/asm/fw_cfg.h    |  93 +++++++++++++
>>  doc/README.x86                   |  34 ++++-
>>  include/configs/x86-common.h     |   3 +-
>>  10 files changed, 539 insertions(+), 27 deletions(-)
>>  create mode 100644 arch/x86/cpu/qemu/cpu.c
>>  create mode 100644 arch/x86/cpu/qemu/fw_cfg.c
>>  create mode 100644 arch/x86/include/asm/fw_cfg.h
>>
>> --
>> 1.9.1
>>
>
> Is v6 OK for integration ? Thanks.

Yes, will be applied soon.

Regards,
Bin


More information about the U-Boot mailing list