I am working on a linux driver to interface with a ADAU1451 that is running a program developed in sigma studio. I have exported the header files and am able to interact with the device over spi but I find the SigmaStudioFW.h quite lacking. The generated files have SIGMASTUDIOTYPE_8_24 as the type for most parameters but it is not listed in the SigmaStudioFW.h there is also not a macro for the conversion or a description of the conversion in the file. I have a very large parameter fine with most parameters being SIGMASTUDIOTYPE_8_24 and using a conversion SIGMASTUDIOTYPE_8_24_CONVERT(x). The parameters being input appear to be floating point numbers but as there is no definition this is hard to derive the proper operations. The value in the below example appears to be -10db which matches the value in sigma studio. I assume that the value is 2 words as the register size as 8.24 is a 32bit number but the addresses go in increments of one and a typical register in the device is 16bit so this this a bit off. Any help would be appreciated and documentation and accompanying code needs to be added to sigma studio.
/* Module Channel 1 Volume_3 - Single Volume*/
#define MOD_CHANNEL1VOLUME_3_COUNT 2
#define MOD_CHANNEL1VOLUME_3_DEVICE "IC1"
#define MOD_CHANNEL1VOLUME_3_ALG0_TARGET_ADDR 757
#define MOD_CHANNEL1VOLUME_3_ALG0_TARGET_VALUE SIGMASTUDIOTYPE_8_24_CONVERT(0.316227766016838)
#define MOD_CHANNEL1VOLUME_3_ALG0_TARGET_TYPE SIGMASTUDIOTYPE_8_24
#define MOD_CHANNEL1VOLUME_3_ALG0_SLEW_MODE_ADDR 758
#define MOD_CHANNEL1VOLUME_3_ALG0_SLEW_MODE_FIXPT 0x0000208A
#define MOD_CHANNEL1VOLUME_3_ALG0_SLEW_MODE_VALUE SIGMASTUDIOTYPE_INTEGER_CONVERT(8330)
#define MOD_CHANNEL1VOLUME_3_ALG0_SLEW_MODE_TYPE SIGMASTUDIOTYPE_INTEGER