zhugengyu
3 years ago
19 changed files with 809 additions and 809 deletions
@ -1,13 +1,13 @@ |
|||
### 该问题是怎么引起的? |
|||
|
|||
|
|||
|
|||
### 重现步骤 |
|||
|
|||
|
|||
|
|||
### 报错信息 |
|||
|
|||
|
|||
|
|||
|
|||
### 该问题是怎么引起的? |
|||
|
|||
|
|||
|
|||
### 重现步骤 |
|||
|
|||
|
|||
|
|||
### 报错信息 |
|||
|
|||
|
|||
|
|||
|
|||
|
@ -1,14 +1,14 @@ |
|||
### 相关的Issue |
|||
|
|||
|
|||
### 原因(目的、解决的问题等) |
|||
|
|||
|
|||
### 描述(做了什么,变更了什么) |
|||
|
|||
|
|||
### 测试用例(新增、改动、可能影响的功能) |
|||
|
|||
|
|||
|
|||
|
|||
### 相关的Issue |
|||
|
|||
|
|||
### 原因(目的、解决的问题等) |
|||
|
|||
|
|||
### 描述(做了什么,变更了什么) |
|||
|
|||
|
|||
### 测试用例(新增、改动、可能影响的功能) |
|||
|
|||
|
|||
|
|||
|
|||
|
@ -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 |
|||
} |
|||
] |
|||
} |
|||
] |
|||
} |
@ -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 |
|||
|
@ -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 |
|||
|
@ -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> |
@ -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 |
|||
|
|||
|
@ -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 |
|||
|
@ -1,4 +1,4 @@ |
|||
*.py[co] |
|||
build/ |
|||
*.egg-info/ |
|||
dist/ |
|||
*.py[co] |
|||
build/ |
|||
*.egg-info/ |
|||
dist/ |
|||
|
@ -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 |
|||
|
@ -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. |
|||
|
@ -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 |
|||
|
|||
|
@ -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 |
|||
|
@ -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 |
|||
|
|||
|
|||
|
|||
|
@ -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; |
@ -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) |
|||
|
@ -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 |
|||
|
@ -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 |
@ -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…
Reference in new issue