1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
19754: boards/atmega8: new board r=benpicco a=hugueslarrive

### Contribution description
Splitted from:
- #19740

### Testing procedure
Tested on atmega8 with:
- #19755

### Issues/PRs references

Dependencies:
- #19753
- #19752
- #19751



Co-authored-by: Hugues Larrive <hlarrive@pm.me>
This commit is contained in:
bors[bot] 2023-07-11 21:41:07 +00:00 committed by GitHub
commit 82f4154c71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
410 changed files with 970 additions and 13 deletions

25
boards/atmega8/Kconfig Normal file
View File

@ -0,0 +1,25 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
config BOARD
default "atmega8" if BOARD_ATMEGA8
config BOARD_ATMEGA8
bool
default y
select CPU_MODEL_ATMEGA8
# Put defined MCU peripherals here (in alphabetical order)
select HAS_PERIPH_ADC
select HAS_PERIPH_GPIO
select HAS_PERIPH_I2C
select HAS_PERIPH_PWM
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
# Various other features (if any)
select MODULE_BOARDS_COMMON_ATMEGA if TEST_KCONFIG
source "$(RIOTBOARD)/common/atmega/Kconfig"

5
boards/atmega8/Makefile Normal file
View File

@ -0,0 +1,5 @@
MODULE = board
DIRS = $(RIOTBOARD)/common/atmega
include $(RIOTBASE)/Makefile.base

View File

@ -0,0 +1 @@
USEMODULE += boards_common_atmega

View File

@ -0,0 +1,9 @@
CPU = atmega8
FEATURES_PROVIDED += periph_adc
FEATURES_PROVIDED += periph_gpio
FEATURES_PROVIDED += periph_i2c
FEATURES_PROVIDED += periph_pwm
FEATURES_PROVIDED += periph_spi
FEATURES_PROVIDED += periph_timer
FEATURES_PROVIDED += periph_uart

View File

@ -0,0 +1,16 @@
# configure the terminal program
PORT_LINUX ?= /dev/ttyUSB0
PORT_DARWIN ?= $(firstword $(sort $(wildcard /dev/tty.usbmodem*)))
BAUD ?= 9600
ATMEGA8_CLOCK ?=
# Allow overwriting programmer via env variables without affecting other boards
PROGRAMMER_BOARD_ATMEGA8 ?= usbasp
# ICSP programmer to use for avrdude
AVRDUDE_PROGRAMMER ?= $(PROGRAMMER_BOARD_ATMEGA8)
ifneq (,$(ATMEGA8_CLOCK))
CFLAGS += -DCLOCK_CORECLOCK=$(ATMEGA8_CLOCK)
endif
include $(RIOTBOARD)/common/atmega/Makefile.include

99
boards/atmega8/doc.txt Normal file
View File

