From 2b667e16f0e519bfeb3412596b7dd0495a227c72 Mon Sep 17 00:00:00 2001 From: Tomasz Wasilczyk Date: Wed, 18 Aug 2021 20:24:55 -0700 Subject: [PATCH] Add support for ATmega128RFA1 --- README.md | 4 +- devices/avr/atmega-128-rfa1.xml | 174 +++++++++ tools/generator/dfg/avr/avr_device_tree.py | 2 + .../raw-data-extractor/patches/avr.patch | 329 ++++++++++++++++++ 4 files changed, 507 insertions(+), 2 deletions(-) create mode 100644 devices/avr/atmega-128-rfa1.xml diff --git a/README.md b/README.md index f181d23f..9ce4ff6f 100644 --- a/README.md +++ b/README.md @@ -12,13 +12,13 @@ These tools and this data set is maintained and curated by [@salkinium][] only at [modm-io/modm-devices][modm-devices]. It is licensed under the MPLv2 license. -Currently data for 3583 devices is available. +Currently data for 3589 devices is available. Please open an issue or better yet a pull request for additional support. | Family | Devices | Family | Devices | Family | Devices | |:--------------|:--------|:--------------|:--------|:--------------|:--------| -| AT90 | 12 | ATMEGA | 346 | ATTINY | 148 | +| AT90 | 12 | ATMEGA | 352 | ATTINY | 148 | | NRF52 | 7 | SAMD | 209 | SAML | 47 | | STM32F0 | 169 | STM32F1 | 194 | STM32F2 | 71 | | STM32F3 | 145 | STM32F4 | 347 | STM32F7 | 183 | diff --git a/devices/avr/atmega-128-rfa1.xml b/devices/avr/atmega-128-rfa1.xml new file mode 100644 index 00000000..5150afc9 --- /dev/null +++ b/devices/avr/atmega-128-rfa1.xml @@ -0,0 +1,174 @@ + + + + + at{family}{name}{type}-{speed}{package} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tools/generator/dfg/avr/avr_device_tree.py b/tools/generator/dfg/avr/avr_device_tree.py index ec31205f..96986ae1 100644 --- a/tools/generator/dfg/avr/avr_device_tree.py +++ b/tools/generator/dfg/avr/avr_device_tree.py @@ -81,6 +81,8 @@ def _properties_from_file(filename, devname): "instance": m.get("name").lower()} # module SPI has two instances USART0_SPI, USART1_SPI, wtf? if tmp["module"] == "spi" and tmp["instance"].startswith("usart"): continue; + # some RF modules mistakenly claim flash module + if tmp["module"] == "flash": continue if tmp["module"] == "port": ports.append(tmp) else: diff --git a/tools/generator/raw-data-extractor/patches/avr.patch b/tools/generator/raw-data-extractor/patches/avr.patch index 2f566b45..82886e98 100644 --- a/tools/generator/raw-data-extractor/patches/avr.patch +++ b/tools/generator/raw-data-extractor/patches/avr.patch @@ -89,3 +89,332 @@ index 02a8cc3..4cbd66d 100644 +diff --git a/avr-devices/atmega/ATmega128RFA1.atdf b/avr-devices/atmega/ATmega128RFA1.atdf +index 7cfe8a8..6e23298 100644 +--- a/avr-devices/atmega/ATmega128RFA1.atdf ++++ b/avr-devices/atmega/ATmega128RFA1.atdf +@@ -1,7 +1,12 @@ + + + +- ++ ++ ++ ++ ++ ++ + + + +@@ -39,24 +44,48 @@ + + + ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ + + + + + ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ ++ + + + +@@ -68,34 +97,112 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ + + + +@@ -112,9 +219,23 @@ + + + ++ ++ ++ ++ ++ ++ ++ + + + ++ ++ ++ ++ ++ ++ ++ + + + +@@ -135,16 +256,51 @@ + + + ++ ++ ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + +@@ -2214,4 +2370,72 @@ + + + ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +