rockbox/utils/regtools
Amaury Pouly e62203aac1 regtools: add headergen_v2
This new header generator works differently from the previous one:
- it uses the new format
- the generated macro follow a different style (see below)
- the generated macro are highly documented!
- it supports SCT-style platform or RMW-style ones

Compared to the old style, the new one generate a big set of macros per
register/field/enum (loosely related to iohw.h from Embedded C spec). The user
then calls generic (names are customizable) macros to perform operations:

reg_read(REG_A)
reg_read(REG_B(3))
reg_read_field(REG_A, FIELD_X)
reg_read_field(REG_B(3), COOL_FIELD)
reg_write(REG_A, 0x42)
reg_write_field(REG_A, FIELD_X(1), FIELD_Y(3), IRQ_V(FIQ))
reg_write_fielc(REG_B(3), COOL_FIELD_V(I_AM_COOL), BLA(42))

the following use RMW or SET/CLR variants, depending on target:
reg_set_field(REG_A, FLAG_U, FLAG_V)
reg_clr_field(REG_A, FIELD_X, FIELD_Y, IRQ)
reg_clr_field(REG_B(3), COOL_FIELD, BLA)

the following does clear followed by set, on SET/CLR targets:
reg_cs(REG_A, 0xff, 0x42)
reg_cs(REG_B(3), 0xaa, 0x55)
reg_cs_field(REG_A, FIELD_X(1), FIELD_Y(3), IRQ_V(FIQ))
reg_cs_field(REG_B(3), COOL_FIELD_V(I_AM_COOL))

The generator code is pretty long but has lots of documentation and lots of
macro names can be customized.

Change-Id: I5d6c5ec2406e58b5da11a5240c3a409a5bb5239a
2016-05-25 00:11:07 +01:00
..
desc regtools: add headergen_v2 2016-05-25 00:11:07 +01:00
include regtools: add headergen_v2 2016-05-25 00:11:07 +01:00
lib regtools: add register access to soc desc 2016-04-08 19:38:36 +02:00
qeditor qeditor: port to the new hwstub library and add features 2016-04-08 18:46:46 +01:00
regdumps regtools: add new reg dumps from various targets 2014-05-25 16:38:09 +02:00
headergen_v1.cpp soc_desc: new version of the desc file format 2015-09-11 16:40:19 +02:00
headergen_v2.cpp regtools: add headergen_v2 2016-05-25 00:11:07 +01:00
Makefile soc_desc: new version of the desc file format 2015-09-11 16:40:19 +02:00
swiss_knife.cpp regtools: update v2 specification, library and tools 2016-02-06 15:12:55 +00:00
tester_v1.cpp soc_desc: new version of the desc file format 2015-09-11 16:40:19 +02:00