@ -0,0 +1,99 @@
/**
@defgroup boards_atmega8 Standalone ATmega8
@ingroup boards
@brief Support for using the ATmega8 as standalone board
## Overview
As the ATmega8 can run from the internal oscillator, placing it on a breadboard,
connecting an USB-UART adapter and power is enough to run RIOT on it. (An ISP
programmer will be needed to program it; or to program a bootloader to
subsequently allow programming via UART.)
### MCU
| MCU | ATmega8 |
|:------------- |:--------------------------------------------- |
| Family | AVR/ATmega |
| Vendor | Microchip (previously Atmel) |
| RAM | 1KiB |
| Flash | 8KiB |
| EEPROM | 512B |
| Frequency | 1MHz/8MHz (up to 16MHz with external clock) |
| Timers | 3 (2x 8bit, 1x 16bit) |
| ADCs | 6 analog input pins |
| UARTs | 1 |
| SPIs | 1 |
| I2Cs | 1 (called TWI) |
| Vcc | 4.5V - 5.5V (ATmega8), 2.7V - 5.5V (ATmega8L) |
| Datasheet | [Official datasheet](https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2486-8-bit-AVR-microcontroller-ATmega8_L_datasheet.pdf) |
### Pinout
\htmlonly<style>div.image img[src="https://camo.githubusercontent.com/c55beef2f138da61fe671a1e4a307ff4ffbc318d/68747470733a2f2f692e696d6775722e636f6d2f715849456368542e6a7067"]{width:100%;}</style>\endhtmlonly
@image html "https://camo.githubusercontent.com/c55beef2f138da61fe671a1e4a307ff4ffbc318d/68747470733a2f2f692e696d6775722e636f6d2f715849456368542e6a7067" "Pinout of the ATmega328p"<br>
All credit for above pinout image goes to https://github.com/MCUdude/MiniCore#pinout
### Clock Frequency
The ATmega8 has an internal oscillators clocked at 1MHz that allow it to be
operated without any external clock source or crystal. By default the fuses are
configured to use the internal oscillator and an operating mode resulting in a
clock speed of 1MHz. By setting the `CKSEL` fuses to 0100 the clock will operate
at 8MHz without an external clock source. This can be done like this:
avrdude -c usbasp -p m8 -B 32 -U lfuse:w:0xe4:m
(Replace `usbasp` with the ISP programmer you are using. The `-B 32` might
be needed on some ISP programmers to communicate with slow ATmega MCUs. It will
not be needed anymore after the clock device has been disabled.)
This "board" is configured to use 8MHz as core clock, so that the ATmega8
runs at the highest frequency possible without external clock sources.
By setting the environment variable `ATMEGA8_CLOCK` to a custom frequency in
Hz (e.g. `1000000` for 1MHz), this core clock can be changed easily. Refer to
the datasheet on how to configure the ATmega8 to use an external crystal, an
external clock source or the clock divider.
### Relation Between Supply Voltage, Clock Frequency and Power Consumption
A higher supply voltage results in a higher current drawn. Thus, lower power
consumption can be achieved by using a lower supply voltage. However, higher
clock frequencies require higher supply voltages for reliable operation.
The lowest possible supply voltage at 8 MHz is 2.7V (Atmega8L) or
4.5V (Atmega8).
## Flashing the Device
In order to flash the ATmega8 without a bootloader, an ISP programmer is
needed. Connect the programmer as follows:
| ISP pin | ATmega8 pin |
|:-------- |:-------------- |
| MISO | 18/PB4/MISO |
| VCC | 7/VCC |
| SCK | 19/PB5/SCK |
| MOSI | 17/PB3/MOSI |
| RESET | 1/RESET |
| Ground | 22/GND |
The tool `avrdude` needs to be installed. When using the `usbasp` running
make BOARD=atmega8 flash
will take care of everything. To use the programmer `<FOOBAR>` instead, run
make BOARD=atmega8 PROGRAMMER=<FOOBAR> flash
## Serial Terminal
Connect a TTL adapter with pins 2/RXD and 3/TXD an run
make BOARD=atmega8 term
Please note that the supply voltage should be compatible with the logic level of
the TTL adapter. Usually everything between 3.3 V and 5 V should work.
*/

View File

@ -0,0 +1,63 @@
/*
* Copyright (C) 2014 Freie Universität Berlin, Hinnerk van Bruinehsen
* 2016 Laurent Navet <laurent.navet@gmail.com>
* 2019 Otto-von-Guericke-Universität Magdeburg
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
/**
* @ingroup boards_atmega8
* @{
*
* @file
* @brief Board specific definitions for the standalone ATmega8 "board"
*
* @author Marian Buschsieweke <marian.buschsieweke@ovgu.de>
* @author Hinnerk van Bruinehsen <h.v.bruinehsen@fu-berlin.de>
* @author Laurent Navet <laurent.navet@gmail.com>
* @author Hugues Larrive <hugues.larrive@pm.me>
*/
#ifndef BOARD_H
#define BOARD_H
#include "cpu.h"
#include "periph_conf.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @name STDIO configuration
*
* As the CPU is too slow to handle 115200 baud, we set the default
* baudrate to 9600 for this board
* @{
*/
#define STDIO_UART_BAUDRATE (9600U)
/** @} */
/**
* @name xtimer configuration values
* @{
*/
#define XTIMER_WIDTH (16)
#if CLOCK_CORECLOCK > 4000000UL
#define XTIMER_HZ (CLOCK_CORECLOCK / 64)
#else
#define XTIMER_HZ (CLOCK_CORECLOCK / 8)
#endif
#define XTIMER_BACKOFF (40)
/** @} */
#ifdef __cplusplus
}
#endif
#endif /* BOARD_H */
/** @} */

