Commit 0817f26bb06cdf2a3db57b71b9d045bfe25d456e
authorMichel Pollet <buserror@gmail.com>
Sat, 25 Feb 2012 17:56:03 +0000 (17:56 +0000)
committerMichel Pollet <buserror@gmail.com>
Sat, 25 Feb 2012 17:56:03 +0000 (17:56 +0000)
Moved the data type to sim_avr_types.h, so it doesn't
need the full avr_t type to be used.

Signed-off-by: Michel Pollet <buserror@gmail.com>
2 files changed:
simavr/sim/sim_avr_types.h
simavr/sim/sim_regbit.h

index b8e0902a96c1d5910373993cd84c05c12bf48d40..638d68f728fd82278bee9d854052c7df648489df 100644 (file)
 typedef uint64_t       avr_cycle_count_t;
 typedef uint16_t       avr_io_addr_t;
 
+/*
+ * this 'structure' is a packed representation of an IO register 'bit'
+ * (or consecutive bits). This allows a way to set/get/clear them.
+ * gcc is happy passing these as register value, so you don't need to
+ * use a pointer when passing them along to functions.
+ *
+ * 9 bits ought to be enough, as it's the maximum I've seen (atmega2560)
+ */
+typedef struct avr_regbit_t {
+       uint32_t reg : 9, bit : 3, mask : 8;
+} avr_regbit_t;
+
 // printf() conversion specifier for avr_cycle_count_t
 #define PRI_avr_cycle_count PRIu64
 
index 9f2987a616f4914be1b249d49a56349ce715ae90..4852b562fc564286becdee64b49a0eb4d72751d5 100644 (file)
@@ -30,17 +30,6 @@ extern "C" {
 
 #define ARRAY_SIZE(_aa) (sizeof(_aa) / sizeof((_aa)[0]))
 
-/*
- * this 'structure' is a packed representation of an IO register 'bit'
- * (or consecutive bits). This allows a way to set/get/clear them.
- * gcc is happy passing these as register value, so you don't need to
- * use a pointer when passing them along to functions.
- *
- * 9 bits ought to be enough, as it's the maximum I've seen (atmega2560)
- */
-typedef struct avr_regbit_t {
-       unsigned long reg : 9, bit : 3, mask : 8;
-} avr_regbit_t;
 
 /*
  * These accessors are inlined and are used to perform the operations on