Browse Source

remove cr/lf

pull/17/MERGE
zhugengyu 3 years ago
parent
commit
d6105050c9
  1. 26
      .gitee/ISSUE_TEMPLATE.zh-CN.md
  2. 28
      .gitee/PULL_REQUEST_TEMPLATE.zh-CN.md
  3. 58
      .vscode/launch.json
  4. 194
      configs/aarch32_defconfig
  5. 194
      configs/aarch64_defconfig
  6. 216
      doc/baremetal.dio
  7. 20
      lib/Kconfig
  8. 68
      lib/Kconfiglib/.config
  9. 8
      lib/Kconfiglib/.gitignore
  10. 204
      lib/Kconfiglib/Kconfig
  11. 10
      lib/Kconfiglib/LICENSE.txt
  12. 96
      lib/Kconfiglib/makefile.patch
  13. 14
      lib/Kconfiglib/setup.cfg
  14. 34
      lib/lib.mk
  15. 224
      make/ld/e2000_ft2004_aarch64_ram.ld
  16. 72
      make/menuconfig.mk
  17. 90
      make/packsource.mk
  18. 30
      scripts/kill_qemu_instance.sh
  19. 32
      scripts/mount2vxbox.sh

26
.gitee/ISSUE_TEMPLATE.zh-CN.md

@ -1,13 +1,13 @@
### 该问题是怎么引起的?
### 重现步骤
### 报错信息
### 该问题是怎么引起的?
### 重现步骤
### 报错信息

28
.gitee/PULL_REQUEST_TEMPLATE.zh-CN.md

@ -1,14 +1,14 @@
### 相关的Issue
### 原因(目的、解决的问题等)
### 描述(做了什么,变更了什么)
### 测试用例(新增、改动、可能影响的功能)
### 相关的Issue
### 原因(目的、解决的问题等)
### 描述(做了什么,变更了什么)
### 测试用例(新增、改动、可能影响的功能)

58
.vscode/launch.json

@ -1,30 +1,30 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/baremetal/qemu_genric_timer_irq/qemu_generic_irq_test", #
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "/usr/local/bin/aarch64-linux-gnu-gdb", # gdb
// "miDebuggerPath": "D:/ubuntu/rootfs/usr/local/bin/aarch64-linux-gnu-gdb", # gdb
"miDebuggerServerAddress": "127.0.0.1:1234", # gdb
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/baremetal/qemu_genric_timer_irq/qemu_generic_irq_test", #
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "/usr/local/bin/aarch64-linux-gnu-gdb", # gdb
// "miDebuggerPath": "D:/ubuntu/rootfs/usr/local/bin/aarch64-linux-gnu-gdb", # gdb
"miDebuggerServerAddress": "127.0.0.1:1234", # gdb
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}

194
configs/aarch32_defconfig

@ -1,97 +1,97 @@
#
# Project Configuration
#
#
# FT2000-4 AARCH32 Baremetal Configuration
#
CONFIG_TARGET_NAME="ft2004_baremetal"
# end of FT2000-4 AARCH32 Baremetal Configuration
# end of Project Configuration
#
# Build Target
#
CONFIG_TARGET_ARMV8_AARCH32=y
# CONFIG_TARGET_ARMV8_AARCH64 is not set
# CONFIG_TARGET_ARMV7 is not set
CONFIG_TARGET_F2000_4=y
# CONFIG_TARGET_AARCH32_QEMU is not set
# CONFIG_TARGET_AARCH64_QEMU is not set
# CONFIG_TARGET_E2000 is not set
# end of Build Target
#
# General Setting
#
CONFIG_ENVI_UBUNTU_20_04=y
# CONFIG_ENVI_WINDOWS10_MINGW is not set
#
# Cross-Compiler Setting
#
CONFIG_COMPILER_NO_STD_STARUP=y
# CONFIG_USE_EXT_COMPILER is not set
# end of Cross-Compiler Setting
#
# GNU linker
#
CONFIG_E2000_FT2004_AARCH32_RAM_LD=y
# CONFIG_E2000_FT2004_AARCH32_FLASH_LD is not set
# CONFIG_E2000_FT20004_AARCH64_RAM_LD is not set
# CONFIG_E2000_FT20004_AARCH64_FLASH_LD is not set
# CONFIG_QEMU_AARCH32_RAM_LD is not set
# end of GNU linker
# end of General Setting
#
# Board Configuration
#
#
# Common Configuration
#
# CONFIG_LOG_VERBOS is not set
# CONFIG_LOG_DEBUG is not set
# CONFIG_LOG_INFO is not set
# CONFIG_LOG_WARN is not set
CONFIG_LOG_ERROR=y
# end of Common Configuration
#
# Components Configuration
#
# CONFIG_USE_SPI is not set
# CONFIG_USE_QSPI is not set
CONFIG_USE_GIC=y
#
# Gic Configuration
#
CONFIG_EBABLE_GICV3=y
# end of Gic Configuration
CONFIG_USE_USART=y
#
# Usart Configuration
#
CONFIG_ENABLE_Pl011_UART=y
# end of Usart Configuration
# end of Components Configuration
#
# Arch Configuration
#
# CONFIG_USE_CACHE is not set
# end of Arch Configuration
# end of Board Configuration
#
# Library Configuration
#
CONFIG_USE_NOSTD_LIBC=y
# CONFIG_USE_LIBC is not set
# end of Library Configuration
#
# Project Configuration
#
#
# FT2000-4 AARCH32 Baremetal Configuration
#
CONFIG_TARGET_NAME="ft2004_baremetal"
# end of FT2000-4 AARCH32 Baremetal Configuration
# end of Project Configuration
#
# Build Target
#
CONFIG_TARGET_ARMV8_AARCH32=y
# CONFIG_TARGET_ARMV8_AARCH64 is not set
# CONFIG_TARGET_ARMV7 is not set
CONFIG_TARGET_F2000_4=y
# CONFIG_TARGET_AARCH32_QEMU is not set
# CONFIG_TARGET_AARCH64_QEMU is not set
# CONFIG_TARGET_E2000 is not set
# end of Build Target
#
# General Setting
#
CONFIG_ENVI_UBUNTU_20_04=y
# CONFIG_ENVI_WINDOWS10_MINGW is not set
#
# Cross-Compiler Setting
#
CONFIG_COMPILER_NO_STD_STARUP=y
# CONFIG_USE_EXT_COMPILER is not set
# end of Cross-Compiler Setting
#
# GNU linker
#
CONFIG_E2000_FT2004_AARCH32_RAM_LD=y
# CONFIG_E2000_FT2004_AARCH32_FLASH_LD is not set
# CONFIG_E2000_FT20004_AARCH64_RAM_LD is not set
# CONFIG_E2000_FT20004_AARCH64_FLASH_LD is not set
# CONFIG_QEMU_AARCH32_RAM_LD is not set
# end of GNU linker
# end of General Setting
#
# Board Configuration
#
#
# Common Configuration
#
# CONFIG_LOG_VERBOS is not set
# CONFIG_LOG_DEBUG is not set
# CONFIG_LOG_INFO is not set
# CONFIG_LOG_WARN is not set
CONFIG_LOG_ERROR=y
# end of Common Configuration
#
# Components Configuration
#
# CONFIG_USE_SPI is not set
# CONFIG_USE_QSPI is not set
CONFIG_USE_GIC=y
#
# Gic Configuration
#
CONFIG_EBABLE_GICV3=y
# end of Gic Configuration
CONFIG_USE_USART=y
#
# Usart Configuration
#
CONFIG_ENABLE_Pl011_UART=y
# end of Usart Configuration
# end of Components Configuration
#
# Arch Configuration
#
# CONFIG_USE_CACHE is not set
# end of Arch Configuration
# end of Board Configuration
#
# Library Configuration
#
CONFIG_USE_NOSTD_LIBC=y
# CONFIG_USE_LIBC is not set
# end of Library Configuration

194
configs/aarch64_defconfig

@ -1,97 +1,97 @@
#
# Build Target
#
# CONFIG_TARGET_ARMV8_AARCH32 is not set
CONFIG_TARGET_ARMV8_AARCH64=y
# CONFIG_TARGET_ARMV7 is not set
CONFIG_TARGET_F2000_4=y
# CONFIG_TARGET_AARCH32_QEMU is not set
# CONFIG_TARGET_AARCH64_QEMU is not set
# CONFIG_TARGET_E2000 is not set
# end of Build Target
#
# General Setting
#
CONFIG_ENVI_UBUNTU_20_04=y
# CONFIG_ENVI_WINDOWS10_MINGW is not set
#
# Cross-Compiler Setting
#
CONFIG_COMPILER_NO_STD_STARUP=y
# CONFIG_USE_EXT_COMPILER is not set
# end of Cross-Compiler Setting
#
# GNU linker
#
# CONFIG_E2000_FT2004_AARCH32_RAM_LD is not set
CONFIG_E2000_FT20004_AARCH64_RAM_LD=y
# CONFIG_QEMU_AARCH32_RAM_LD is not set
# end of GNU linker
# end of General Setting
#
# Board Configuration
#
#
# Common Configuration
#
# CONFIG_LOG_VERBOS is not set
# CONFIG_LOG_DEBUG is not set
# CONFIG_LOG_INFO is not set
# CONFIG_LOG_WARN is not set
CONFIG_LOG_ERROR=y
# end of Common Configuration
#
# Components Configuration
#
# CONFIG_USE_SPI is not set
# CONFIG_USE_QSPI is not set
CONFIG_USE_GIC=y
#
# Gic Configuration
#
CONFIG_EBABLE_GICV3=y
# end of Gic Configuration
CONFIG_USE_USART=y
#
# Usart Configuration
#
CONFIG_ENABLE_Pl011_UART=y
# end of Usart Configuration
# end of Components Configuration
#
# Arch Configuration
#
CONFIG_USE_CACHE=y
CONFIG_USE_L3CACHE=y
CONFIG_USE_MMU=y
# end of Arch Configuration
# end of Board Configuration
#
# Library Configuration
#
CONFIG_USE_NOSTD_LIBC=y
# CONFIG_USE_LIBC is not set
# end of Library Configuration
#
# Project Configuration
#
#
# Baremetal Configuration
#
CONFIG_TARGET_NAME="uart_irq_send"
# end of Baremetal Configuration
# end of Project Configuration
#
# Build Target
#
# CONFIG_TARGET_ARMV8_AARCH32 is not set
CONFIG_TARGET_ARMV8_AARCH64=y
# CONFIG_TARGET_ARMV7 is not set
CONFIG_TARGET_F2000_4=y
# CONFIG_TARGET_AARCH32_QEMU is not set
# CONFIG_TARGET_AARCH64_QEMU is not set
# CONFIG_TARGET_E2000 is not set
# end of Build Target
#
# General Setting
#
CONFIG_ENVI_UBUNTU_20_04=y
# CONFIG_ENVI_WINDOWS10_MINGW is not set
#
# Cross-Compiler Setting
#
CONFIG_COMPILER_NO_STD_STARUP=y
# CONFIG_USE_EXT_COMPILER is not set
# end of Cross-Compiler Setting
#
# GNU linker
#
# CONFIG_E2000_FT2004_AARCH32_RAM_LD is not set
CONFIG_E2000_FT20004_AARCH64_RAM_LD=y
# CONFIG_QEMU_AARCH32_RAM_LD is not set
# end of GNU linker
# end of General Setting
#
# Board Configuration
#
#
# Common Configuration
#
# CONFIG_LOG_VERBOS is not set
# CONFIG_LOG_DEBUG is not set
# CONFIG_LOG_INFO is not set
# CONFIG_LOG_WARN is not set
CONFIG_LOG_ERROR=y
# end of Common Configuration
#
# Components Configuration
#
# CONFIG_USE_SPI is not set
# CONFIG_USE_QSPI is not set
CONFIG_USE_GIC=y
#
# Gic Configuration
#
CONFIG_EBABLE_GICV3=y
# end of Gic Configuration
CONFIG_USE_USART=y
#
# Usart Configuration
#
CONFIG_ENABLE_Pl011_UART=y
# end of Usart Configuration
# end of Components Configuration
#
# Arch Configuration
#
CONFIG_USE_CACHE=y
CONFIG_USE_L3CACHE=y
CONFIG_USE_MMU=y
# end of Arch Configuration
# end of Board Configuration
#
# Library Configuration
#
CONFIG_USE_NOSTD_LIBC=y
# CONFIG_USE_LIBC is not set
# end of Library Configuration
#
# Project Configuration
#
#
# Baremetal Configuration
#
CONFIG_TARGET_NAME="uart_irq_send"
# end of Baremetal Configuration
# end of Project Configuration

216
doc/baremetal.dio

@ -1,109 +1,109 @@
<mxfile>
<diagram id="rB2vehtiMr336PgAY8iG" name="Page-1">
<mxGraphModel dx="934" dy="653" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="2" value="Task1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#60a917;strokeColor=#2D7600;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="300" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="3" value="Task2" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#008a00;strokeColor=#005700;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="360" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="4" value="Task3" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="420" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="5" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="480" width="110" height="40" as="geometry"/>
</mxCell>
<mxCell id="6" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="4" target="5">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="260" y="460" as="sourcePoint"/>
<mxPoint x="310" y="410" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="7" value="Task3" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="520" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="8" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" target="7">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="520" as="sourcePoint"/>
<mxPoint x="310" y="410" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="9" value="Task4" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="560" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="10" value="Task4" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#0050ef;strokeColor=#001DBC;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="680" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="12" value="" style="endArrow=classic;startArrow=classic;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="120" y="710" as="sourcePoint"/>
<mxPoint x="120" y="310" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="13" value="" style="endArrow=none;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="110" y="300" as="sourcePoint"/>
<mxPoint x="150" y="300" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="15" value="" style="endArrow=none;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="110" y="720" as="sourcePoint"/>
<mxPoint x="150" y="720" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="16" value="while" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="70" y="520" width="40" height="20" as="geometry"/>
</mxCell>
<mxCell id="17" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="600" width="110" height="20" as="geometry"/>
</mxCell>
<mxCell id="18" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="660" width="110" height="20" as="geometry"/>
</mxCell>
<mxCell id="19" value="中断(高优先级)" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#a20025;strokeColor=#6F0000;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="490" y="620" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="20" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="280" y="599" as="sourcePoint"/>
<mxPoint x="324.16999999999996" y="599.8800000000001" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="21" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="680" as="sourcePoint"/>
<mxPoint x="280" y="680" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="22" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="445.83" y="619.12" as="sourcePoint"/>
<mxPoint x="490.00000000000006" y="620.0000000000001" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="23" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="480" y="660" as="sourcePoint"/>
<mxPoint x="440" y="660" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="24" value="" style="endArrow=none;dashed=1;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="440" y="655" as="sourcePoint"/>
<mxPoint x="440" y="625" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="25" value="" style="endArrow=none;dashed=1;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="280" y="675" as="sourcePoint"/>
<mxPoint x="280" y="605" as="targetPoint"/>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
<mxfile>
<diagram id="rB2vehtiMr336PgAY8iG" name="Page-1">
<mxGraphModel dx="934" dy="653" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0"/>
<mxCell id="1" parent="0"/>
<mxCell id="2" value="Task1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#60a917;strokeColor=#2D7600;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="300" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="3" value="Task2" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#008a00;strokeColor=#005700;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="360" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="4" value="Task3" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="420" width="120" height="60" as="geometry"/>
</mxCell>
<mxCell id="5" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="480" width="110" height="40" as="geometry"/>
</mxCell>
<mxCell id="6" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="4" target="5">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="260" y="460" as="sourcePoint"/>
<mxPoint x="310" y="410" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="7" value="Task3" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="520" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="8" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" target="7">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="520" as="sourcePoint"/>
<mxPoint x="310" y="410" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="9" value="Task4" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="560" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="10" value="Task4" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#0050ef;strokeColor=#001DBC;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="160" y="680" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="12" value="" style="endArrow=classic;startArrow=classic;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="120" y="710" as="sourcePoint"/>
<mxPoint x="120" y="310" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="13" value="" style="endArrow=none;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="110" y="300" as="sourcePoint"/>
<mxPoint x="150" y="300" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="15" value="" style="endArrow=none;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="110" y="720" as="sourcePoint"/>
<mxPoint x="150" y="720" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="16" value="while" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;" vertex="1" parent="1">
<mxGeometry x="70" y="520" width="40" height="20" as="geometry"/>
</mxCell>
<mxCell id="17" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="600" width="110" height="20" as="geometry"/>
</mxCell>
<mxCell id="18" value="中断" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="330" y="660" width="110" height="20" as="geometry"/>
</mxCell>
<mxCell id="19" value="中断(高优先级)" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#a20025;strokeColor=#6F0000;fontColor=#ffffff;" vertex="1" parent="1">
<mxGeometry x="490" y="620" width="120" height="40" as="geometry"/>
</mxCell>
<mxCell id="20" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="280" y="599" as="sourcePoint"/>
<mxPoint x="324.16999999999996" y="599.8800000000001" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="21" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="680" as="sourcePoint"/>
<mxPoint x="280" y="680" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="22" value="" style="endArrow=classic;html=1;exitX=1;exitY=1;exitDx=0;exitDy=0;entryX=-0.053;entryY=0.022;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="445.83" y="619.12" as="sourcePoint"/>
<mxPoint x="490.00000000000006" y="620.0000000000001" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="23" value="" style="endArrow=classic;html=1;entryX=1;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="480" y="660" as="sourcePoint"/>
<mxPoint x="440" y="660" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="24" value="" style="endArrow=none;dashed=1;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="440" y="655" as="sourcePoint"/>
<mxPoint x="440" y="625" as="targetPoint"/>
</mxGeometry>
</mxCell>
<mxCell id="25" value="" style="endArrow=none;dashed=1;html=1;" edge="1" parent="1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="280" y="675" as="sourcePoint"/>
<mxPoint x="280" y="605" as="targetPoint"/>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>