View File

@ -0,0 +1,45 @@
/*
* Copyright (C) 2019 Otto-von-Guericke-Universität Magdeburg
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
/**
* @ingroup boards_atmega8
* @{
*
* @file
* @brief Peripheral MCU configuration for the ATmega8 standalone "board"
*
* @author Marian Buschsieweke <marian.buschsieweke@ovgu.de>
* @author Hugues Larrive <hugues.larrive@pm.me>
*/
#ifndef PERIPH_CONF_H
#define PERIPH_CONF_H
#ifdef __cplusplus
extern "C" {
#endif
/**
* @name Clock configuration
* @{
*/
#ifndef CLOCK_CORECLOCK
/* Using 8MHz internal oscillator as default clock source */
#define CLOCK_CORECLOCK (8000000UL)
#endif
/** @} */
#ifdef __cplusplus
}
#endif
#include "periph_conf_atmega_common.h"
#endif /* PERIPH_CONF_H */
/** @} */

View File

@ -6,6 +6,7 @@
* 2017 HAW Hamburg, Dimitri Nahm
* 2018 Matthew Blue <matthew.blue.neuro@gmail.com>
* 2019 Otto-von-Guericke-Universität Magdeburg
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
@ -28,6 +29,7 @@
* @author Matthew Blue <matthew.blue.neuro@gmail.com>
* @author Francisco Acosta <francisco.acosta@inria.fr>
* @author Marian Buschsieweke <marian.buschsieweke@ovgu.de>
* @author Hugues Larrive <hugues.larrive@pm.me>
*/
#ifndef PERIPH_CONF_ATMEGA_COMMON_H
@ -71,6 +73,12 @@ extern "C" {
#define UART_1 MEGA_UART1
#define UART_1_ISR USART1_RX_vect
#define UART_1_ISR_TX USART1_TX_vect
#elif defined(CPU_ATMEGA8)
#define UART_NUMOF (1U)
#define UART_0 MEGA_UART
#define UART_0_ISR USART_RXC_vect
#define UART_0_ISR_TX USART_TXC_vect
#elif defined(CPU_ATMEGA328P)
#define UART_NUMOF (1U)
@ -156,7 +164,8 @@ extern "C" {
*/
#ifndef ADC_NUMOF
#if defined(CPU_ATMEGA128RFA1) || defined(CPU_ATMEGA256RFR2) || defined(CPU_ATMEGA328P) || \
defined(CPU_ATMEGA1281) || defined(CPU_ATMEGA1284P) || defined(CPU_ATMEGA32U4)
defined(CPU_ATMEGA1281) || defined(CPU_ATMEGA1284P) || defined(CPU_ATMEGA32U4) || \
defined(CPU_ATMEGA8)
#define ADC_NUMOF (8U)
#elif defined (CPU_ATMEGA2560)
#define ADC_NUMOF (16U)
@ -180,7 +189,9 @@ extern "C" {
* @{
*/
#ifndef PWM_NUMOF
#if defined(CPU_ATMEGA328P)
#if defined(CPU_ATMEGA8)
#define PWM_PINS_CH0 { GPIO_PIN(PORT_B, 3), GPIO_UNDEF }
#elif defined(CPU_ATMEGA328P)
#define PWM_PINS_CH0 { GPIO_PIN(PORT_D, 6), GPIO_PIN(PORT_D, 5) }
#define PWM_PINS_CH1 { GPIO_PIN(PORT_B, 3), GPIO_PIN(PORT_D, 3) }
#elif defined(CPU_ATMEGA1281)
@ -200,8 +211,9 @@ extern "C" {
#if defined(CPU_ATMEGA32U4) || defined(CPU_ATMEGA328P) || \
defined(CPU_ATMEGA1281) || defined(CPU_ATMEGA1284P) || \
defined(CPU_ATMEGA2560)
defined(CPU_ATMEGA2560) || defined(CPU_ATMEGA8)
static const pwm_conf_t pwm_conf[] = {
#ifndef CPU_ATMEGA8
{
.dev = MINI_TIMER0,
.pin_ch = PWM_PINS_CH0,
@ -213,6 +225,13 @@ extern "C" {
.pin_ch = PWM_PINS_CH1,
.div = MINI_TIMER2_DIV,
}
#endif
#else /* CPU_ATMEGA8 */
{
.dev = MINI_TIMER2,
.pin_ch = PWM_PINS_CH0,
.div = MINI_TIMER2_DIV,
},
#endif
};

View File

@ -19,7 +19,7 @@ config CPU_MODEL_ATMEGA8
config HAS_CPU_ATMEGA8
bool
help
Indicates that a 'atmega8' cpu is being used.
Indicates that an 'atmega8' cpu is being used.
## Common CPU symbols
config CPU_FAM

View File

@ -1 +1,3 @@
CPU_FAM = atmega8
include $(RIOTCPU)/atmega_common/Makefile.features

View File

@ -14,8 +14,8 @@ config CPU_COMMON_ATMEGA
bool
select HAS_CPU_CORE_ATMEGA
select HAS_ATMEGA_PCINT0
select HAS_DBGPIN
select HAS_PERIPH_CPUID
select HAS_DBGPIN if !CPU_FAM_ATMEGA8
select HAS_PERIPH_CPUID if !CPU_FAM_ATMEGA8
select HAS_PERIPH_EEPROM
select HAS_PERIPH_GPIO
select HAS_PERIPH_GPIO_IRQ

View File

@ -5,8 +5,6 @@ include $(RIOTCPU)/avr8_common/Makefile.features
FEATURES_PROVIDED += cpu_core_atmega
FEATURES_PROVIDED += atmega_pcint0
FEATURES_PROVIDED += dbgpin
FEATURES_PROVIDED += periph_cpuid
FEATURES_PROVIDED += periph_eeprom
FEATURES_PROVIDED += periph_gpio periph_gpio_irq
FEATURES_PROVIDED += periph_gpio_ll
@ -20,6 +18,10 @@ FEATURES_PROVIDED += periph_timer_periodic
FEATURES_PROVIDED += periph_rtt_overflow
FEATURES_PROVIDED += periph_wdt
FEATURES_PROVIDED += puf_sram
ifneq (atmega8, $(CPU_FAM))
FEATURES_PROVIDED += dbgpin
FEATURES_PROVIDED += periph_cpuid
endif
FEATURES_CONFLICT += periph_rtc:periph_rtt
FEATURES_CONFLICT_MSG += "On ATmega, the RTC and RTT use to the same hardware timer."

View File

@ -1,5 +1,6 @@
/*
* Copyright (C) 2018 Inria
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
@ -15,6 +16,7 @@
* @brief Low-level EEPROM driver implementation for ATmega family
*
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
* @author Hugues Larrive <hugues.larrive@pm.me>
* @}
*/
@ -35,7 +37,11 @@ size_t eeprom_read(uint32_t pos, void *data, size_t len)
DEBUG("Reading data from EEPROM at pos %" PRIu32 ": ", pos);
for (size_t i = 0; i < len; i++) {
#ifdef EEPE
while (EECR & (1 << EEPE)) {}
#elif defined(EEWE)
while (EECR & (1 << EEWE)) {}
#endif
/* Set up address register */
EEAR = pos++;
@ -58,17 +64,30 @@ size_t eeprom_write(uint32_t pos, const void *data, size_t len)
for (size_t i = 0; i < len; i++) {
/* Wait for completion of previous operation */
#ifdef EEPE
while (EECR & (1 << EEPE)) {}
#elif defined(EEWE)
while (EECR & (1 << EEWE)) {}
#endif
/* Set up address and Data Registers */
EEAR = pos++;
EEDR = *p++;
#ifdef EEMPE
/* Write logical one to EEMPE */
EECR |= (1 << EEMPE);
#elif defined(EEMWE)
/* Write logical one to EEMWE */
EECR |= (1 << EEMWE);
#endif
#ifdef EEPE
/* Start eeprom write by setting EEPE */
EECR |= (1 << EEPE);
#elif defined(EEWE)
/* Start eeprom write by setting EEWE */
EECR |= (1 << EEWE);
#endif
}
return len;

View File

@ -3,6 +3,7 @@
* 2016 INRIA
* 2022 Otto-von-Guericke-Universität Magdeburg
* 2023 Gerson Fernando Budke
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser General
* Public License v2.1. See the file LICENSE in the top level directory for more
@ -24,6 +25,7 @@
* @author Torben Petersen <petersen@ibr.cs.tu-bs.de>
* @author Marian Buschsieweke <marian.buschsieweke@ovgu.de>
* @author Gerson Fernando Budke <nandojve@gmail.com>
* @author Hugues Larrive <hugues.larrive@pm.me>
*
* @}
*/
@ -49,32 +51,54 @@ static struct isr_ctx isr_ctx[GPIO_EXT_INT_NUMOF];
static void clear_pending_irqs(uint8_t exti)
{
#if defined(EIFR)
EIFR |= 1 << exti;
#elif defined(GIFR)
GIFR |= 1 << (INTF0 + exti);
#else
# error "No support for AVR with neither EIFR nor GIFR"
#endif
}
void gpio_ll_irq_mask(gpio_port_t port, uint8_t pin)
{
uint8_t exti = atmega_pin2exti(GPIO_PORT_NUM(port), pin);
#if defined(EIMSK)
EIMSK &= ~(1 << exti);
#elif defined(GICR)
GICR &= ~(1 << (INT0 + exti));
#endif
}
void gpio_ll_irq_unmask(gpio_port_t port, uint8_t pin)
{
uint8_t exti = atmega_pin2exti(GPIO_PORT_NUM(port), pin);
#if defined(EIMSK)
EIMSK |= 1 << exti;
#elif defined(GICR)
GICR |= 1 << (INT0 + exti);
#endif
}
void gpio_ll_irq_unmask_and_clear(gpio_port_t port, uint8_t pin)
{
uint8_t exti = atmega_pin2exti(GPIO_PORT_NUM(port), pin);
clear_pending_irqs(exti);
#if defined(EIMSK)
EIMSK |= 1 << exti;
#elif defined(GICR)
GICR |= 1 << (INT0 + exti);
#endif
}
static void set_trigger(uint8_t exti, gpio_irq_trig_t trig)
{
exti <<= 1;
#if defined(EICRA)
volatile uint8_t *eicr = &EICRA;
#elif defined(MCUCR)
volatile uint8_t *eicr = &MCUCR;
#endif
#ifdef EICRB
if (exti >= 8) {
@ -110,7 +134,11 @@ int gpio_ll_irq(gpio_port_t port, uint8_t pin, gpio_irq_trig_t trig,
/* setup IRQ */
set_trigger(exti, trig);
clear_pending_irqs(exti);
#if defined(EIMSK)
EIMSK |= 1 << exti;
#elif defined(GICR)
GICR |= 1 << (INT0 + exti);
#endif
irq_restore(irq_state);

View File

@ -1,5 +1,6 @@
/*
* Copyright (C) 2019 Inria
* 2023 Hugues Larrive
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
@ -15,6 +16,7 @@
* @brief Implementation of the watchdog peripheral interface
*
* @author Alexandre Abadie <alexandre.abadie@inria.fr>
* @author Hugues Larrive <hugues.larrive@pm.me>
*
* @}
*/
@ -66,13 +68,18 @@ void wdt_setup_reboot(uint32_t min_time, uint32_t max_time)
/* disable watchdog */
wdt_disable();
/* WDTO_8S and WDTO_4S are only available on some devices, we will
* test on WDP3 as in avr/wdt.h */
#ifdef WDP3
if (max_time >= 8000) {
wdt_prescaler = WDTO_8S;
}
else if (max_time >= 4000) {
wdt_prescaler = WDTO_4S;
}
else if (max_time >= 2000) {
else
#endif
if (max_time >= 2000) {
wdt_prescaler = WDTO_2S;
}
else if (max_time >= 1000) {

View File

@ -8,6 +8,7 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega1284p \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
calliope-mini \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
hifive1 \
hifive1b \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
chronos \

View File

@ -1,3 +1,4 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
#

View File

@ -8,6 +8,7 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega1284p \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
blackpill-stm32f103c8 \
blackpill-stm32f103cb \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
stm32f030f4-demo \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -8,6 +8,7 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega1284p \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a1-xplained \
atxmega-a1u-xpro \
atxmega-a3bu-xplained \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
blackpill-stm32f103c8 \
bluepill-stm32f030c8 \

View File

@ -8,6 +8,7 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega1284p \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
b-l072z-lrwan1 \
blackpill-stm32f103c8 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
msb-430 \
msb-430h \
nucleo-f031k6 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
blackpill-stm32f103c8 \
bluepill-stm32f030c8 \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
msb-430 \

View File

@ -8,6 +8,7 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega1284p \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
blackpill-stm32f103c8 \
blackpill-stm32f103cb \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
chronos \
i-nucleo-lrwan1 \

View File

@ -7,6 +7,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -5,5 +5,6 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
#

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
nucleo-f030r8 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
nucleo-f030r8 \

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
atxmega-a3bu-xplained \
bluepill-stm32f030c8 \
derfmega128 \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -1,6 +1,6 @@
PKG_NAME=qdsa
PKG_URL=https://github.com/RIOT-OS/qdsa.git
PKG_VERSION=4cb3f1a140f25e18ed288fd484defe3d45bdf166
PKG_VERSION=3fa25ffa3971000fe4a3e3b42340c40c8d79f2a2
PKG_LICENSE=PD
include $(RIOTBASE)/pkg/pkg.mk

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -1,3 +1,4 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
stm32f030f4-demo \

View File

@ -1,3 +1,4 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
#

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
stk3200 \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
bluepill-stm32f030c8 \
im880b \
nucleo-l011k4 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
bluepill-stm32f030c8 \
im880b \
nucleo-l011k4 \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
nucleo-f030 \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
nucleo-f030r8 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
nucleo-f030r8 \

View File

@ -4,5 +4,6 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
bluepill-stm32f030c8 \
i-nucleo-lrwan1 \
msb-430 \

View File

@ -4,6 +4,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -4,6 +4,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
stm32f030f4-demo \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -6,6 +6,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
calliope-mini \
cc2650stk \
maple-mini \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -4,6 +4,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -4,6 +4,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -1,3 +1,4 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
#

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
stm32f030f4-demo \
zigduino \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -6,4 +6,5 @@ BOARD_INSUFFICIENT_MEMORY := \
atmega328p \
atmega328p-xplained-mini \
atmega32u4 \
atmega8 \
#

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
stm32f030f4-demo \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-l011k4 \
samd10-xmini \

View File

@ -1,2 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -0,0 +1,3 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
#

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
#

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-f031k6 \
nucleo-f042k6 \
nucleo-l011k4 \

View File

@ -5,6 +5,7 @@ BOARD_INSUFFICIENT_MEMORY := \
arduino-uno \
atmega328p \
atmega328p-xplained-mini \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
stm32f030f4-demo \

View File

@ -1,4 +1,5 @@
BOARD_INSUFFICIENT_MEMORY := \
atmega8 \
nucleo-l011k4 \
samd10-xmini \
stm32f030f4-demo \

Some files were not shown because too many files have changed in this diff Show More