aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/gencfg/.externalToolBuilders/FMPP Builder (Linux).launch10
-rw-r--r--tools/gencfg/.externalToolBuilders/FMPP Builder (Windows).launch10
-rw-r--r--tools/gencfg/.project39
-rw-r--r--tools/gencfg/config.fmpp10
-rw-r--r--tools/gencfg/fmpp.sh7
-rw-r--r--tools/gencfg/lib/libcode.ftl316
-rw-r--r--tools/gencfg/lib/liblicense.ftl58
-rw-r--r--tools/gencfg/lib/libstm32f4xx.ftl144
-rw-r--r--tools/gencfg/lib/libutils.ftl109
-rw-r--r--tools/gencfg/processors/boards/stm32f4xx/config.fmpp5
-rw-r--r--tools/gencfg/processors/boards/stm32f4xx/templates/board.c.ftl139
-rw-r--r--tools/gencfg/processors/boards/stm32f4xx/templates/board.h.ftl327
-rw-r--r--tools/gencfg/processors/boards/stm32f4xx/templates/board.mk.ftl28
-rw-r--r--tools/gencfg/processors/hal/stm32f4xx/config.fmpp5
-rw-r--r--tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.c.ftl66
-rw-r--r--tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.h.ftl72
-rw-r--r--tools/gencfg/processors/processors.xml14
-rw-r--r--tools/gencfg/readme.txt14
-rw-r--r--tools/gencfg/run.bat1
-rw-r--r--tools/gencfg/schema/boards/abstract_board.xsd68
-rw-r--r--tools/gencfg/schema/boards/stm32f4xx_board.xsd89
-rw-r--r--tools/gencfg/schema/common/doc.xsd108
-rw-r--r--tools/gencfg/schema/common/stm32/stm32_gpiov2_port.xsd214
-rw-r--r--tools/gencfg/schema/hal/abstract_adc_cfg.xsd51
-rw-r--r--tools/gencfg/schema/hal/abstract_cfg.xsd344
-rw-r--r--tools/gencfg/schema/hal/abstract_driver_cfg.xsd12
-rw-r--r--tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_adc_cfg.xsd432
-rw-r--r--tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_cfg.xsd29
-rw-r--r--tools/gencfg/xml/stm32f0board.xml665
-rw-r--r--tools/gencfg/xml/stm32f4board.xml1190
-rw-r--r--tools/gencfg/xml/stm32f4xx_cfg.xml52
31 files changed, 0 insertions, 4628 deletions
diff --git a/tools/gencfg/.externalToolBuilders/FMPP Builder (Linux).launch b/tools/gencfg/.externalToolBuilders/FMPP Builder (Linux).launch
deleted file mode 100644
index 0a4fc898b..000000000
--- a/tools/gencfg/.externalToolBuilders/FMPP Builder (Linux).launch
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.ui.externaltools.ProgramBuilderLaunchConfigurationType">
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
-<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="/bin/bash"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="incremental,"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_TOOL_ARGUMENTS" value="fmpp.sh"/>
-<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${project_loc}"/>
-</launchConfiguration>
diff --git a/tools/gencfg/.externalToolBuilders/FMPP Builder (Windows).launch b/tools/gencfg/.externalToolBuilders/FMPP Builder (Windows).launch
deleted file mode 100644
index abf46ff08..000000000
--- a/tools/gencfg/.externalToolBuilders/FMPP Builder (Windows).launch
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<launchConfiguration type="org.eclipse.ui.externaltools.ProgramBuilderLaunchConfigurationType">
-<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${workspace}"/>
-<booleanAttribute key="org.eclipse.debug.ui.ATTR_LAUNCH_IN_BACKGROUND" value="false"/>
-<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_BUILDER_ENABLED" value="true"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_LOCATION" value="${project_loc}\run.bat"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_RUN_BUILD_KINDS" value="incremental,"/>
-<booleanAttribute key="org.eclipse.ui.externaltools.ATTR_TRIGGERS_CONFIGURED" value="true"/>
-<stringAttribute key="org.eclipse.ui.externaltools.ATTR_WORKING_DIRECTORY" value="${project_loc}"/>
-</launchConfiguration>
diff --git a/tools/gencfg/.project b/tools/gencfg/.project
deleted file mode 100644
index 9872c4eef..000000000
--- a/tools/gencfg/.project
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>_Configuration Tool</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
- <triggers>full,incremental,</triggers>
- <arguments>
- <dictionary>
- <key>LaunchConfigHandle</key>
- <value>&lt;project&gt;/.externalToolBuilders/FMPP Builder (Windows).launch</value>
- </dictionary>
- <dictionary>
- <key>incclean</key>
- <value>true</value>
- </dictionary>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
- <triggers>full,incremental,</triggers>
- <arguments>
- <dictionary>
- <key>LaunchConfigHandle</key>
- <value>&lt;project&gt;/.externalToolBuilders/FMPP Builder (Linux).launch</value>
- </dictionary>
- <dictionary>
- <key>incclean</key>
- <value>true</value>
- </dictionary>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- </natures>
-</projectDescription>
diff --git a/tools/gencfg/config.fmpp b/tools/gencfg/config.fmpp
deleted file mode 100644
index 0f34b0a03..000000000
--- a/tools/gencfg/config.fmpp
+++ /dev/null
@@ -1,10 +0,0 @@
-# Change the next line to point to the processor you want to use. Processors
-# are identified by a file named "config.fmpp" under the "processors" root
-# directory.
-inheritConfiguration: processors/boards/stm32f4xx/config.fmpp
-
-# Settings common to all processors. Do not change the following lines.
-freemarkerLinks: {
- lib: ./lib
-}
-logFile: ./log.fmpp
diff --git a/tools/gencfg/fmpp.sh b/tools/gencfg/fmpp.sh
deleted file mode 100644
index b98398702..000000000
--- a/tools/gencfg/fmpp.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/bash
-JAVA_HOME=/usr/lib/jvm/java-6-sun
-export JAVA_HOME
-PATH=$PATH:$JAVA_HOME/bin
-export PATH
-fmpp -C config.fmpp
-
diff --git a/tools/gencfg/lib/libcode.ftl b/tools/gencfg/lib/libcode.ftl
deleted file mode 100644
index 45b94a320..000000000
--- a/tools/gencfg/lib/libcode.ftl
+++ /dev/null
@@ -1,316 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-
-<#--
- -- Coding style global settings.
- -->
-[#assign indentation = " " /]
-[#assign fields_align = 24 /]
-[#assign define_value_align = 36 /]
-[#assign comments_align = 48 /]
-[#assign boundary = 80 /]
-
-[#--
- -- This macro generates a brief description in DoxyGen format.
- --]
-[#macro EmitDoxygenBrief object=[]]
- [#if object.brief[0]??]
-[@utils.FormatStringAsText " * @brief "
- " * "
- utils.WithDot(object.brief[0]?cap_first)
- boundary /]
- [/#if]
-[/#macro]
-
-[#--
- -- This macro generates a detailed description in DoxyGen format.
- --]
-[#macro EmitDoxygenDetails object=[]]
- [#if object.details[0]??]
-[@utils.FormatStringAsText " * @details "
- " * "
- utils.WithDot(object.details[0]?cap_first)
- boundary /]
- [/#if]
-[/#macro]
-
-[#--
- -- This macro generates a notes list in DoxyGen format.
- --]
-[#macro EmitDoxygenNotes object=[]]
- [#list object.* as note]
- [#if note?node_name == "note"]
- [@utils.FormatStringAsText " * @note "
- " * "
- utils.WithDot(note[0]?cap_first)
- boundary /]
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- This macro generates a pre-requisites list in DoxyGen format.
- --]
-[#macro EmitDoxygenPrerequisites object=[]]
- [#list object.* as pre]
- [#if pre?node_name == "pre"]
- [@utils.FormatStringAsText " * @pre "
- " * "
- utils.WithDot(pre[0]?cap_first)
- boundary /]
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- This macro generates a post-requisites list in DoxyGen format.
- --]
-[#macro EmitDoxygenPostrequisites object=[]]
- [#list object.* as post]
- [#if post?node_name == "post"]
- [@utils.FormatStringAsText " * @post "
- " * "
- utils.WithDot(post[0]?cap_first)
- boundary /]
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- This macro generates a complete Doxygen documentation comment.
- --]
-[#macro EmitDoxygenDocumentationComment object=[]]
-/**
- [@code.EmitDoxygenBrief object /]
- [@code.EmitDoxygenDetails object /]
- [@code.EmitDoxygenPrerequisites object /]
- [@code.EmitDoxygenPostrequisites object /]
- [@code.EmitDoxygenNotes object /]
- */
-[/#macro]
-
-[#--
- -- This macro generates the parameters description in DoxyGen format.
- --]
-[#macro EmitDoxygenParams params=[]]
- [#list params as param]
- [#local name = (param.@name[0]!"no-name")?trim /]
- [#local brief = (param.@brief[0]!"")?trim /]
- [#local dir = (param.@dir[0]!"boh")?trim?lower_case /]
- [#if dir == "in"]
-[@utils.FormatStringAsText " * @param[in] "
- " * "
- utils.IntelligentDot(name + " " + brief?uncap_first)
- boundary /]
- [#elseif dir == "out"]
-[@utils.FormatStringAsText " * @param[out] "
- " * "
- utils.IntelligentDot(name + " " + brief?uncap_first)
- boundary /]
- [#elseif dir == "both"]
-[@utils.FormatStringAsText " * @param[in,out] "
- " * "
- utils.IntelligentDot(name + " " + brief?uncap_first)
- boundary /]
- [#elseif dir == "boh"]
-[@utils.FormatStringAsText " * @param "
- " * "
- utils.IntelligentDot(name + " " + brief?uncap_first)
- boundary /]
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- This macro generates a return description followed by a retval list
- -- in DoxyGen format.
- --]
-[#macro EmitDoxygenReturn return=[]]
- [#if return[0]?? && ((return[0].@type[0]!"void")?trim != "void")]
- [#local brief = (return[0].@brief[0]!"")?trim /]
- [#if brief != ""]
-[@utils.FormatStringAsText " * @return "
- " * "
- utils.WithDot(brief?cap_first)
- boundary /]
- [/#if]
- [#list return[0].value as value]
- [#local label = (value.@name[0]!"no-val")?trim /]
- [#local brief = (value.@brief[0]!"")?trim /]
-[@utils.FormatStringAsText " * @retval "
- " * "
- utils.WithDot(label + " " + brief?uncap_first)
- boundary /]
- [/#list]
- [/#if]
-[/#macro]
-
-[#--
- -- This macro generates the inner function code (if present).
- --]
-[#macro EmitCode code=[]]
- [#if function.code[0]?? && (function.code[0]?trim != "")]
-${indentation}${function.code[0]?trim}
- [/#if]
-[/#macro]
-
-[#--
- -- Returns true if the module exports some functions.
- --]
-[#function HasPublicFunctions module=[]]
- [#local flag = false /]
- [#list module.function as function]
- [#if (function.@visibility[0]!"private") == "public"]
- [#local flag = true /]
- [/#if]
- [/#list]
- [#return flag /]
-[/#function]
-
-[#--
- -- Returns true if the module has static functions.
- --]
-[#function HasPrivateFunctions module=[]]
- [#local flag = false /]
- [#list module.function as function]
- [#if (function.@visibility[0]!"private") == "private"]
- [#local flag = true /]
- [/#if]
- [/#list]
- [#return flag /]
-[/#function]
-
-[#--
- -- This macro generates a function prototype from an XML "function"
- -- node passed as parameter.
- -- @note Does not generate the final EOL.
- --]
-[#macro GeneratePrototype function={}]
- [#if function.return?? && function.return[0]??]
- [#local rettype = (function.return[0].@type[0]!"void")?trim /]
- [#else]
- [#local rettype = "void" /]
- [/#if]
- [#local name = (function.@name[0]!"no-name")?trim /]
- [#local visibility = (function.@visibility[0]!"private")?trim /]
- [#if function.param?? && function.param[0]??]
- [#-- If the function has parameters then generates the parameters list --]
- [#local l1 = rettype + " " + name + "(" /]
- [#if visibility == "private"]
- [#local l1 = "static " + l1 /]
- [/#if]
- [#local ln = ""?right_pad(l1?length) /]
- [#list function.param as param]
- [#local type = (param.@type[0]!"no-type")?trim /]
- [#if type?contains("$")]
- [#local pstring = type?replace("$", (param.@name[0]!"no-name")?trim) /]
- [#else]
- [#local pstring = type + " " + (param.@name[0]!"no-name")?trim /]
- [/#if]
- [#local dir = (param.@dir[0]!"boh")?trim?lower_case /]
- [#if dir == "in"]
- [#local pstring = "const " + pstring /]
- [/#if]
- [#if param_index == 0]
- [#local line = l1 + pstring /]
- [#else]
- [#if (line + ", " + pstring + " ")?length > boundary]
-${line + ","}
- [#local line = ln + pstring /]
- [#else]
- [#local line = line + ", " + pstring /]
- [/#if]
- [/#if]
- [/#list]
-${line + ")"}[#rt]
- [#else]
-${rettype + " " + name}(void)[#rt]
- [/#if]
-[/#macro]
-
-[#--
- -- This macro generates a function (and its Doxygen documentation)
- -- from an XML "function" node passed as parameter.
- --]
-[#macro GenerateFunction function={}]
-/**
-[@EmitDoxygenBrief function.@brief /]
-[@EmitDoxygenDetails function.details /]
-[@EmitDoxygenParams function.param /]
-[@EmitDoxygenReturn function.return /]
- *
- * @note --Implementer notes here (or remove the tag)--
- * @bug --Known problems please here (or remove the tag)--
- * @todo --Implement this function (then remove the tag)--
- */
-[@GeneratePrototype function /] {
- [#if function.code[0]??]
- [#-- Makes sure to undef the do_code macro --]
- [#assign inline = "[#ftl][#macro do_code function][/#macro]"?interpret /]
-[@inline /]
- [#-- Interprets the code within the code element --]
- [#assign inline = function.code[0]?interpret /]
-[@inline /]
-[@do_code function /]
- [#else]
-
-${indentation}/* ${function.@name[0]!"no-name"}() Implementation here! */
- [/#if]
-}
-[/#macro]
-
-[#--
- -- Generates the implementations for the private functions in the specified
- -- module.
- --]
-[#macro GeneratePrivateFunctionsImplementations module]
- [#list module.function as function]
- [#if (function.@visibility[0]!"private") == "private"]
-[@code.GenerateFunction function /]
-
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- Generates the prototypes of the public functions in the specified
- -- module.
- --]
-[#macro GeneratePublicFunctionsPrototypes indentation module]
- [#list module.function as function]
- [#if (function.@visibility[0]!"private")?trim == "public"]
-${indentation}[@code.GeneratePrototype function /];
- [/#if]
- [/#list]
-[/#macro]
-
-[#--
- -- Generates the implementations for the public functions in the specified
- -- module.
- --]
-[#macro GeneratePublicFunctionsImplementations module]
- [#list module.function as function]
- [#if (function.@visibility[0]!"private") == "public"]
-[@code.GenerateFunction function /]
-
- [/#if]
- [/#list]
-[/#macro]
diff --git a/tools/gencfg/lib/liblicense.ftl b/tools/gencfg/lib/liblicense.ftl
deleted file mode 100644
index 18581ee29..000000000
--- a/tools/gencfg/lib/liblicense.ftl
+++ /dev/null
@@ -1,58 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-
-[#--
- -- Emits the ChibiOS/RT standard license exception text.
- -- The license exception text is indented by 4 spaces.
- --]
-[#macro EmitLicenseExceptionAsText]
-
- ---
-
- A special exception to the GPL can be applied should you wish to distribute
- a combined work that includes ChibiOS/RT, without being obliged to provide
- the source code for any proprietary components. See the file exception.txt
- for full details of how and when the exception can be applied.
-[/#macro]
-
-[#--
- -- Emits the ChibiOS/RT standard license text.
- -- The license text is indented by 4 spaces.
- --]
-[#macro EmitLicenseAsText]
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-[/#macro]
diff --git a/tools/gencfg/lib/libstm32f4xx.ftl b/tools/gencfg/lib/libstm32f4xx.ftl
deleted file mode 100644
index 81b8f987c..000000000
--- a/tools/gencfg/lib/libstm32f4xx.ftl
+++ /dev/null
@@ -1,144 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-
-[#--
- -- Emits the STM32F4xx ADC driver constant configuration structures.
- --]
-[#macro EmitADCConfig config]
- [#local cfg_name = config.name[0]?string /]
- [@code.EmitDoxygenDocumentationComment config /]
-const ADCConfig ${cfg_name} = {0};
-
- [#list config.groups.group as group]
- [#local grpcfg_name = group.name[0]?string /]
- [@code.EmitDoxygenDocumentationComment group /]
-const ADCGroupConfig ${grpcfg_name} = {
- /* Circular conversion flag.*/
- ${group.circular[0]?string?upper_case},
- /* Number of channels sampled in the conversion group.*/
- ${group.channels_sequence.channel?size},
- /* End of conversion callback or NULL.*/
- [#if group.conv_callback[0]?string?trim == ""]
- NULL,
- [#else]
- ${group.conv_callback[0]?string?trim},
- [/#if]
- /* Error callback or NULL.*/
- [#if group.error_callback[0]?string?trim == ""]
- NULL,
- [#else]
- ${group.error_callback[0]?string?trim},
- [/#if]
- /* CR1 register initialization value.*/
- [#local resolution = group.resolution[0]?word_list[0]?number /]
- [#local cr1 = "ADC_CR1_RESOLUTION_N(" + resolution?string + ")" /]
- [#local disc = group.discontinuous[0]?word_list[0]?number /]
- [#if disc > 0]
- [#local cr1 = cr1 + " | ADC_CR1_DISCEN" /]
- [#local cr1 = cr1 + " | ADC_CR1_DISCNUM_N(" + (disc - 1)?string + ")" /]
- [/#if]
- ${cr1},
- /* CR2 register initialization value.*/
- [#local exten = group.trigger_mode[0]?word_list[0]?number /]
- [#local cr2 = "ADC_CR1_EXTEN_N(" + exten?string + ")" /]
- [#local extsel = group.trigger_source[0]?word_list[0]?number /]
- [#local cr2 = cr2 + " | ADC_CR1_EXSEL_N(" + extsel?string + ")" /]
- [#if group.alignment[0]?word_list[0]?number != 0]
- [#local cr2 = cr2 + " | ADC_CR2_ALIGN" /]
- [/#if]
- ${cr2},
- /* Channels sample time settings.*/
- [#local smpr1 = "" /]
- [#local smpr2 = "" /]
- [#list group.sample_time.* as input]
- [#local sinput = input?node_name]
- [#if input_index < 9]
- [#local smpr2 = smpr2 + "ADC_SMPR2_SMP_" + input?node_name +
- "(" + input?string + ") | " /]
- [#elseif input_index == 9]
- [#local smpr2 = smpr2 + "ADC_SMPR2_SMP_" + input?node_name +
- "(" + input?string + ")," /]
- [#elseif input_index < 18]
- [#local smpr1 = smpr1 + "ADC_SMPR1_SMP_" + input?node_name +
- "(" + input?string + ") | " /]
- [#else]
- [#local smpr1 = smpr1 + "ADC_SMPR1_SMP_" + input?node_name +
- "(" + input?string + ")," /]
- [/#if]
- [/#list]
- [@utils.FormatStringAsText " " " " smpr1 80 /]
- [@utils.FormatStringAsText " " " " smpr2 80 /]
- /* Channels sequence.*/
- [#local sqr1 = "ADC_SQR1_NUM_CH(" + group.channels_sequence?size + ")" /]
- [#local sqr2 = "" /]
- [#local sqr3 = "" /]
- [#list group.channels_sequence.channel as channel]
- [#if channel_index <= 5]
- [#local sqr3 = sqr3 + "ADC_SQR3_SQ" + (channel_index + 1) +
- "_N(" + channel + ")" /]
- [#if channel_has_next && channel_index < 5]
- [#local sqr3 = sqr3 + " | " /]
- [/#if]
- [#elseif channel_index <= 11]
- [#local sqr2 = sqr2 + "ADC_SQR2_SQ" + (channel_index + 1) +
- "_N(" + channel + ")" /]
- [#if channel_has_next && channel_index < 11]
- [#local sqr2 = sqr2 + " | " /]
- [/#if]
- [#else]
- [#local sqr1 = sqr1 + " | ADC_SQR2_SQ" + (channel_index + 1) +
- "_N(" + channel + ")" /]
- [/#if]
- [/#list]
- [#-- SQR2 could be empty.--]
- [#if sqr2 == ""]
- [#local sqr2 = "0" /]
- [/#if]
- [#local sqr1 = sqr1 + "," /]
- [#local sqr2 = sqr2 + "," /]
- [@utils.FormatStringAsText " " " " sqr1 80 /]
- [@utils.FormatStringAsText " " " " sqr2 80 /]
- [@utils.FormatStringAsText " " " " sqr3 80 /]
-};
- [/#list]
-[/#macro]
-
-[#--
- -- Emits the STM32F4xx ADC driver configuration external declarations.
- --]
-[#macro EmitADCConfigExtern config]
- [#local cfg_name = config.name[0]?string /]
- [#list config.groups.group as group]
- [#local grpcfg_name = group.name[0]?string /]
- [#-- Only emits the comment if there is at least a callback defined.--]
- /* ADC configuration "${cfg_name}".*/
- extern const ADCConfig ${cfg_name};
- /* ADC conversion group "${grpcfg_name}".*/
- extern const ADCGroupConfig ${grpcfg_name};
- [#if group.conv_callback[0]?string?trim != ""]
- void ${group.conv_callback[0]?string?trim}(ADCDriver *, adcsample_t *, size_t);
- [/#if]
- [#if group.error_callback[0]?string?trim != ""]
- void ${group.error_callback[0]?string?trim}(ADCDriver *, adcerror_t);
- [/#if]
-
- [/#list]
-[/#macro]
diff --git a/tools/gencfg/lib/libutils.ftl b/tools/gencfg/lib/libutils.ftl
deleted file mode 100644
index 03b0622a3..000000000
--- a/tools/gencfg/lib/libutils.ftl
+++ /dev/null
@@ -1,109 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-
-[#--
- -- Returns the trimmed text "s" making sure it is terminated by a dot.
- -- The empty string is always returned as an empty string, the dot is not
- -- added.
- --]
-[#function WithDot s]
- [#local s = s?trim /]
- [#if s == ""]
- [#return s /]
- [/#if]
- [#if s?ends_with(".")]
- [#return s /]
- [/#if]
- [#return s + "." /]
-[/#function]
-
-[#--
- -- Returns the trimmed text "s" making sure it is not terminated by a dot.
- --]
-[#function WithoutDot s]
- [#local s = s?trim /]
- [#if s?ends_with(".")]
- [#return s?substring(0, s?length - 2) /]
- [/#if]
- [#return s /]
-[/#function]
-
-[#--
- -- Returns the trimmed text "s" making sure it is terminated by a dot if the
- -- text is composed of multiple phrases, if the text is composed of a single
- -- phrase then makes sure it is *not* terminated by a dot.
- -- A phrase is recognized by the pattern ". " into the text.
- -- The empty string is always returned as an empty string, the dot is never
- -- added.
- --]
-[#function IntelligentDot s]
- [#local s = s?trim /]
- [#if s?contains(". ")]
- [#return WithDot(s) /]
- [/#if]
- [#return WithoutDot(s) /]
-[/#function]
-
-[#--
- -- Formats a text string in a sequence of strings no longer than "len" (first
- -- line) or "lenn" (subsequent lines).
- -- White spaces are normalized between words, sequences of white spaces become
- -- a single space.
- --]
-[#function StringToText len1 lenn s]
- [#local words=s?word_list /]
- [#local line="" /]
- [#local lines=[] /]
- [#list words as word]
- [#if lines?size == 0]
- [#local len = len1 /]
- [#else]
- [#local len = lenn /]
- [/#if]
- [#if (line?length + word?length + 1 > len)]
- [#local lines = lines + [line?trim] /]
- [#local line = word + " " /]
- [#else]
- [#local line = line + word + " " /]
- [/#if]
- [/#list]
- [#if line != ""]
- [#local lines = lines + [line?trim] /]
- [/#if]
- [#return lines /]
-[/#function]
-
-[#--
- -- Emits a string "s" as a formatted text, the first line is prefixed by the
- -- "p1" parameter, subsequent lines are prefixed by the "pn" paramenter.
- -- Emitted lines are no longer than the "len" parameter.
- -- White spaces are normalized between words.
- --]
-[#macro FormatStringAsText p1 pn s len]
- [#local lines = StringToText(len - p1?length, len - pn?length, s) /]
- [#list lines as line]
- [#if line_index == 0]
-${p1}${line}
- [#else]
-${pn}${line}
- [/#if]
- [/#list]
-[/#macro]
diff --git a/tools/gencfg/processors/boards/stm32f4xx/config.fmpp b/tools/gencfg/processors/boards/stm32f4xx/config.fmpp
deleted file mode 100644
index 970d936ca..000000000
--- a/tools/gencfg/processors/boards/stm32f4xx/config.fmpp
+++ /dev/null
@@ -1,5 +0,0 @@
-sourceRoot: templates
-outputRoot: output
-data: {
- doc1: xml(../input/stm32f4board.xml)
-}
diff --git a/tools/gencfg/processors/boards/stm32f4xx/templates/board.c.ftl b/tools/gencfg/processors/boards/stm32f4xx/templates/board.c.ftl
deleted file mode 100644
index f38fd106a..000000000
--- a/tools/gencfg/processors/boards/stm32f4xx/templates/board.c.ftl
+++ /dev/null
@@ -1,139 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-[@pp.dropOutputFile /]
-[#import "/@lib/libutils.ftl" as utils /]
-[#import "/@lib/liblicense.ftl" as license /]
-[@pp.changeOutputFile name="board.c" /]
-/*
-[@license.EmitLicenseAsText /]
-*/
-
-#include "ch.h"
-#include "hal.h"
-
-#if HAL_USE_PAL || defined(__DOXYGEN__)
-/**
- * @brief PAL setup.
- * @details Digital I/O ports static configuration as defined in @p board.h.
- * This variable is used by the HAL when initializing the PAL driver.
- */
-const PALConfig pal_default_config =
-{
- {VAL_GPIOA_MODER, VAL_GPIOA_OTYPER, VAL_GPIOA_OSPEEDR, VAL_GPIOA_PUPDR,
- VAL_GPIOA_ODR, VAL_GPIOA_AFRL, VAL_GPIOA_AFRH},
- {VAL_GPIOB_MODER, VAL_GPIOB_OTYPER, VAL_GPIOB_OSPEEDR, VAL_GPIOB_PUPDR,
- VAL_GPIOB_ODR, VAL_GPIOB_AFRL, VAL_GPIOB_AFRH},
- {VAL_GPIOC_MODER, VAL_GPIOC_OTYPER, VAL_GPIOC_OSPEEDR, VAL_GPIOC_PUPDR,
- VAL_GPIOC_ODR, VAL_GPIOC_AFRL, VAL_GPIOC_AFRH},
- {VAL_GPIOD_MODER, VAL_GPIOD_OTYPER, VAL_GPIOD_OSPEEDR, VAL_GPIOD_PUPDR,
- VAL_GPIOD_ODR, VAL_GPIOD_AFRL, VAL_GPIOD_AFRH},
- {VAL_GPIOE_MODER, VAL_GPIOE_OTYPER, VAL_GPIOE_OSPEEDR, VAL_GPIOE_PUPDR,
- VAL_GPIOE_ODR, VAL_GPIOE_AFRL, VAL_GPIOE_AFRH},
- {VAL_GPIOF_MODER, VAL_GPIOF_OTYPER, VAL_GPIOF_OSPEEDR, VAL_GPIOF_PUPDR,
- VAL_GPIOF_ODR, VAL_GPIOF_AFRL, VAL_GPIOF_AFRH},
- {VAL_GPIOG_MODER, VAL_GPIOG_OTYPER, VAL_GPIOG_OSPEEDR, VAL_GPIOG_PUPDR,
- VAL_GPIOG_ODR, VAL_GPIOG_AFRL, VAL_GPIOG_AFRH},
- {VAL_GPIOH_MODER, VAL_GPIOH_OTYPER, VAL_GPIOH_OSPEEDR, VAL_GPIOH_PUPDR,
- VAL_GPIOH_ODR, VAL_GPIOH_AFRL, VAL_GPIOH_AFRH},
- {VAL_GPIOI_MODER, VAL_GPIOI_OTYPER, VAL_GPIOI_OSPEEDR, VAL_GPIOI_PUPDR,
- VAL_GPIOI_ODR, VAL_GPIOI_AFRL, VAL_GPIOI_AFRH}
-};
-#endif
-
-/**
- * @brief Early initialization code.
- * @details This initialization must be performed just after stack setup
- * and before any other initialization.
- */
-void __early_init(void) {
-
- stm32_clock_init();
-[#if doc1.board.board_functions.__early_init[0]??]
- ${doc1.board.board_functions.__early_init[0]}
-[/#if]
-}
-
-#if HAL_USE_SDC || defined(__DOXYGEN__)
-/**
- * @brief SDC card detection.
- */
-bool_t sdc_lld_is_card_inserted(SDCDriver *sdcp) {
-[#if doc1.board.board_functions.sdc_lld_is_card_inserted[0]??]
-${doc1.board.board_functions.sdc_lld_is_card_inserted[0]}
-[#else]
-
- (void)sdcp;
- /* TODO: Fill the implementation.*/
- return TRUE;
-[/#if]
-}
-
-/**
- * @brief SDC card write protection detection.
- */
-bool_t sdc_lld_is_write_protected(SDCDriver *sdcp) {
-[#if doc1.board.board_functions.sdc_lld_is_write_protected[0]??]
-${doc1.board.board_functions.sdc_lld_is_write_protected[0]}
-[#else]
-
- (void)sdcp;
- /* TODO: Fill the implementation.*/
- return FALSE;
-[/#if]
-}
-#endif /* HAL_USE_SDC */
-
-#if HAL_USE_MMC_SPI || defined(__DOXYGEN__)
-/**
- * @brief MMC_SPI card detection.
- */
-bool_t mmc_lld_is_card_inserted(MMCDriver *mmcp) {
-[#if doc1.board.board_functions.mmc_lld_is_card_inserted[0]??]
-${doc1.board.board_functions.mmc_lld_is_card_inserted[0]}
-[#else]
-
- (void)mmcp;
- /* TODO: Fill the implementation.*/
- return TRUE;
-[/#if]
-}
-
-/**
- * @brief MMC_SPI card write protection detection.
- */
-bool_t mmc_lld_is_write_protected(MMCDriver *mmcp) {
-[#if doc1.board.board_functions.mmc_lld_is_write_protected[0]??]
-${doc1.board.board_functions.mmc_lld_is_write_protected[0]}
-[#else]
-
- (void)mmcp;
- /* TODO: Fill the implementation.*/
- return FALSE;
-[/#if]
-}
-#endif
-
-/**
- * @brief Board-specific initialization code.
- * @todo Add your board-specific code, if any.
- */
-void boardInit(void) {
-}
diff --git a/tools/gencfg/processors/boards/stm32f4xx/templates/board.h.ftl b/tools/gencfg/processors/boards/stm32f4xx/templates/board.h.ftl
deleted file mode 100644
index c24c0a355..000000000
--- a/tools/gencfg/processors/boards/stm32f4xx/templates/board.h.ftl
+++ /dev/null
@@ -1,327 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-[@pp.dropOutputFile /]
-[#import "/@lib/libutils.ftl" as utils /]
-[#import "/@lib/liblicense.ftl" as license /]
-[@pp.changeOutputFile name="board.h" /]
-/*
-[@license.EmitLicenseAsText /]
-*/
-
-#ifndef _BOARD_H_
-#define _BOARD_H_
-
-/*
- * Setup for ${doc1.board.board_name[0]} board.
- */
-
-/*
- * Board identifier.
- */
-#define BOARD_${doc1.board.board_id[0]}
-#define BOARD_NAME "${doc1.board.board_name[0]}"
-
-[#if doc1.board.ethernet_phy[0]??]
-/*
- * Ethernet PHY type.
- */
-#define BOARD_PHY_ID ${doc1.board.ethernet_phy.identifier[0]}
-[#if doc1.board.ethernet_phy.bus_type[0]?string == "RMII"]
-#define BOARD_PHY_RMII
-[/#if]
-[/#if]
-
-/*
- * Board oscillators-related settings.
-[#if doc1.board.clocks.@LSEFrequency[0]?number == 0]
- * NOTE: LSE not fitted.
-[/#if]
-[#if doc1.board.clocks.@HSEFrequency[0]?number == 0]
- * NOTE: HSE not fitted.
-[/#if]
- */
-#if !defined(STM32_LSECLK)
-#define STM32_LSECLK ${doc1.board.clocks.@LSEFrequency[0]}
-#endif
-
-#if !defined(STM32_HSECLK)
-#define STM32_HSECLK ${doc1.board.clocks.@HSEFrequency[0]}
-#endif
-
-[#if doc1.board.clocks.@HSEBypass[0]?string == "true"]
-#define STM32_HSE_BYPASS
-[/#if]
-
-/*
- * Board voltages.
- * Required for performance limits calculation.
- */
-#define STM32_VDD ${doc1.board.clocks.@VDD[0]}
-
-/*
- * MCU type as defined in the ST header file stm32f4xx.h.
- */
-#define STM32F4XX
-
-/*
- * IO pins assignments.
- */
-[#list doc1.board.ports.* as port]
- [#assign port_name = port?node_name?upper_case /]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
-#define ${(port_name + "_" + name)?right_pad(27, " ")} ${pin_index?string}
- [/#list]
-
-[/#list]
-/*
- * I/O ports initial setup, this configuration is established soon after reset
- * in the initialization code.
- * Please refer to the STM32 Reference Manual for details.
- */
-#define PIN_MODE_INPUT(n) (0U << ((n) * 2))
-#define PIN_MODE_OUTPUT(n) (1U << ((n) * 2))
-#define PIN_MODE_ALTERNATE(n) (2U << ((n) * 2))
-#define PIN_MODE_ANALOG(n) (3U << ((n) * 2))
-#define PIN_ODR_LOW(n) (0U << (n))
-#define PIN_ODR_HIGH(n) (1U << (n))
-#define PIN_OTYPE_PUSHPULL(n) (0U << (n))
-#define PIN_OTYPE_OPENDRAIN(n) (1U << (n))
-#define PIN_OSPEED_2M(n) (0U << ((n) * 2))
-#define PIN_OSPEED_25M(n) (1U << ((n) * 2))
-#define PIN_OSPEED_50M(n) (2U << ((n) * 2))
-#define PIN_OSPEED_100M(n) (3U << ((n) * 2))
-#define PIN_PUPDR_FLOATING(n) (0U << ((n) * 2))
-#define PIN_PUPDR_PULLUP(n) (1U << ((n) * 2))
-#define PIN_PUPDR_PULLDOWN(n) (2U << ((n) * 2))
-#define PIN_AFIO_AF(n, v) ((v##U) << ((n % 8) * 4))
-
-[#list doc1.board.ports.* as port]
- [#assign port_name = port?node_name?upper_case /]
-/*
- * ${port_name} setup:
- *
- [#-- Generating pin descriptions inside the comment.--]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign mode = pin.@Mode[0] /]
- [#assign type = pin.@Type[0] /]
- [#assign resistor = pin.@Resistor[0] /]
- [#assign speed = pin.@Speed[0] /]
- [#assign alternate = pin.@Alternate[0] /]
- [#if mode == "Input"]
- [#assign desc = mode + " " + resistor /]
- [#elseif mode == "Output"]
- [#assign desc = mode + " " + type + " " + speed /]
- [#elseif mode == "Alternate"]
- [#assign desc = mode + " " + alternate /]
- [#else]
- [#assign desc = "Analog" /]
- [/#if]
- * P${(port?node_name[4..] + pin_index?string)?right_pad(3, " ")} - ${name?right_pad(26, " ")}(${desc?lower_case}).
- [/#list]
- */
- [#--
- -- Generating MODER register value.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign mode = pin.@Mode[0] /]
- [#if mode == "Input"]
- [#assign out = "PIN_MODE_INPUT(" + port_name + "_" + name + ")" /]
- [#elseif mode == "Output"]
- [#assign out = "PIN_MODE_OUTPUT(" + port_name + "_" + name + ")" /]
- [#elseif mode == "Alternate"]
- [#assign out = "PIN_MODE_ALTERNATE(" + port_name + "_" + name + ")" /]
- [#else]
- [#assign out = "PIN_MODE_ANALOG(" + port_name + "_" + name + ")" /]
- [/#if]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_MODER (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if pin_index < 15]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [#else]
-${line + ")"}
- [/#if]
- [/#list]
- [#--
- -- Generating OTYPER register value.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign type = pin.@Type[0] /]
- [#if type == "PushPull"]
- [#assign out = "PIN_OTYPE_PUSHPULL(" + port_name + "_" + name + ")" /]
- [#else]
- [#assign out = "PIN_OTYPE_OPENDRAIN(" + port_name + "_" + name + ")" /]
- [/#if]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_OTYPER (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if pin_index < 15]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [#else]
-${line + ")"}
- [/#if]
- [/#list]
- [#--
- -- Generating SPEEDR register value.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign speed = pin.@Speed[0] /]
- [#if speed == "Minimum"]
- [#assign out = "PIN_OSPEED_2M(" + port_name + "_" + name + ")" /]
- [#elseif speed == "Low"]
- [#assign out = "PIN_OSPEED_25M(" + port_name + "_" + name + ")" /]
- [#elseif speed == "High"]
- [#assign out = "PIN_OSPEED_50M(" + port_name + "_" + name + ")" /]
- [#else]
- [#assign out = "PIN_OSPEED_100M(" + port_name + "_" + name + ")" /]
- [/#if]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_OSPEEDR (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if pin_index < 15]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [#else]
-${line + ")"}
- [/#if]
- [/#list]
- [#--
- -- Generating PUPDR register value.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign resistor = pin.@Resistor[0] /]
- [#if resistor == "Floating"]
- [#assign out = "PIN_PUPDR_FLOATING(" + port_name + "_" + name + ")" /]
- [#elseif resistor == "PullUp"]
- [#assign out = "PIN_PUPDR_PULLUP(" + port_name + "_" + name + ")" /]
- [#else]
- [#assign out = "PIN_PUPDR_PULLDOWN(" + port_name + "_" + name + ")" /]
- [/#if]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_PUPDR (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if pin_index < 15]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [#else]
-${line + ")"}
- [/#if]
- [/#list]
- [#--
- -- Generating ODR register value.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign level = pin.@Level[0] /]
- [#if level == "Low"]
- [#assign out = "PIN_ODR_LOW(" + port_name + "_" + name + ")" /]
- [#else]
- [#assign out = "PIN_ODR_HIGH(" + port_name + "_" + name + ")" /]
- [/#if]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_ODR (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if pin_index < 15]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [#else]
-${line + ")"}
- [/#if]
- [/#list]
- [#--
- -- Generating AFRx registers values.
- --]
- [#list port.* as pin]
- [#assign pin_name = pin?node_name?upper_case /]
- [#assign name = pin.@ID[0]?string?trim /]
- [#if name?length == 0]
- [#assign name = pin_name /]
- [/#if]
- [#assign alternate = pin.@Alternate[0]?trim /]
- [#assign out = "PIN_AFIO_AF(" + port_name + "_" + name + ", " + alternate + ")" /]
- [#if pin_index == 0]
- [#assign line = "#define VAL_" + port_name + "_AFRL (" + out /]
- [#elseif pin_index == 8]
- [#assign line = "#define VAL_" + port_name + "_AFRH (" + out /]
- [#else]
- [#assign line = " " + out /]
- [/#if]
- [#if (pin_index == 7) || (pin_index == 15)]
-${line + ")"}
- [#else]
-${(line + " |")?right_pad(76, " ") + "\\"}
- [/#if]
- [/#list]
-
-[/#list]
-
-#if !defined(_FROM_ASM_)
-#ifdef __cplusplus
-extern "C" {
-#endif
- void boardInit(void);
-#ifdef __cplusplus
-}
-#endif
-#endif /* _FROM_ASM_ */
-
-#endif /* _BOARD_H_ */
diff --git a/tools/gencfg/processors/boards/stm32f4xx/templates/board.mk.ftl b/tools/gencfg/processors/boards/stm32f4xx/templates/board.mk.ftl
deleted file mode 100644
index c88471ac3..000000000
--- a/tools/gencfg/processors/boards/stm32f4xx/templates/board.mk.ftl
+++ /dev/null
@@ -1,28 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-[@pp.dropOutputFile /]
-[#import "/@lib/libutils.ftl" as utils /]
-[@pp.changeOutputFile name="board.mk" /]
-# List of all the board related files.
-BOARDSRC = ${'$'}{CHIBIOS}/boards/${doc1.board.board_id[0]}/board.c
-
-# Required include directories
-BOARDINC = ${'$'}{CHIBIOS}/boards/${doc1.board.board_id[0]}
diff --git a/tools/gencfg/processors/hal/stm32f4xx/config.fmpp b/tools/gencfg/processors/hal/stm32f4xx/config.fmpp
deleted file mode 100644
index 307a6f61c..000000000
--- a/tools/gencfg/processors/hal/stm32f4xx/config.fmpp
+++ /dev/null
@@ -1,5 +0,0 @@
-sourceRoot: templates
-outputRoot: output
-data: {
- doc1: xml(../input/stm32f4xx_cfg.xml)
-}
diff --git a/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.c.ftl b/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.c.ftl
deleted file mode 100644
index eeea09d99..000000000
--- a/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.c.ftl
+++ /dev/null
@@ -1,66 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-[@pp.dropOutputFile /]
-[#import "/@lib/libutils.ftl" as utils /]
-[#import "/@lib/liblicense.ftl" as license /]
-[#import "/@lib/libcode.ftl" as code /]
-[#import "/@lib/libstm32f4xx.ftl" as stm32f4xx /]
-[#assign fname = doc1.configuration.name[0] /]
-[@pp.changeOutputFile name = fname + ".c" /]
-/*
-[@license.EmitLicenseAsText /]
-*/
-
-#include "ch.h"
-#include "hal.h"
-
-#include "${fname + ".h"}"
-
-/*===========================================================================*/
-/* Module local definitions. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module exported variables. */
-/*===========================================================================*/
-
-[#list doc1.configuration.configs.* as config]
- [#assign config_type = config?node_name /]
- [#if config_type == "adc_config"]
- [@stm32f4xx.EmitADCConfig config /]
- [/#if]
-
-[/#list]
-/*===========================================================================*/
-/* Module local variables. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module local functions. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module interrupt handlers. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module exported functions. */
-/*===========================================================================*/
diff --git a/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.h.ftl b/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.h.ftl
deleted file mode 100644
index 47ea70f7c..000000000
--- a/tools/gencfg/processors/hal/stm32f4xx/templates/hal_cfg.h.ftl
+++ /dev/null
@@ -1,72 +0,0 @@
-[#ftl]
-[#--
- ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
- 2011,2012 Giovanni Di Sirio.
-
- This file is part of ChibiOS/RT.
-
- ChibiOS/RT is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- ChibiOS/RT is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
- --]
-[@pp.dropOutputFile /]
-[#import "/@lib/libutils.ftl" as utils /]
-[#import "/@lib/liblicense.ftl" as license /]
-[#import "/@lib/libcode.ftl" as code /]
-[#import "/@lib/libstm32f4xx.ftl" as stm32f4xx /]
-[#assign fname = doc1.configuration.name[0] /]
-[@pp.changeOutputFile name = fname + ".h" /]
-/*
-[@license.EmitLicenseAsText /]
-*/
-
-#ifndef _${fname?upper_case}_H_
-#define _${fname?upper_case}_H_
-
-/*===========================================================================*/
-/* Module constants. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module pre-compile time settings. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Derived constants and error checks. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module data structures and types. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* Module macros. */
-/*===========================================================================*/
-
-/*===========================================================================*/
-/* External declarations. */
-/*===========================================================================*/
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-[#list doc1.configuration.configs.* as config]
- [#assign config_type = config?node_name /]
- [#if config_type == "adc_config"]
- [@stm32f4xx.EmitADCConfigExtern config /]
- [/#if]
-[/#list]
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _${fname?upper_case}_H_ */
diff --git a/tools/gencfg/processors/processors.xml b/tools/gencfg/processors/processors.xml
deleted file mode 100644
index cac95cc23..000000000
--- a/tools/gencfg/processors/processors.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<processors>
- <processor>
- <name>STM32F4xx Board Configuration</name>
- <path>resources/gencfg/processors/boards/stm32f4xx/templates</path>
- <default>resources/gencfg/xml/stm32f4board.xml</default>
- <basefilename>board</basefilename>
- </processor>
- <processor>
- <name>STM32F0xx Board Configuration</name>
- <path>resources/gencfg/processors/boards/stm32f0xx/templates</path>
- <default>resources/gencfg/xml/stm32f0board.xml</default>
- <basefilename>board</basefilename>
- </processor>
-</processors>
diff --git a/tools/gencfg/readme.txt b/tools/gencfg/readme.txt
deleted file mode 100644
index 5b2b58ba4..000000000
--- a/tools/gencfg/readme.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-*****************************************************************************
-*** Files Organization ***
-*****************************************************************************
-
---{root} - Configuration Generator tool.
- +--readme.txt - This file.
- +--config.fmpp - Tool configuration file, tool setup is done here.
- +--run.bat - Tool runner batch file.
- +--lib/ - FTL library files.
- +--processors/ - Various configuration generators.
- +--schema/ - Schema files used to validate XML configurations.
- +--xml/ - Templates of configuration files.
-
-Write requirements and setup documentation here.
diff --git a/tools/gencfg/run.bat b/tools/gencfg/run.bat
deleted file mode 100644
index 460783f39..000000000
--- a/tools/gencfg/run.bat
+++ /dev/null
@@ -1 +0,0 @@
-fmpp -C config.fmpp
diff --git a/tools/gencfg/schema/boards/abstract_board.xsd b/tools/gencfg/schema/boards/abstract_board.xsd
deleted file mode 100644
index c4c953240..000000000
--- a/tools/gencfg/schema/boards/abstract_board.xsd
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../common/doc.xsd" />
-
- <xs:complexType name="AbstractBoardType" abstract="true">
- <xs:sequence>
- <xs:element name="board_name" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="board_id" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="\w[\w\d_]*"></xs:pattern>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="board_functions" maxOccurs="1" minOccurs="1">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="__early_init" type="xs:string" maxOccurs="1" minOccurs="0"></xs:element>
- <xs:element name="boardInit" type="xs:string" maxOccurs="1" minOccurs="0">
- </xs:element>
- <xs:element name="sdc_lld_is_card_inserted" type="xs:string" maxOccurs="1" minOccurs="0">
- </xs:element>
- <xs:element name="sdc_lld_is_write_protected" type="xs:string" maxOccurs="1" minOccurs="0">
- </xs:element>
- <xs:element name="mmc_lld_is_card_inserted" type="xs:string" maxOccurs="1" minOccurs="0">
- </xs:element>
- <xs:element name="mmc_lld_is_write_protected" type="xs:string" maxOccurs="1" minOccurs="0">
- </xs:element>
- </xs:sequence>
- </xs:complexType></xs:element>
- <xs:element name="ethernet_phy" type="EthernetPHYType"
- maxOccurs="1" minOccurs="0">
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="EthernetPHYType">
- <xs:sequence>
- <xs:element name="identifier" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- <xs:pattern value="MII_[\w\d_]+"></xs:pattern>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="bus_type" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- <xs:enumeration value="RMII"></xs:enumeration>
- <xs:enumeration value="MII"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
-</xs:schema>
diff --git a/tools/gencfg/schema/boards/stm32f4xx_board.xsd b/tools/gencfg/schema/boards/stm32f4xx_board.xsd
deleted file mode 100644
index ace3b5acb..000000000
--- a/tools/gencfg/schema/boards/stm32f4xx_board.xsd
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../common/doc.xsd" />
- <xs:include schemaLocation="../common/stm32/stm32_gpiov2_port.xsd" />
- <xs:include schemaLocation="abstract_board.xsd" />
-
- <xs:complexType name="STM32F4xxBoardType">
- <xs:complexContent>
- <xs:extension base="AbstractBoardType">
- <xs:sequence>
- <xs:element name="clocks" maxOccurs="1" minOccurs="1">
- <xs:complexType>
- <xs:attribute name="HSEBypass" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- <xs:enumeration value="false"></xs:enumeration>
- <xs:enumeration value="true"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="HSEFrequency"
- use="required">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- <xs:minInclusive value="0"></xs:minInclusive>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="LSEFrequency"
- use="required">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
-
- <xs:minInclusive value="0"></xs:minInclusive>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="VDD" use="required">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
-
- <xs:minInclusive value="180"></xs:minInclusive>
-
- <xs:maxInclusive value="360"></xs:maxInclusive>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType></xs:element>
- <xs:element name="ports" type="portsType" maxOccurs="1"
- minOccurs="1">
- </xs:element>
- </xs:sequence>
-
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
- <xs:complexType name="portsType">
- <xs:sequence>
- <xs:element name="GPIOA" type="STM32GPIOv2PortType"
- minOccurs="1" maxOccurs="1"></xs:element>
- <xs:element name="GPIOB" type="STM32GPIOv2PortType"
- minOccurs="1" maxOccurs="1"></xs:element>
- <xs:element name="GPIOC" type="STM32GPIOv2PortType"
- minOccurs="1" maxOccurs="1"></xs:element>
- <xs:element name="GPIOD" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- <xs:element name="GPIOE" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- <xs:element name="GPIOF" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- <xs:element name="GPIOG" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- <xs:element name="GPIOH" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- <xs:element name="GPIOI" type="STM32GPIOv2PortType"
- maxOccurs="1" minOccurs="1"></xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:element name="board" type="STM32F4xxBoardType"></xs:element>
-
-</xs:schema>
diff --git a/tools/gencfg/schema/common/doc.xsd b/tools/gencfg/schema/common/doc.xsd
deleted file mode 100644
index e5be361d5..000000000
--- a/tools/gencfg/schema/common/doc.xsd
+++ /dev/null
@@ -1,108 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:complexType name="NamedItem">
- <xs:annotation>
- <xs:documentation>
- >Generic item with optional name and brief
- description
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="name" maxOccurs="1" minOccurs="1">
- <xs:annotation>
- <xs:documentation>Name of the object.</xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- <xs:pattern value="\w[\w\d_]*"></xs:pattern>
- <xs:minLength value="1"></xs:minLength>
- <xs:maxLength value="24"></xs:maxLength>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="DocumentedItem">
- <xs:annotation>
- <xs:documentation>>Something that can have a detailed description
- attached
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="NamedItem">
- <xs:sequence>
- <xs:element name="brief" maxOccurs="1" minOccurs="1">
- <xs:annotation>
- <xs:documentation>
- Brief description of the object.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="0"></xs:minLength>
- <xs:maxLength value="72"></xs:maxLength>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="details" maxOccurs="1" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Object documentation as text, does not preserve
- formatting.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="pre" maxOccurs="unbounded" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Object pre-requisites as text, does not preserve
- formatting.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="post" maxOccurs="unbounded" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Object post-requisites as text, does not preserve
- formatting.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="note" maxOccurs="unbounded" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Object note as text, does not preserve formatting.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
-</xs:schema>
diff --git a/tools/gencfg/schema/common/stm32/stm32_gpiov2_port.xsd b/tools/gencfg/schema/common/stm32/stm32_gpiov2_port.xsd
deleted file mode 100644
index c3ac59487..000000000
--- a/tools/gencfg/schema/common/stm32/stm32_gpiov2_port.xsd
+++ /dev/null
@@ -1,214 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema
- elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:complexType name="STM32GPIOv2PortType">
-
- <xs:sequence>
- <xs:element
- name="pin0"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin1"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin2"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin3"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin4"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin5"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin6"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin7"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin8"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin9"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin10"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin11"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin12"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin13"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin14"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- <xs:element
- name="pin15"
- type="STM32GPIOv2PinType"
- maxOccurs="1"
- minOccurs="1"></xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="STM32GPIOv2PinType">
- <xs:annotation>
- <xs:documentation>
- Object representing an STM32 pin for the GPIOv2
- peripheral.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute
- name="ID"
- use="required">
- <xs:annotation>
- <xs:documentation>Pin identifier, used to generate a #define with the
- pin name.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:annotation>
- <xs:documentation>
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="xs:string">
- <xs:pattern value="\w?[\w\d_]*"></xs:pattern>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Mode"
- use="required">
- <xs:annotation>
- <xs:documentation>
- Pin mode, as defined for MODER register.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="Input"></xs:enumeration>
- <xs:enumeration value="Output"></xs:enumeration>
- <xs:enumeration value="Alternate"></xs:enumeration>
- <xs:enumeration value="Analog"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Level"
- use="required">
- <xs:annotation>
- <xs:documentation>Logic level for the ODR register.</xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="High"></xs:enumeration>
- <xs:enumeration value="Low"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Speed"
- use="required">
- <xs:annotation>
- <xs:documentation>
- Pin speed as defined in SPEEDR register.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="Minimum"></xs:enumeration>
- <xs:enumeration value="Low"></xs:enumeration>
- <xs:enumeration value="High"></xs:enumeration>
- <xs:enumeration value="Maximum"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Type"
- use="required">
- <xs:annotation>
- <xs:documentation>
- Pin type as defined in TYPER register.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="PushPull"></xs:enumeration>
- <xs:enumeration value="OpenDrain"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Resistor"
- use="required">
- <xs:annotation>
- <xs:documentation>
- Pin pull-up/down resistor as defined in PUDR register.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="Floating"></xs:enumeration>
- <xs:enumeration value="PullUp"></xs:enumeration>
- <xs:enumeration value="PullDown"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute
- name="Alternate"
- use="required">
- <xs:annotation>
- <xs:documentation>
- Pin alternate function number, only valid if
- "Alternate" is selected
- in the Mode attribute.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:minInclusive value="0"></xs:minInclusive>
- <xs:maxInclusive value="15"></xs:maxInclusive>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
-</xs:schema>
diff --git a/tools/gencfg/schema/hal/abstract_adc_cfg.xsd b/tools/gencfg/schema/hal/abstract_adc_cfg.xsd
deleted file mode 100644
index 52a6c9096..000000000
--- a/tools/gencfg/schema/hal/abstract_adc_cfg.xsd
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="abstract_driver_cfg.xsd" />
-
- <xs:complexType name="AbstractAdcGroupCfgType">
- <xs:complexContent>
- <xs:extension base="DocumentedItem">
- <xs:sequence>
- <xs:element name="circular" maxOccurs="1" minOccurs="1">
-
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="conv_callback" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="0"></xs:minLength>
- <xs:maxLength value="24"></xs:maxLength>
- <xs:pattern value="\w[\w\d_]*"></xs:pattern>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="error_callback" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="0"></xs:minLength>
- <xs:maxLength value="24"></xs:maxLength>
-
- <xs:pattern value="\w[\w\d_]*"></xs:pattern>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
-
- <xs:complexType name="AbstractAdcCfgType">
- <xs:complexContent>
- <xs:extension base="AbstractDriverCfgType"></xs:extension>
- </xs:complexContent>
- </xs:complexType>
-</xs:schema>
diff --git a/tools/gencfg/schema/hal/abstract_cfg.xsd b/tools/gencfg/schema/hal/abstract_cfg.xsd
deleted file mode 100644
index 72491eea9..000000000
--- a/tools/gencfg/schema/hal/abstract_cfg.xsd
+++ /dev/null
@@ -1,344 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema
- elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../common/doc.xsd" />
-
- <xs:complexType name="AbstractCfgType">
- <xs:complexContent>
- <xs:extension base="DocumentedItem">
- <xs:sequence>
- <xs:element
- name="hal"
- maxOccurs="1"
- minOccurs="1" type="HALSettingsType">
- </xs:element>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
- <xs:complexType name="ADCSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="ADC_USE_WAIT">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="ADC_USE_MUTUAL_EXCLUSION">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
-
- <xs:complexType name="CANSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="CAN_USE_SLEEP_MODE">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="EXTSettingsType"></xs:complexType>
-
- <xs:complexType name="GPTSettingsType"></xs:complexType>
-
- <xs:complexType name="I2CSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="I2C_USE_MUTUAL_EXCLUSION">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="ICUSettingsType"></xs:complexType>
-
- <xs:complexType name="MACSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="MAC_USE_EVENTS">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="MMC_SPISettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="MMC_NICE_WAITING">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="PALSettingsType"></xs:complexType>
-
- <xs:complexType name="PWMSettingsType"></xs:complexType>
-
- <xs:complexType name="RTCSettingsType"></xs:complexType>
-
- <xs:complexType name="SDCSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SDC_INIT_RETRY">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:minInclusive value="0"></xs:minInclusive>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SDC_MMC_SUPPORT">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="false"></xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SDC_NICE_WAITING">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="SERIALSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SERIAL_DEFAULT_BITRATE">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:minExclusive value="300"></xs:minExclusive>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SERIAL_BUFFERS_SIZE">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:minInclusive value="4"></xs:minInclusive>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="SERIAL_USBSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SERIAL_USB_BUFFERS_SIZE">
- <xs:simpleType>
- <xs:restriction base="xs:int">
- <xs:minInclusive value="64"></xs:minInclusive>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="SPISettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SPI_USE_WAIT">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element
- minOccurs="1"
- maxOccurs="1"
- name="SPI_USE_MUTUAL_EXCLUSION">
- <xs:simpleType>
- <xs:restriction base="xs:boolean">
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="TMSettingsType"></xs:complexType>
-
- <xs:complexType name="UARTSettingsType"></xs:complexType>
-
- <xs:complexType name="USBSettingsType"></xs:complexType>
-
- <xs:complexType name="HALSettingsType">
- <xs:sequence>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="ADC"
- type="ADCSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="CAN"
- type="CANSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="EXT"
- type="EXTSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="GPT"
- type="GPTSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="I2C"
- type="I2CSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="ICU"
- type="ICUSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="MAC"
- type="MACSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="MMC_SPI"
- type="MMC_SPISettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="PAL"
- type="PALSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="PWM"
- type="PWMSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="RTC"
- type="RTCSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="SDC"
- type="SDCSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="SERIAL"
- type="SERIALSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="SERIAL_USB"
- type="SERIAL_USBSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="SPI"
- type="SPISettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="TM"
- type="TMSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="UART"
- type="UARTSettingsType">
- </xs:element>
- <xs:element
- minOccurs="0"
- maxOccurs="1"
- name="USB"
- type="USBSettingsType">
- </xs:element>
- </xs:sequence>
- </xs:complexType>
-
-</xs:schema>
diff --git a/tools/gencfg/schema/hal/abstract_driver_cfg.xsd b/tools/gencfg/schema/hal/abstract_driver_cfg.xsd
deleted file mode 100644
index d6501ff2a..000000000
--- a/tools/gencfg/schema/hal/abstract_driver_cfg.xsd
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../common/doc.xsd" />
-
- <xs:complexType name="AbstractDriverCfgType">
- <xs:complexContent>
- <xs:extension base="DocumentedItem"></xs:extension>
- </xs:complexContent>
- </xs:complexType>
-</xs:schema>
diff --git a/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_adc_cfg.xsd b/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_adc_cfg.xsd
deleted file mode 100644
index 331933109..000000000
--- a/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_adc_cfg.xsd
+++ /dev/null
@@ -1,432 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../abstract_adc_cfg.xsd" />
-
- <xs:complexType name="STM32F4AdcCfgType">
- <xs:complexContent>
- <xs:extension base="AbstractAdcCfgType">
- <xs:sequence>
- <xs:element name="groups" minOccurs="1" maxOccurs="1">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="group" maxOccurs="unbounded"
- minOccurs="1" type="STM32F4xxAdcGroupCfgType"></xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
-
- <xs:complexType name="STM32F4xxAdcGroupCfgType">
- <xs:complexContent>
- <xs:extension base="AbstractAdcGroupCfgType">
- <xs:sequence>
- <xs:element name="alignment" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="0 Samples are Right Aligned"></xs:enumeration>
- <xs:enumeration value="1 Samples are Left Aligned"></xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="resolution" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="0 12 bits"></xs:enumeration>
- <xs:enumeration value="1 10 bits"></xs:enumeration>
- <xs:enumeration value="2 8 bits"></xs:enumeration>
- <xs:enumeration value="3 6 bits"></xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="trigger_mode" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="0 Software"></xs:enumeration>
- <xs:enumeration value="1 Rising Edge"></xs:enumeration>
- <xs:enumeration value="2 Falling Edge"></xs:enumeration>
- <xs:enumeration value="3 Both Edges"></xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="trigger_source" maxOccurs="1"
- minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="0 Timer 1 CC1 event"></xs:enumeration>
- <xs:enumeration value="1 Timer 1 CC2 event"></xs:enumeration>
- <xs:enumeration value="2 Timer 1 CC3 event"></xs:enumeration>
- <xs:enumeration value="3 Timer 2 CC2 event"></xs:enumeration>
- <xs:enumeration value="4 Timer 2 CC3 event"></xs:enumeration>
- <xs:enumeration value="5 Timer 2 CC4 event"></xs:enumeration>
- <xs:enumeration value="6 Timer 2 TRGO event"></xs:enumeration>
- <xs:enumeration value="7 Timer 3 CC1 event"></xs:enumeration>
- <xs:enumeration value="8 Timer 3 TRGO event"></xs:enumeration>
- <xs:enumeration value="9 Timer 4 CC4 event"></xs:enumeration>
- <xs:enumeration value="10 Timer 5 CC1 event"></xs:enumeration>
- <xs:enumeration value="11 Timer 5 CC2 event"></xs:enumeration>
- <xs:enumeration value="12 Timer 5 CC3 event"></xs:enumeration>
- <xs:enumeration value="13 Timer 8 CC1 event"></xs:enumeration>
- <xs:enumeration value="14 Timer 8 CC4 event"></xs:enumeration>
- <xs:enumeration value="15 EXTI line15"></xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="discontinuous" maxOccurs="1"
- minOccurs="1">
-
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="0 Disabled"></xs:enumeration>
- <xs:enumeration value="1 One discontinous conversion"></xs:enumeration>
- <xs:enumeration
- value="2 Two discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="3 Three discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="4 Four discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="5 Five discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="6 Six discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="7 Seven discontinous conversions">
- </xs:enumeration>
- <xs:enumeration
- value="8 Eight discontinous conversions">
- </xs:enumeration>
- <xs:whiteSpace value="collapse"></xs:whiteSpace>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="sample_time" maxOccurs="1" minOccurs="1">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="IN0" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN1" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN2" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN3" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN4" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN5" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN6" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN7" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN8" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN9" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN10" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN11" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN12" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN13" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN14" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="IN15" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="SENSOR" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="VREFINT" maxOccurs="1"
- minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- <xs:element name="VBAT" maxOccurs="1" minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_SAMPLE_3"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_15"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_28"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_56"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_84"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_112"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_144"></xs:enumeration>
- <xs:enumeration value="ADC_SAMPLE_480"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="channels_sequence" maxOccurs="1"
- minOccurs="1">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="channel" maxOccurs="16"
- minOccurs="1">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="ADC_CHANNEL_IN0"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN1"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN2"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN3"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN4"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN5"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN6"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN7"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN8"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN9"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN10"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN11"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN12"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN13"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN14"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_IN15"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_SENSOR"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_VREFINT"></xs:enumeration>
- <xs:enumeration value="ADC_CHANNEL_VBAT"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
-
-
-
-
-
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
-</xs:schema>
diff --git a/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_cfg.xsd b/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_cfg.xsd
deleted file mode 100644
index f846403f3..000000000
--- a/tools/gencfg/schema/hal/stm32f4xx/stm32f4xx_cfg.xsd
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema elementFormDefault="qualified"
- xmlns:xs="http://www.w3.org/2001/XMLSchema">
-
- <xs:include schemaLocation="../../common/doc.xsd" />
- <xs:include schemaLocation="stm32f4xx_adc_cfg.xsd" />
-
- <xs:complexType name="STM32F4xxCfgType">
- <xs:complexContent>
- <xs:extension base="DocumentedItem">
- <xs:sequence>
- <xs:element name="configs" maxOccurs="1" minOccurs="1">
- <xs:complexType>
- <xs:sequence maxOccurs="unbounded" minOccurs="1">
- <xs:choice>
- <xs:element name="adc_config" type="STM32F4AdcCfgType"
- maxOccurs="1" minOccurs="0">
- </xs:element>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
- <xs:element name="configuration" type="STM32F4xxCfgType"></xs:element>
-</xs:schema>
diff --git a/tools/gencfg/xml/stm32f0board.xml b/tools/gencfg/xml/stm32f0board.xml
deleted file mode 100644
index 64420371f..000000000
--- a/tools/gencfg/xml/stm32f0board.xml
+++ /dev/null
@@ -1,665 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- STM32F4xx board Template -->
-<board
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="http://www.chibios.org/xml/schema/boards/stm32f0xx_board.xsd">
- <board_name>-----human readable board name-----</board_name>
- <board_id>BOARD_IDENTIFIER</board_id>
- <board_functions></board_functions>
- <clocks
- HSEFrequency="8000000"
- HSEBypass="false"
- LSEFrequency="32768" />
- <ports>
- <GPIOA>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID="JTAG_TMS"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin14
- ID="JTAG_TCK"
- Type="PushPull"
- Speed="Maximum"
- Resistor="PullDown"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin15
- ID="JTAG_TDI"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- </GPIOA>
- <GPIOB>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID="BOOT1"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID="JTAG_TDO"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin4
- ID="JTAG_TRST"
- Type="PushPull"
- Speed="Maximum"
- Resistor="PullUp"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOB>
- <GPIOC>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID="OSC32_IN"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID="OSC32_OUT"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOC>
- <GPIOD>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOD>
- <GPIOF>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOF>
- </ports>
-</board>
diff --git a/tools/gencfg/xml/stm32f4board.xml b/tools/gencfg/xml/stm32f4board.xml
deleted file mode 100644
index 0c6b42106..000000000
--- a/tools/gencfg/xml/stm32f4board.xml
+++ /dev/null
@@ -1,1190 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- STM32F4xx board Template -->
-<board
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="http://www.chibios.org/xml/schema/boards/stm32f4xx_board.xsd">
- <board_name>-----human readable board name-----</board_name>
- <board_id>BOARD_IDENTIFIER</board_id>
- <board_functions></board_functions>
- <ethernet_phy>
- <identifier>MII_KS8721_ID</identifier>
- <bus_type>RMII</bus_type>
- </ethernet_phy>
- <clocks
- HSEFrequency="8000000"
- HSEBypass="false"
- LSEFrequency="32768"
- VDD="300" />
- <ports>
- <GPIOA>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID="JTAG_TMS"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin14
- ID="JTAG_TCK"
- Type="PushPull"
- Speed="Maximum"
- Resistor="PullDown"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin15
- ID="JTAG_TDI"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- </GPIOA>
- <GPIOB>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID="BOOT1"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID="JTAG_TDO"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin4
- ID="JTAG_TRST"
- Type="PushPull"
- Speed="Maximum"
- Resistor="PullUp"
- Level="High"
- Mode="Alternate"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOB>
- <GPIOC>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID="OSC32_IN"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID="OSC32_OUT"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOC>
- <GPIOD>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOD>
- <GPIOE>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOE>
- <GPIOF>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOF>
- <GPIOG>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOG>
- <GPIOH>
- <pin0
- ID="OSC_IN"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0"></pin0>
- <pin1
- ID="OSC_OUT"
- Type="PushPull"
- Speed="Maximum"
- Resistor="Floating"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOH>
- <GPIOI>
- <pin0
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin1
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin2
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin3
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin4
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin5
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin6
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin7
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin8
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin9
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin10
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin11
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin12
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin13
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin14
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- <pin15
- ID=""
- Type="PushPull"
- Speed="Minimum"
- Resistor="PullUp"
- Level="High"
- Mode="Input"
- Alternate="0" />
- </GPIOI>
- </ports>
-</board>
diff --git a/tools/gencfg/xml/stm32f4xx_cfg.xml b/tools/gencfg/xml/stm32f4xx_cfg.xml
deleted file mode 100644
index 896cc2614..000000000
--- a/tools/gencfg/xml/stm32f4xx_cfg.xml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- STM32F4xx board Template -->
-<configuration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="http://www.chibios.org/xml/schema/hal/stm32f4xx/stm32f4xx_cfg.xsd">
- <name>hal_configs</name>
- <brief>Application HAL-related settings.</brief>
- <configs>
- <adc_config>
- <name>adccfg1</name>
- <brief>Example ADC configuration.</brief>
- <groups>
- <group>
- <name>adcgrpcfg1</name>
- <brief>Example ADC conversion group configuration.</brief>
- <circular>true</circular>
- <conv_callback>conv_callback</conv_callback>
- <error_callback>error_callback</error_callback>
- <alignment>0 Samples are Right Aligned</alignment>
- <resolution>0 12 bits</resolution>
- <trigger_mode>0 Software</trigger_mode>
- <trigger_source>0 Timer 1 CC1 event</trigger_source>
- <discontinuous>2 Two discontinous conversions</discontinuous>
- <sample_time>
- <IN0>ADC_SAMPLE_3</IN0>
- <IN1>ADC_SAMPLE_3</IN1>
- <IN2>ADC_SAMPLE_3</IN2>
- <IN3>ADC_SAMPLE_3</IN3>
- <IN4>ADC_SAMPLE_3</IN4>
- <IN5>ADC_SAMPLE_3</IN5>
- <IN6>ADC_SAMPLE_3</IN6>
- <IN7>ADC_SAMPLE_3</IN7>
- <IN8>ADC_SAMPLE_3</IN8>
- <IN9>ADC_SAMPLE_3</IN9>
- <IN10>ADC_SAMPLE_3</IN10>
- <IN11>ADC_SAMPLE_3</IN11>
- <IN12>ADC_SAMPLE_3</IN12>
- <IN13>ADC_SAMPLE_3</IN13>
- <IN14>ADC_SAMPLE_3</IN14>
- <IN15>ADC_SAMPLE_3</IN15>
- <SENSOR>ADC_SAMPLE_3</SENSOR>
- <VREFINT>ADC_SAMPLE_3</VREFINT>
- <VBAT>ADC_SAMPLE_3</VBAT>
- </sample_time>
- <channels_sequence>
- <channel>ADC_CHANNEL_IN0</channel>
- <channel>ADC_CHANNEL_IN8</channel>
- </channels_sequence>
- </group>
- </groups>
- </adc_config>
- </configs>
-</configuration>