OVP Peripheral Model: ArmSmartLoaderArm64Linux
Model Specific Information
This page provides introductory usage information for an Imperas OVP peripheral behavioral model.
The page is split into sections providing specific information for this peripheral,
including any ports for connecting into a platform, registers, other component parts, and configuration options and general information for peripheral modeling with Imperas OVP.
Licensing
Open Source Apache 2.0
Description
Psuedo-peripheral to perform memory initialisation for an Arm64 Linux kernel boot: Loads Linux kernel image file, device tree blob and (optional) initial ram disk image into memory. Writes tiny boot code at physical memory base to configure regs and then jump to the Kernel entry. Modifies the device tree to always use the spin-table enable-method.
Limitations
Only supports little endian
Reference
See ARM Linux boot requirements in Linux source tree at documentation/arm64/booting.txt
Location
The SmartLoaderArm64Linux peripheral model is located in an Imperas/OVP installation at the VLNV: arm.ovpworld.org / peripheral / SmartLoaderArm64Linux / 1.0.
Peripheral Instance Parameters
This model accepts the following parameters:
Table : Peripheral Parameters
Name | Type | Description |
---|
kernel | string | Name of the the Linux kernel image file (default: Image) |
kerneladdr | uns64 | Address to load the Linux kernel image file (default: physicalbase+0x00080000) |
dtb | string | Name of the device tree blob file. (required) |
command | string | Set command line passed to kernel. (optional) |
append | string | Append to the command line passed to kernel. (optional) |
initrd | string | Name of the initial ram disk file to load. (optional) |
physicalbase | uns64 | The physical address of the base of memory. (default: 0) |
disable | bool | Set to True to disable the smart loader |
Bus Master Ports
This model has the following bus master ports:
Bus Master Port: mport
Table 1: mport
Name | Address Width (bits) | Description |
---|
mport | 32 | Master port - connect to same bus connected to Linux processor's data port |
Platforms that use this peripheral component
Peripheral components can be used in many different platforms, including those developed by Imperas or by other users of OVP. You can use this peripheral in your own platforms.
Table 2: Publicly available platforms using peripheral 'SmartLoaderArm64Linux'