20
lib/Kconfig

@ -1,10 +1,10 @@
choice
prompt "StdLibC or NonStdLibC"
default USE_LIBC
config USE_LIBC
bool "Use C Standard Library"
endchoice
choice
prompt "StdLibC or NonStdLibC"
default USE_LIBC
config USE_LIBC
bool "Use C Standard Library"
endchoice

68
lib/Kconfiglib/.config

@ -1,34 +1,34 @@
CONFIG_MODULES=y
#
# Bool and tristate symbols
#
CONFIG_BOOL=y
# CONFIG_BOOL_DEP is not set
# CONFIG_TRI_DEP is not set
# CONFIG_TWO_MENU_NODES is not set
# CONFIG_TRI is not set
#
# These are selected by TRI_DEP
#
# CONFIG_SELECTED_BY_TRI_DEP is not set
# CONFIG_IMPLIED_BY_TRI_DEP is not set
# end of Bool and tristate symbols
#
# String, int, and hex symbols
#
CONFIG_STRING="foo"
CONFIG_INT=747
CONFIG_HEX=0xABC
# end of String, int, and hex symbols
#
# Various choices
#
CONFIG_BOOL_CHOICE_SYM_1=y
# CONFIG_BOOL_CHOICE_SYM_2 is not set
# CONFIG_TRI_CHOICE_SYM_1 is not set
# CONFIG_TRI_CHOICE_SYM_2 is not set
# end of Various choices
CONFIG_MODULES=y
#
# Bool and tristate symbols
#
CONFIG_BOOL=y
# CONFIG_BOOL_DEP is not set
# CONFIG_TRI_DEP is not set
# CONFIG_TWO_MENU_NODES is not set
# CONFIG_TRI is not set
#
# These are selected by TRI_DEP
#
# CONFIG_SELECTED_BY_TRI_DEP is not set
# CONFIG_IMPLIED_BY_TRI_DEP is not set
# end of Bool and tristate symbols
#
# String, int, and hex symbols
#
CONFIG_STRING="foo"
CONFIG_INT=747
CONFIG_HEX=0xABC
# end of String, int, and hex symbols
#
# Various choices
#
CONFIG_BOOL_CHOICE_SYM_1=y
# CONFIG_BOOL_CHOICE_SYM_2 is not set
# CONFIG_TRI_CHOICE_SYM_1 is not set
# CONFIG_TRI_CHOICE_SYM_2 is not set
# end of Various choices

8
lib/Kconfiglib/.gitignore

@ -1,4 +1,4 @@
*.py[co]
build/
*.egg-info/
dist/
*.py[co]
build/
*.egg-info/
dist/

204
lib/Kconfiglib/Kconfig

