ChibiOS/tools/ftl/schema/boards/stm32l4xx_board.xsd

143 lines
5.8 KiB
XML

<?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_gpiov3_port.xsd" />
<xs:include schemaLocation="abstract_board.xsd" />
<xs:complexType name="STM32L4xxBoardType">
<xs:complexContent>
<xs:extension base="AbstractBoardType">
<xs:sequence>
<xs:element name="subtype">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"></xs:whiteSpace>
<xs:enumeration value="STM32L432xx"></xs:enumeration>
<xs:enumeration value="STM32L443xx"></xs:enumeration>
<xs:enumeration value="STM32L452xx"></xs:enumeration>
<xs:enumeration value="STM32L471xx"></xs:enumeration>
<xs:enumeration value="STM32L475xx"></xs:enumeration>
<xs:enumeration value="STM32L476xx"></xs:enumeration>
<xs:enumeration value="STM32L485xx"></xs:enumeration>
<xs:enumeration value="STM32L486xx"></xs:enumeration>
<xs:enumeration value="STM32L496xx"></xs:enumeration>
<xs:enumeration value="STM32L4A6xx"></xs:enumeration>
<xs:enumeration value="STM32L4R5xx"></xs:enumeration>
<xs:enumeration value="STM32L4R7xx"></xs:enumeration>
<xs:enumeration value="STM32L4R9xx"></xs:enumeration>
<xs:enumeration value="STM32L4S5xx"></xs:enumeration>
<xs:enumeration value="STM32L4S7xx"></xs:enumeration>
<xs:enumeration value="STM32L4S9xx"></xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:element>
<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="LSEBypass" 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="LSEDrive" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:whiteSpace value="collapse"></xs:whiteSpace>
<xs:enumeration value="3 High Drive (default)">
</xs:enumeration>
<xs:enumeration value="2 Medium-High Drive">
</xs:enumeration>
<xs:enumeration value="1 Medium-Low Drive">
</xs:enumeration>
<xs:enumeration value="0 Low Drive (lowest consumption)">
</xs:enumeration>
</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="STM32GPIOv3PortType"
minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="GPIOB" type="STM32GPIOv3PortType"
minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="GPIOC" type="STM32GPIOv3PortType"
minOccurs="1" maxOccurs="1">
</xs:element>
<xs:element name="GPIOD" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
<xs:element name="GPIOE" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
<xs:element name="GPIOF" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
<xs:element name="GPIOG" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
<xs:element name="GPIOH" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
<xs:element name="GPIOI" type="STM32GPIOv3PortType"
maxOccurs="1" minOccurs="1">
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="board" type="STM32L4xxBoardType"></xs:element>
</xs:schema>