/*----------------------------------------------------------------------------- getTextualDWARFReg -----------------------------------------------------------------------------*/ const char* getTextualDWARFReg(int reg) { const char* result = "(unknown)"; #define DEF_REG(a) \ case a: \ result = #a; \ break; switch(reg) { DEF_REG(DWARF_R8); DEF_REG(DWARF_R9); DEF_REG(DWARF_R10); DEF_REG(DWARF_R11); DEF_REG(DWARF_R12); DEF_REG(DWARF_R13); DEF_REG(DWARF_R14); DEF_REG(DWARF_R15); DEF_REG(DWARF_RDI); DEF_REG(DWARF_RSI); DEF_REG(DWARF_RBP); DEF_REG(DWARF_RBX); DEF_REG(DWARF_RDX); DEF_REG(DWARF_RAX); DEF_REG(DWARF_RCX); DEF_REG(DWARF_RSP); DEF_REG(DWARF_RAR); DEF_REG(DW_FRAME_CFA_COL3); DEF_REG(DW_FRAME_UNDEFINED_VAL); DEF_REG(DW_FRAME_SAME_VAL); } return result; }
void FXAS21002C::print_registers() { const struct { uint8_t reg; const char *name; } regmap[] = { DEF_REG(FXAS21002C_STATUS), DEF_REG(FXAS21002C_OUT_X_MSB), DEF_REG(FXAS21002C_OUT_X_LSB), DEF_REG(FXAS21002C_OUT_Y_MSB), DEF_REG(FXAS21002C_OUT_Y_LSB), DEF_REG(FXAS21002C_OUT_Z_MSB), DEF_REG(FXAS21002C_OUT_Z_LSB), DEF_REG(FXAS21002C_DR_STATUS), DEF_REG(FXAS21002C_F_STATUS), DEF_REG(FXAS21002C_F_SETUP), DEF_REG(FXAS21002C_F_EVENT), DEF_REG(FXAS21002C_INT_SRC_FLAG), DEF_REG(FXAS21002C_WHO_AM_I), DEF_REG(FXAS21002C_CTRL_REG0), DEF_REG(FXAS21002C_RT_CFG), DEF_REG(FXAS21002C_RT_SRC), DEF_REG(FXAS21002C_RT_THS), DEF_REG(FXAS21002C_RT_COUNT), DEF_REG(FXAS21002C_TEMP), DEF_REG(FXAS21002C_CTRL_REG1), DEF_REG(FXAS21002C_CTRL_REG2), DEF_REG(FXAS21002C_CTRL_REG3), }; for (uint8_t i = 0; i < sizeof(regmap) / sizeof(regmap[0]); i++) { printf("0x%02x %d:%s\n", read_reg(regmap[i].reg), regmap[i].reg, regmap[i].name); } }
void FXOS8700CQ::print_registers() { const struct { uint8_t reg; const char *name; } regmap[] = { DEF_REG(FXOS8700CQ_DR_STATUS), DEF_REG(FXOS8700CQ_OUT_X_MSB), DEF_REG(FXOS8700CQ_XYZ_DATA_CFG), DEF_REG(FXOS8700CQ_WHOAMI), DEF_REG(FXOS8700CQ_CTRL_REG1), DEF_REG(FXOS8700CQ_CTRL_REG2), DEF_REG(FXOS8700CQ_M_DR_STATUS), DEF_REG(FXOS8700CQ_M_OUT_X_MSB), DEF_REG(FXOS8700CQ_M_CTRL_REG1), DEF_REG(FXOS8700CQ_M_CTRL_REG2), DEF_REG(FXOS8700CQ_M_CTRL_REG3), }; for (uint8_t i = 0; i < sizeof(regmap) / sizeof(regmap[0]); i++) { printf("0x%02x %s\n", read_reg(regmap[i].reg), regmap[i].name); } }