@ -1,102 +1,102 @@
mainmenu "Example Kconfig configuration"
config MODULES
bool "Enable loadable module support"
option modules
default y
menu "Bool and tristate symbols"
config BOOL
bool "Bool symbol"
default y
config BOOL_DEP
bool "Dependent bool symbol"
depends on BOOL
# Mix it up a bit with an 'if' instead of a 'depends on'
if BOOL
config TRI_DEP
tristate "Dependent tristate symbol"
select SELECTED_BY_TRI_DEP
imply IMPLIED_BY_TRI_DEP
endif
config TWO_MENU_NODES
bool "First prompt"
depends on BOOL
config TRI
tristate "Tristate symbol"
config TWO_MENU_NODES
bool "Second prompt"
comment "These are selected by TRI_DEP"
config SELECTED_BY_TRI_DEP
tristate "Tristate selected by TRI_DEP"
config IMPLIED_BY_TRI_DEP
tristate "Tristate implied by TRI_DEP"
endmenu
menu "String, int, and hex symbols"
config STRING
string "String symbol"
default "foo"
config INT
int "Int symbol"
default 747
config HEX
hex "Hex symbol"
default 0xABC
endmenu
menu "Various choices"
choice BOOL_CHOICE
bool "Bool choice"
config BOOL_CHOICE_SYM_1
bool "Bool choice sym 1"
config BOOL_CHOICE_SYM_2
bool "Bool choice sym 2"
endchoice
choice TRI_CHOICE
tristate "Tristate choice"
config TRI_CHOICE_SYM_1
tristate "Tristate choice sym 1"
config TRI_CHOICE_SYM_2
tristate "Tristate choice sym 2"
endchoice
choice OPT_BOOL_CHOICE
bool "Optional bool choice"
optional
config OPT_BOOL_CHOICE_SYM_1
bool "Optional bool choice sym 1"
config OPT_BOOL_CHOICE_SYM_2
bool "Optional bool choice sym 2"
endchoice
endmenu
mainmenu "Example Kconfig configuration"
config MODULES
bool "Enable loadable module support"
option modules
default y
menu "Bool and tristate symbols"
config BOOL
bool "Bool symbol"
default y
config BOOL_DEP
bool "Dependent bool symbol"
depends on BOOL
# Mix it up a bit with an 'if' instead of a 'depends on'
if BOOL
config TRI_DEP
tristate "Dependent tristate symbol"
select SELECTED_BY_TRI_DEP
imply IMPLIED_BY_TRI_DEP
endif
config TWO_MENU_NODES
bool "First prompt"
depends on BOOL
config TRI
tristate "Tristate symbol"
config TWO_MENU_NODES
bool "Second prompt"
comment "These are selected by TRI_DEP"
config SELECTED_BY_TRI_DEP
tristate "Tristate selected by TRI_DEP"
config IMPLIED_BY_TRI_DEP
tristate "Tristate implied by TRI_DEP"
endmenu
menu "String, int, and hex symbols"
config STRING
string "String symbol"
default "foo"
config INT
int "Int symbol"
default 747
config HEX
hex "Hex symbol"
default 0xABC
endmenu
menu "Various choices"
choice BOOL_CHOICE
bool "Bool choice"
config BOOL_CHOICE_SYM_1
bool "Bool choice sym 1"
config BOOL_CHOICE_SYM_2
bool "Bool choice sym 2"
endchoice
choice TRI_CHOICE
tristate "Tristate choice"
config TRI_CHOICE_SYM_1
tristate "Tristate choice sym 1"
config TRI_CHOICE_SYM_2
tristate "Tristate choice sym 2"
endchoice
choice OPT_BOOL_CHOICE
bool "Optional bool choice"
optional
config OPT_BOOL_CHOICE_SYM_1
bool "Optional bool choice sym 1"
config OPT_BOOL_CHOICE_SYM_2
bool "Optional bool choice sym 2"
endchoice
endmenu

10
lib/Kconfiglib/LICENSE.txt

@ -1,5 +1,5 @@
Copyright (c) 2011-2019, Ulf Magnusson <ulfalizer@gmail.com>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
Copyright (c) 2011-2019, Ulf Magnusson <ulfalizer@gmail.com>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

96
lib/Kconfiglib/makefile.patch

