]> git.pld-linux.org Git - packages/crossavr-libc.git/blob - 502-avr-libc-bug12838.patch
- cleanup, use arch*dir macros, release 5 (x32 rebuild)
[packages/crossavr-libc.git] / 502-avr-libc-bug12838.patch
1 diff -Naurp include/avr/power.h include/avr/power.h
2 --- include/avr/power.h 2013-03-15 12:22:13.000000000 +0530
3 +++ include/avr/power.h 2013-03-15 12:22:26.000000000 +0530
4 @@ -2171,9 +2171,18 @@ do{ \
5  #define power_spi_enable()      (PRR &= (uint8_t)~(1 << PRSPI))
6  #define power_spi_disable()     (PRR |= (uint8_t)(1 << PRSPI))
7  
8 +#if defined(__AVR_AT90PWM216__) || defined(__AVR_AT90PWM316__)
9 +
10  #define power_usart_enable()    (PRR &= (uint8_t)~(1 << PRUSART))
11  #define power_usart_disable()   (PRR |= (uint8_t)(1 << PRUSART))
12  
13 +#else
14 +
15 +#define power_usart_enable()    (PRR &= (uint8_t)~(1 << PRUSART0))
16 +#define power_usart_disable()   (PRR |= (uint8_t)(1 << PRUSART0))
17 +
18 +#endif
19 +
20  #define power_timer0_enable()   (PRR &= (uint8_t)~(1 << PRTIM0))
21  #define power_timer0_disable()  (PRR |= (uint8_t)(1 << PRTIM0))
22  
23 @@ -2192,9 +2201,18 @@ do{ \
24  #define power_psc2_enable()     (PRR &= (uint8_t)~(1 << PRPSC2))
25  #define power_psc2_disable()    (PRR |= (uint8_t)(1 << PRPSC2))
26  
27 +#if defined(__AVR_AT90PWM216__) || defined(__AVR_AT90PWM316__)
28 +
29  #define power_all_enable()      (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRPSC0)|(1<<PRPSC1)|(1<<PRPSC2)))
30  #define power_all_disable()     (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRPSC0)|(1<<PRPSC1)|(1<<PRPSC2)))
31  
32 +#else
33 +
34 +#define power_all_enable()      (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRPSC0)|(1<<PRPSC1)|(1<<PRPSC2)))
35 +#define power_all_disable()     (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRUSART0)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRPSC0)|(1<<PRPSC1)|(1<<PRPSC2)))
36 +
37 +#endif
38 +
39  
40  #elif defined(__AVR_AT90PWM81__) \
41  || defined(__AVR_AT90PWM161__)
42 @@ -2226,9 +2244,11 @@ do{ \
43  || defined(__AVR_ATmega165PA__) \
44  || defined(__AVR_ATmega325__) \
45  || defined(__AVR_ATmega325A__) \
46 +|| defined(__AVR_ATmega325P__) \
47  || defined(__AVR_ATmega325PA__) \
48  || defined(__AVR_ATmega3250__) \
49  || defined(__AVR_ATmega3250A__) \
50 +|| defined(__AVR_ATmega3250P__) \
51  || defined(__AVR_ATmega3250PA__) \
52  || defined(__AVR_ATmega645__) \
53  || defined(__AVR_ATmega645A__) \
54 @@ -2389,8 +2409,6 @@ do{ \
55  || defined(__AVR_ATmega168PA__) \
56  || defined(__AVR_ATmega328__) \
57  || defined(__AVR_ATmega328P__) \
58 -|| defined(__AVR_ATtiny48__) \
59 -|| defined(__AVR_ATtiny88__) \
60  || defined(__AVR_ATtiny828__)
61  
62  #define power_adc_enable()      (PRR &= (uint8_t)~(1 << PRADC))
63 @@ -2430,6 +2448,28 @@ do{ \
64  
65  #endif
66  
67 +#elif defined(__AVR_ATtiny48__) \
68 +|| defined(__AVR_ATtiny88__)
69 +
70 +#define power_adc_enable()      (PRR &= (uint8_t)~(1 << PRADC))
71 +#define power_adc_disable()     (PRR |= (uint8_t)(1 << PRADC))
72 +
73 +#define power_spi_enable()      (PRR &= (uint8_t)~(1 << PRSPI))
74 +#define power_spi_disable()     (PRR |= (uint8_t)(1 << PRSPI))
75 +
76 +#define power_timer0_enable()   (PRR &= (uint8_t)~(1 << PRTIM0))
77 +#define power_timer0_disable()  (PRR |= (uint8_t)(1 << PRTIM0))
78 +
79 +#define power_timer1_enable()   (PRR &= (uint8_t)~(1 << PRTIM1))
80 +#define power_timer1_disable()  (PRR |= (uint8_t)(1 << PRTIM1))
81 +
82 +#define power_twi_enable()      (PRR &= (uint8_t)~(1 << PRTWI))
83 +#define power_twi_disable()     (PRR |= (uint8_t)(1 << PRTWI))
84 +
85 +#define power_all_enable()      (PRR &= (uint8_t)~((1<<PRADC)|(1<<PRSPI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTWI)))
86 +#define power_all_disable()     (PRR |= (uint8_t)((1<<PRADC)|(1<<PRSPI)|(1<<PRTIM0)|(1<<PRTIM1)|(1<<PRTWI)))
87 +
88 +  
89  #elif defined(__AVR_ATtiny24__) \
90  || defined(__AVR_ATtiny24A__) \
91  || defined(__AVR_ATtiny44__) \
92 @@ -2639,7 +2679,8 @@ do{ \
93  
94  #endif
95  
96 -#elif defined(__AVR_ATmega64HVE2__) 
97 +#elif defined(__AVR_ATmega64HVE__) \
98 +|| defined(__AVR_ATmega64HVE2__) 
99  
100  #define power_lin_enable()      (PRR0 &= (uint8_t)~(1 << PRLIN))
101  #define power_lin_disable()     (PRR0 |= (uint8_t)(1 << PRLIN))
102 @@ -2995,9 +3036,11 @@ do{ \
103  || defined(__AVR_ATmega324P__) \
104  || defined(__AVR_ATmega325__) \
105  || defined(__AVR_ATmega325A__) \
106 +|| defined(__AVR_ATmega325P__) \
107  || defined(__AVR_ATmega325PA__) \
108  || defined(__AVR_ATmega3250__) \
109  || defined(__AVR_ATmega3250A__) \
110 +|| defined(__AVR_ATmega3250P__) \
111  || defined(__AVR_ATmega3250PA__) \
112  || defined(__AVR_ATmega328__) \
113  || defined(__AVR_ATmega328P__) \
114 @@ -3143,6 +3186,7 @@ Gets and returns the clock prescaler reg
115  
116  #elif defined(__AVR_ATmega16HVB__) \
117  || defined(__AVR_ATmega16HVBREVB__) \
118 +|| defined(__AVR_ATmega64HVE__) \
119  || defined(__AVR_ATmega32HVB__) \
120  || defined(__AVR_ATmega32HVBREVB__) \
121  || defined(__AVR_ATmega64HVE2__)
This page took 0.121843 seconds and 3 git commands to generate.