huchuan2025/20-Area/22-Work/222-ReadNote/Rt-thread OS/体系结构相关代码.md

1.3 KiB
Raw Blame History

  • 路径 libcpu/aarch64
  • 内容
    • cpu(gcc)
      • rt_hw_get_current_el
      • rt_hw_set_current_vbar
      • rt_hw_set_elx_env
    • context(gcc) 重要,需要分析
      • generic timer的封装
        • rt_hw_gtimer_enable CNTP_CTL_EL0
        • rt_hw_gtimer_disable CNTP_CTL_EL0
        • rt_hw_set_gtimer_val CNTP_TVAL_EL0
        • rt_hw_get_gtimer_val CNTP_TVAL_EL0
        • rt_hw_get_cntpct_val CNTPCT_EL0
        • rt_hw_get_gtimer_frq CNTFRQ_EL0
        • rt_hw_set_gtimer_frq
      • context函数封装
        • rt_hw_context_switch_to
        • rt_hw_context_switch
        • rt_hw_context_switch_interrupt
        • Context上下文的封装
          • SAVE_CONTEXT
          • RESTORE_CONTEXT
      • interrupt处理
        • rt_hw_interrupt_disable
        • rt_hw_interrupt_enable
        • vector_irq 中断向量表使用
        • vector_exception 中断向量表使用
    • interrupt
      • 是gicv3函数的调用
    • gicv3
      • 封装gicv3相关代码 可以通过这里学习gicv3
    • psci
      • 就是psci的电源管理的东西 找个专题专门看
    • smccc
      • 封装svc hvc
    • stack
      • 没看懂,没啥用
    • mmu
    • gtimer
      • gtimer相关使用主要是调用cpu_gcc.s中对gtimer的封装函数
    • trap
    • entry_point(gcc)
      • _start 入口函数 启动 rtthread_startup
    • 看着没什么用的
      • startup(gcc)
      • vector(gcc)
        • gic