@ -1,48 +1,48 @@
From 93daf46f309b0c8f86149ef58c4906387d054c22 Mon Sep 17 00:00:00 2001
From: Ulf Magnusson <ulfalizer@gmail.com>
Date: Tue, 9 Jun 2015 13:01:34 +0200
Subject: [PATCH] Kconfiglib scripts/kconfig/Makefile patch
---
scripts/kconfig/Makefile | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 3f327e21f60e..8b7dd1292005 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -27,2 +27,31 @@ gconfig: $(obj)/gconf
+PHONY += scriptconfig iscriptconfig kmenuconfig guiconfig dumpvarsconfig
+
+PYTHONCMD ?= python
+kpython := PYTHONPATH=$(srctree)/Kconfiglib:$$PYTHONPATH $(PYTHONCMD)
+
+ifneq ($(filter scriptconfig,$(MAKECMDGOALS)),)
+ifndef SCRIPT
+$(error Use "make scriptconfig SCRIPT=<path to script> [SCRIPT_ARG=<argument>]")
+endif
+endif
+
+scriptconfig:
+ $(Q)$(kpython) $(SCRIPT) $(Kconfig) $(if $(SCRIPT_ARG),"$(SCRIPT_ARG)")
+
+iscriptconfig:
+ $(Q)$(kpython) -i -c \
+ "import kconfiglib; \
+ kconf = kconfiglib.Kconfig('$(Kconfig)'); \
+ print('A Kconfig instance \'kconf\' for the architecture $(ARCH) has been created.')"
+
+kmenuconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/menuconfig.py $(Kconfig)
+
+guiconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/guiconfig.py $(Kconfig)
+
+dumpvarsconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/examples/dumpvars.py $(Kconfig)
+
menuconfig: $(obj)/mconf
--
2.20.1
From 93daf46f309b0c8f86149ef58c4906387d054c22 Mon Sep 17 00:00:00 2001
From: Ulf Magnusson <ulfalizer@gmail.com>
Date: Tue, 9 Jun 2015 13:01:34 +0200
Subject: [PATCH] Kconfiglib scripts/kconfig/Makefile patch
---
scripts/kconfig/Makefile | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
index 3f327e21f60e..8b7dd1292005 100644
--- a/scripts/kconfig/Makefile
+++ b/scripts/kconfig/Makefile
@@ -27,2 +27,31 @@ gconfig: $(obj)/gconf
+PHONY += scriptconfig iscriptconfig kmenuconfig guiconfig dumpvarsconfig
+
+PYTHONCMD ?= python
+kpython := PYTHONPATH=$(srctree)/Kconfiglib:$$PYTHONPATH $(PYTHONCMD)
+
+ifneq ($(filter scriptconfig,$(MAKECMDGOALS)),)
+ifndef SCRIPT
+$(error Use "make scriptconfig SCRIPT=<path to script> [SCRIPT_ARG=<argument>]")
+endif
+endif
+
+scriptconfig:
+ $(Q)$(kpython) $(SCRIPT) $(Kconfig) $(if $(SCRIPT_ARG),"$(SCRIPT_ARG)")
+
+iscriptconfig:
+ $(Q)$(kpython) -i -c \
+ "import kconfiglib; \
+ kconf = kconfiglib.Kconfig('$(Kconfig)'); \
+ print('A Kconfig instance \'kconf\' for the architecture $(ARCH) has been created.')"
+
+kmenuconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/menuconfig.py $(Kconfig)
+
+guiconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/guiconfig.py $(Kconfig)
+
+dumpvarsconfig:
+ $(Q)$(kpython) $(srctree)/Kconfiglib/examples/dumpvars.py $(Kconfig)
+
menuconfig: $(obj)/mconf
--
2.20.1

14
lib/Kconfiglib/setup.cfg

@ -1,7 +1,7 @@
[bdist_wheel]
# We support both Python 2 and Python 3
universal = 1
[metadata]
# Include the license file in wheels
license_file = LICENSE.txt
[bdist_wheel]
# We support both Python 2 and Python 3
universal = 1
[metadata]
# Include the license file in wheels
license_file = LICENSE.txt

34
lib/lib.mk

@ -1,17 +1,17 @@
LIB_CUR_DIR := $(STANDALONE_DIR)/lib
ifdef CONFIG_USE_LIBC
SRC_DIR += $(LIB_CUR_DIR)/libc
INC_DIR += $(LIB_CUR_DIR)/libc
endif
ifdef CONFIG_USE_NOSTD_LIBC
SRC_DIR += $(LIB_CUR_DIR)/nostdlib
INC_DIR += $(LIB_CUR_DIR)/nostdlib
endif
LIB_CUR_DIR := $(STANDALONE_DIR)/lib
ifdef CONFIG_USE_LIBC
SRC_DIR += $(LIB_CUR_DIR)/libc
INC_DIR += $(LIB_CUR_DIR)/libc
endif
ifdef CONFIG_USE_NOSTD_LIBC
SRC_DIR += $(LIB_CUR_DIR)/nostdlib
INC_DIR += $(LIB_CUR_DIR)/nostdlib
endif

224
make/ld/e2000_ft2004_aarch64_ram.ld

