11[package ]
22name = " atmega-hal"
3- version = " 0.1 .0"
3+ version = " 0.2 .0"
44
55authors = [" Rahix <rahix@rahix.de>" ]
66edition = " 2021"
@@ -12,28 +12,137 @@ categories = ["no-std", "embedded", "hardware-support"]
1212
1313[features ]
1414rt = [" avr-device/rt" ]
15- device-selected = []
1615enable-extra-adc = []
17- atmega48p = [" avr-device/atmega48p" , " device-selected" ]
18- atmega164pa = [" avr-device/atmega164pa" , " device-selected" ]
19- atmega168 = [" avr-device/atmega168" , " device-selected" ]
20- atmega328p = [" avr-device/atmega328p" , " device-selected" ]
21- atmega328pb = [" avr-device/atmega328pb" , " device-selected" ]
22- atmega32a = [" avr-device/atmega32a" , " device-selected" ]
23- atmega32u4 = [" avr-device/atmega32u4" , " device-selected" ]
24- atmega2560 = [" avr-device/atmega2560" , " device-selected" ]
25- atmega128a = [" avr-device/atmega128a" , " device-selected" ]
26- atmega1280 = [" avr-device/atmega1280" , " device-selected" ]
27- atmega1284p = [" avr-device/atmega1284p" , " device-selected" ]
28- atmega8 = [" avr-device/atmega8" , " device-selected" ]
16+
17+ # MCU-specific targets. Due to use of deprecated globals, only one MCU can be selected at a time
18+ # In atmega-hal 0.3.0 the defaults will change to no deprecated globals
19+ atmega48p = [" atmega48p-deprecated-globals" ]
20+ atmega164pa = [" atmega164pa-deprecated-globals" ]
21+ atmega168 = [" atmega168-deprecated-globals" ]
22+ atmega328p = [" atmega328p-deprecated-globals" ]
23+ atmega328pb = [" atmega328pb-deprecated-globals" ]
24+ atmega32a = [" atmega32a-deprecated-globals" ]
25+ atmega32u4 = [" atmega32u4-deprecated-globals" ]
26+ atmega2560 = [" atmega2560-deprecated-globals" ]
27+ atmega128a = [" atmega128a-deprecated-globals" ]
28+ atmega1280 = [" atmega1280-deprecated-globals" ]
29+ atmega1284p = [" atmega1284p-deprecated-globals" ]
30+ atmega8 = [" atmega8-deprecated-globals" ]
31+
32+ # MCU-specific targets with deprecated globals. This is the default in atmega-hal <0.3.0
33+ atmega48p-deprecated-globals = [" _mcu-atmega48p" , " deprecated-globals" ]
34+ atmega164pa-deprecated-globals = [" _mcu-atmega164pa" , " deprecated-globals" ]
35+ atmega168-deprecated-globals = [" _mcu-atmega168" , " deprecated-globals" ]
36+ atmega328p-deprecated-globals = [" _mcu-atmega328p" , " deprecated-globals" ]
37+ atmega328pb-deprecated-globals = [" _mcu-atmega328pb" , " deprecated-globals" ]
38+ atmega32a-deprecated-globals = [" _mcu-atmega32a" , " deprecated-globals" ]
39+ atmega32u4-deprecated-globals = [" _mcu-atmega32u4" , " deprecated-globals" ]
40+ atmega2560-deprecated-globals = [" _mcu-atmega2560" , " deprecated-globals" ]
41+ atmega128a-deprecated-globals = [" _mcu-atmega128a" , " deprecated-globals" ]
42+ atmega1280-deprecated-globals = [" _mcu-atmega1280" , " deprecated-globals" ]
43+ atmega1284p-deprecated-globals = [" _mcu-atmega1284p" , " deprecated-globals" ]
44+ atmega8-deprecated-globals = [" _mcu-atmega8" , " deprecated-globals" ]
45+
46+ # MCU-specific targets without deprecated globals. This will be the default in atmega-hal 0.3.0
47+ atmega48p-no-deprecated-globals = [" _mcu-atmega48p" ]
48+ atmega164pa-no-deprecated-globals = [" _mcu-atmega164pa" ]
49+ atmega168-no-deprecated-globals = [" _mcu-atmega168" ]
50+ atmega328p-no-deprecated-globals = [" _mcu-atmega328p" ]
51+ atmega328pb-no-deprecated-globals = [" _mcu-atmega328pb" ]
52+ atmega32a-no-deprecated-globals = [" _mcu-atmega32a" ]
53+ atmega32u4-no-deprecated-globals = [" _mcu-atmega32u4" ]
54+ atmega2560-no-deprecated-globals = [" _mcu-atmega2560" ]
55+ atmega128a-no-deprecated-globals = [" _mcu-atmega128a" ]
56+ atmega1280-no-deprecated-globals = [" _mcu-atmega1280" ]
57+ atmega1284p-no-deprecated-globals = [" _mcu-atmega1284p" ]
58+ atmega8-no-deprecated-globals = [" _mcu-atmega8" ]
2959
3060critical-section-impl = [" avr-device/critical-section-impl" ]
3161
32- # Allow certain downstream crates to overwrite the device selection error by themselves.
62+ default = []
63+
64+ docsrs = [
65+ " atmega48p-no-deprecated-globals" ,
66+ " atmega164pa-no-deprecated-globals" ,
67+ " atmega168-no-deprecated-globals" ,
68+ " atmega328p-no-deprecated-globals" ,
69+ " atmega328pb-no-deprecated-globals" ,
70+ " atmega32a-no-deprecated-globals" ,
71+ " atmega32u4-no-deprecated-globals" ,
72+ " atmega2560-no-deprecated-globals" ,
73+ " atmega128a-no-deprecated-globals" ,
74+ " atmega1280-no-deprecated-globals" ,
75+ " atmega1284p-no-deprecated-globals" ,
76+ " atmega8-no-deprecated-globals" ,
77+ ]
78+
79+ # Include soon-to-be-deprecated globals in the crate. Only one MCU can be selected if deprecated globals are enabled
80+ deprecated-globals = []
81+
82+ # If using this crate from another library crate you may want to suppress this error and provide your own
3383disable-device-selection-error = []
3484
35- # We must select a microcontroller to build on docs.rs
36- docsrs = [" atmega328p" ]
85+ # MCU-specific implementation features
86+ # Do not use directly; use either an <mcu>-deprecated-globals feature or any number of <mcu>-no-deprecated-globals features
87+ _mcu-atmega48p = [" _mcu-selected" , " _peripheral-spi" , " _peripheral-simple-pwm" , " avr-device/atmega48p" ]
88+ _mcu-atmega164pa = [" _mcu-selected" , " _peripheral-usart" , " _peripheral-simple-pwm" , " avr-device/atmega164pa" ]
89+ _mcu-atmega168 = [
90+ " _mcu-selected" ,
91+ " _peripheral-usart" ,
92+ " _peripheral-spi" ,
93+ " _peripheral-simple-pwm" ,
94+ " avr-device/atmega168" ,
95+ ]
96+ _mcu-atmega328p = [
97+ " _mcu-selected" ,
98+ " _peripheral-usart" ,
99+ " _peripheral-spi" ,
100+ " _peripheral-simple-pwm" ,
101+ " avr-device/atmega328p" ,
102+ ]
103+ _mcu-atmega328pb = [
104+ " _mcu-selected" ,
105+ " _peripheral-usart" ,
106+ " _peripheral-spi" ,
107+ " _peripheral-simple-pwm" ,
108+ " avr-device/atmega328pb" ,
109+ ]
110+ _mcu-atmega32a = [" _mcu-selected" , " _peripheral-usart" , " _peripheral-spi" , " avr-device/atmega32a" ]
111+ _mcu-atmega32u4 = [
112+ " _mcu-selected" ,
113+ " _peripheral-usart" ,
114+ " _peripheral-spi" ,
115+ " _peripheral-simple-pwm" ,
116+ " avr-device/atmega32u4" ,
117+ ]
118+ _mcu-atmega2560 = [
119+ " _mcu-selected" ,
120+ " _peripheral-usart" ,
121+ " _peripheral-spi" ,
122+ " _peripheral-simple-pwm" ,
123+ " avr-device/atmega2560" ,
124+ ]
125+ _mcu-atmega128a = [" _mcu-selected" , " _peripheral-usart" , " _peripheral-spi" , " avr-device/atmega128a" ]
126+ _mcu-atmega1280 = [
127+ " _mcu-selected" ,
128+ " _peripheral-usart" ,
129+ " _peripheral-spi" ,
130+ " _peripheral-simple-pwm" ,
131+ " avr-device/atmega1280" ,
132+ ]
133+ _mcu-atmega1284p = [
134+ " _mcu-selected" ,
135+ " _peripheral-usart" ,
136+ " _peripheral-spi" ,
137+ " _peripheral-simple-pwm" ,
138+ " avr-device/atmega1284p" ,
139+ ]
140+ _mcu-atmega8 = [" _mcu-selected" , " _peripheral-usart" , " _peripheral-spi" , " _peripheral-simple-pwm" , " avr-device/atmega8" ]
141+
142+ _mcu-selected = []
143+ _peripheral-simple-pwm = []
144+ _peripheral-spi = []
145+ _peripheral-usart = []
37146
38147[dependencies ]
39148avr-hal-generic = { path = " ../../avr-hal-generic/" }
0 commit comments