axconfig.toml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. # Architecture identifier.
  2. arch = "riscv64" # str
  3. # Platform identifier.
  4. platform = "riscv64-qemu-virt" # str
  5. # Number of CPUs
  6. smp = 1 # uint
  7. # Stack size of each task.
  8. task-stack-size = 0x40000 # uint
  9. # Number of timer ticks per second (Hz). A timer tick may contain several timer
  10. # interrupts.
  11. ticks-per-sec = 100 # uint
  12. #
  13. # Device specifications
  14. #
  15. [devices]
  16. # MMIO regions with format (`base_paddr`, `size`).
  17. mmio-regions = [
  18. [0x0010_1000, 0x1000],
  19. [0x0c00_0000, 0x21_0000],
  20. [0x1000_0000, 0x1000],
  21. [0x1000_1000, 0x8000],
  22. [0x3000_0000, 0x1000_0000],
  23. [0x4000_0000, 0x4000_0000]
  24. ] # [(uint, uint)]
  25. # End PCI bus number (`bus-range` property in device tree).
  26. pci-bus-end = 0xff # uint
  27. # Base physical address of the PCIe ECAM space.
  28. pci-ecam-base = 0x3000_0000 # uint
  29. # PCI device memory ranges (`ranges` property in device tree).
  30. pci-ranges = [
  31. [0x0300_0000, 0x1_0000],
  32. [0x4000_0000, 0x4000_0000],
  33. [0x4_0000_0000, 0x4_0000_0000]
  34. ] # [(uint, uint)]
  35. # rtc@101000 {
  36. # interrupts = <0x0b>;
  37. # interrupt-parent = <0x03>;
  38. # reg = <0x00 0x101000 0x00 0x1000>;
  39. # compatible = "google,goldfish-rtc";
  40. # };
  41. # RTC (goldfish) Address
  42. rtc-paddr = 0x10_1000 # uint
  43. # Timer interrupt frequency in Hz.
  44. timer-frequency = 10_000_000 # uint
  45. # VirtIO MMIO regions with format (`base_paddr`, `size`).
  46. virtio-mmio-regions = [
  47. [0x1000_1000, 0x1000],
  48. [0x1000_2000, 0x1000],
  49. [0x1000_3000, 0x1000],
  50. [0x1000_4000, 0x1000],
  51. [0x1000_5000, 0x1000],
  52. [0x1000_6000, 0x1000],
  53. [0x1000_7000, 0x1000],
  54. [0x1000_8000, 0x1000]
  55. ] # [(uint, uint)]
  56. #
  57. # Platform configs
  58. #
  59. [plat]
  60. # Platform family.
  61. family = "riscv64-qemu-virt" # str
  62. # Kernel address space base.
  63. kernel-aspace-base = "0xffff_ffc0_0000_0000" # uint
  64. # Kernel address space size.
  65. kernel-aspace-size = "0x0000_003f_ffff_f000" # uint
  66. # Base physical address of the kernel image.
  67. kernel-base-paddr = 0x8020_0000 # uint
  68. # Base virtual address of the kernel image.
  69. kernel-base-vaddr = "0xffff_ffc0_8020_0000" # uint
  70. # Offset of bus address and phys address. some boards, the bus address is
  71. # different from the physical address.
  72. phys-bus-offset = 0 # uint
  73. # Base address of the whole physical memory.
  74. phys-memory-base = 0x8000_0000 # uint
  75. # Size of the whole physical memory. (128M)
  76. phys-memory-size = 0x800_0000 # uint
  77. # Linear mapping offset, for quick conversions between physical and virtual
  78. # addresses.
  79. phys-virt-offset = "0xffff_ffc0_0000_0000" # uint