@ -1,113 +1,113 @@
ENTRY(_boot)
MEMORY
{
ROM (rx) : ORIGIN = 0x80100000, LENGTH = 1M
RAM (rwx): ORIGIN = 0x81000000, LENGTH = 32M
}
SECTIONS
{
.text :
{
KEEP(*(.StartUp))
KEEP(*(.vectors))
KEEP(*(.text.boot))
*(.text)
. = ALIGN(8);
}> ROM
.rodata :
{
*(.rodata .rodata.* .gnu.linkonce.r.*)
} > ROM
.init :
{
KEEP (*(SORT_NONE(.init)))
}> ROM
.fini :
{
KEEP (*(SORT_NONE(.fini)))
}> ROM
.eh_frame :
{
KEEP (*(.eh_frame))
}> ROM
.ARM.extab :
{
*(.ARM.extab* .gnu.linkonce.armextab.*)
}> ROM
.ARM.exidx :
{
__exidx_start = .;
*(.ARM.exidx* .gnu.linkonce.armexidx.*)
__exidx_end = .;
}> ROM
.fini_array :
{
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP (*(SORT(.fini_array.*)))
KEEP (*(.fini_array ))
PROVIDE_HIDDEN (__fini_array_end = .);
}> ROM
.dtors :
{
KEEP (*crtbegin.o(.dtors))
KEEP (*crtbegin?.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
. = ALIGN(16);
_rom_end = .;
}> ROM
.data :AT(ADDR(.dtors) + SIZEOF(.dtors))
{
__data_start = .;
*(.data)
*(.data .data.* .gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
. = ALIGN(4096); /* align to page size */
__data_end = .;
}> RAM
.bss :
{
. = ALIGN(8);
__bss_start__ = .;
__bss_start = __bss_start__;
bss = .;
*(.bss)
. = ALIGN(8);
__bss_end__ = .;
__bss_end = __bss_end__;
}> RAM
.heap (NOLOAD):
{
. = ALIGN(64);
__end__ = .;
PROVIDE(end = .);
. = . + 0x1000;
} > RAM
. = 0x82000000 ; /* stack memory */
stack_top = .;
}
ENTRY(_boot)
MEMORY
{
ROM (rx) : ORIGIN = 0x80100000, LENGTH = 1M
RAM (rwx): ORIGIN = 0x81000000, LENGTH = 32M
}
SECTIONS
{
.text :
{
KEEP(*(.StartUp))
KEEP(*(.vectors))
KEEP(*(.text.boot))
*(.text)
. = ALIGN(8);
}> ROM
.rodata :
{
*(.rodata .rodata.* .gnu.linkonce.r.*)
} > ROM
.init :
{
KEEP (*(SORT_NONE(.init)))
}> ROM
.fini :
{
KEEP (*(SORT_NONE(.fini)))
}> ROM
.eh_frame :
{
KEEP (*(.eh_frame))
}> ROM
.ARM.extab :
{
*(.ARM.extab* .gnu.linkonce.armextab.*)
}> ROM
.ARM.exidx :
{
__exidx_start = .;
*(.ARM.exidx* .gnu.linkonce.armexidx.*)
__exidx_end = .;
}> ROM
.fini_array :
{
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP (*(SORT(.fini_array.*)))
KEEP (*(.fini_array ))
PROVIDE_HIDDEN (__fini_array_end = .);
}> ROM
.dtors :
{
KEEP (*crtbegin.o(.dtors))
KEEP (*crtbegin?.o(.dtors))
KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors))
KEEP (*(SORT(.dtors.*)))
KEEP (*(.dtors))
. = ALIGN(16);
_rom_end = .;
}> ROM
.data :AT(ADDR(.dtors) + SIZEOF(.dtors))
{
__data_start = .;
*(.data)
*(.data .data.* .gnu.linkonce.d.*)
SORT(CONSTRUCTORS)
. = ALIGN(4096); /* align to page size */
__data_end = .;
}> RAM
.bss :
{
. = ALIGN(8);
__bss_start__ = .;
__bss_start = __bss_start__;
bss = .;
*(.bss)
. = ALIGN(8);
__bss_end__ = .;
__bss_end = __bss_end__;
}> RAM
.heap (NOLOAD):
{
. = ALIGN(64);
__end__ = .;
PROVIDE(end = .);
. = . + 0x1000;
} > RAM
. = 0x82000000 ; /* stack memory */
stack_top = .;
}
__bss_size = (__bss_end - __bss_start)>>3;

72
make/menuconfig.mk

@ -1,36 +1,36 @@
#
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-05-31 16:54:49
# @LastEditTime: 2021-05-31 16:55:15
# @Description:  This files is for baremetal build config
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
#
.PHONY: menuconfig oldconfig alldefconfig savedefconfig lddefconfig
menuconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/menuconfig.py
$(STANDALONE_DIR)/lib/Kconfiglib/genconfig.py
# backup current configs
oldconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/oldconfig.py
# write configuration where all symbols and set as
# default val
alldefconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/alldefconfig.py
# # Saves a minimal configuration file that only lists symbols that differ in value
# # from their defaults
savedefconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/savedefconfig.py
lddefconfig:
cp $(STANDALONE_DIR)/configs/$(DEF_KCONFIG) ./$(KCONFIG_CONFIG) -f
@echo "get default configs at " $(STANDALONE_DIR)/configs/$(DEF_KCONFIG)
#
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-05-31 16:54:49
# @LastEditTime: 2021-05-31 16:55:15
# @Description:  This files is for baremetal build config
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
#
.PHONY: menuconfig oldconfig alldefconfig savedefconfig lddefconfig
menuconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/menuconfig.py
$(STANDALONE_DIR)/lib/Kconfiglib/genconfig.py
# backup current configs
oldconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/oldconfig.py
# write configuration where all symbols and set as
# default val
alldefconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/alldefconfig.py
# # Saves a minimal configuration file that only lists symbols that differ in value
# # from their defaults
savedefconfig:
$(STANDALONE_DIR)/lib/Kconfiglib/savedefconfig.py
lddefconfig:
cp $(STANDALONE_DIR)/configs/$(DEF_KCONFIG) ./$(KCONFIG_CONFIG) -f
@echo "get default configs at " $(STANDALONE_DIR)/configs/$(DEF_KCONFIG)

90
make/packsource.mk

@ -1,45 +1,45 @@
#
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-06-02 11:03:35
# @LastEditTime: 2021-06-02 11:39:19
# @Description:  This files is for pack mini source code for building
#
# make pack OUTPATH=/mnt/d/6-2021
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
#
ifeq ($(MAKECMDGOALS),pack)
ifndef OUTPATH
$(error error, please type in 'make pack OUTPATH=<dir>'!!)
endif
DST_PACK_PATH ?= $(OUTPATH)/$(CONFIG_TARGET_NAME)
TAR_PACK_PATH ?= $(OUTPATH)/$(CONFIG_TARGET_NAME).tar.gz
# remove cur dir '.'
EXCL_PATH ?= .
SRC_PACK_PATH := $(filter-out $(EXCL_PATH), $(SRC_DIR))
# add common dir for pack
SRC_PACK_PATH += $(STANDALONE_DIR) \
$(STANDALONE_DIR)/make \
$(STANDALONE_DIR)/ \
$(STANDALONE_DIR)/lib \
$(PWD)
# filter src files if you do not need
SRC_PACK_FILES ?= $(foreach dir, $(SRC_PACK_PATH), $(wildcard $(dir)/*))
endif
pack:
$(foreach dir, $(SRC_PACK_PATH), if [ -d $(dir) ]; then sudo mkdir -p $(dir) $(dir:$(STANDALONE_DIR)/%=$(DST_PACK_PATH)/%);fi;)
$(foreach file, $(SRC_PACK_FILES), if [ -f $(file) ]; then sudo cp -f $(file) $(file:$(STANDALONE_DIR)/%=$(DST_PACK_PATH)/%);fi;)
$(shell sudo tar -zcvf $(TAR_PACK_PATH) $(DST_PACK_PATH))
@echo "*****************************"
@echo "source code from: " $(SRC_PACK_PATH)
@echo "*****************************"
@echo "source copy to: " $(DST_PACK_PATH)
@echo "*****************************"
@echo "pack source code as: " $(OUTPATH)/$(CONFIG_TARGET_NAME).tar.gz
#
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-06-02 11:03:35
# @LastEditTime: 2021-06-02 11:39:19
# @Description:  This files is for pack mini source code for building
#
# make pack OUTPATH=/mnt/d/6-2021
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
#
ifeq ($(MAKECMDGOALS),pack)
ifndef OUTPATH
$(error error, please type in 'make pack OUTPATH=<dir>'!!)
endif
DST_PACK_PATH ?= $(OUTPATH)/$(CONFIG_TARGET_NAME)
TAR_PACK_PATH ?= $(OUTPATH)/$(CONFIG_TARGET_NAME).tar.gz
# remove cur dir '.'
EXCL_PATH ?= .
SRC_PACK_PATH := $(filter-out $(EXCL_PATH), $(SRC_DIR))
# add common dir for pack
SRC_PACK_PATH += $(STANDALONE_DIR) \
$(STANDALONE_DIR)/make \
$(STANDALONE_DIR)/ \
$(STANDALONE_DIR)/lib \
$(PWD)
# filter src files if you do not need
SRC_PACK_FILES ?= $(foreach dir, $(SRC_PACK_PATH), $(wildcard $(dir)/*))
endif
pack:
$(foreach dir, $(SRC_PACK_PATH), if [ -d $(dir) ]; then sudo mkdir -p $(dir) $(dir:$(STANDALONE_DIR)/%=$(DST_PACK_PATH)/%);fi;)
$(foreach file, $(SRC_PACK_FILES), if [ -f $(file) ]; then sudo cp -f $(file) $(file:$(STANDALONE_DIR)/%=$(DST_PACK_PATH)/%);fi;)
$(shell sudo tar -zcvf $(TAR_PACK_PATH) $(DST_PACK_PATH))
@echo "*****************************"
@echo "source code from: " $(SRC_PACK_PATH)
@echo "*****************************"
@echo "source copy to: " $(DST_PACK_PATH)
@echo "*****************************"
@echo "pack source code as: " $(OUTPATH)/$(CONFIG_TARGET_NAME).tar.gz

30
scripts/kill_qemu_instance.sh

@ -1,16 +1,16 @@
###
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-05-24 14:38:37
# @LastEditTime: 2021-05-25 11:11:50
# @Description: This files is for
#
# @Modify History:
# Ver Who Date Changes
# ----- ------ -------- --------------------------------------
###
#!/bin/sh
###
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-05-24 14:38:37
# @LastEditTime: 2021-05-25 11:11:50
# @Description: This files is for
#
# @Modify History:
# Ver Who Date Changes
# ----- ------ -------- --------------------------------------
###
#!/bin/sh
ps -a | grep qemu-system-arm | awk '{print $1}' | xargs sudo kill -9

32
scripts/mount2vxbox.sh

@ -1,16 +1,16 @@
###
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-07-02 09:09:00
# @LastEditTime: 2021-07-02 10:55:10
# @Description:  This files is for virtual-box folder mount
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
###
#!/bin/sh
sudo mount -t vboxsf 6-2021 /mnt/6-2021
cd /mnt/6-2021
###
# @ : Copyright (c) 2021 Phytium Information Technology, Inc.
#
# SPDX-License-Identifier: Apache-2.0.
#
# @Date: 2021-07-02 09:09:00
# @LastEditTime: 2021-07-02 10:55:10
# @Description:  This files is for virtual-box folder mount
#
# @Modify History:
# Ver   Who        Date         Changes
# ----- ------     --------    --------------------------------------
###
#!/bin/sh
sudo mount -t vboxsf 6-2021 /mnt/6-2021
cd /mnt/6-2021

Loading…
Cancel
Save