view ffstools/tiaud/binstruct.h @ 921:74d284add54d

fc-fsio: guard against bogus readdir results from the target If the FFS being operated on contains SE K2x0 extended filenames, readdir will return strings that are bad for printing. We need to guard against this possibility, and also against possible other bogosity that could be sent by other alien firmwares.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 31 Dec 2022 22:55:23 +0000
parents c458e33060bf
children
line wrap: on
line source

/*
 * The binary structure of /aud/*.cfg audio mode config files
 * written and read by TI's TCS211 firmware is defined here.
 */

struct audio_cfg_bin {
	uint8_t		voice_path;
	uint8_t		pad1[3];
	uint8_t		mic_mode;
	uint8_t		pad2[3];
	int8_t		mic_bytes[4];
	uint16_t	mic_fir[32];
	uint8_t		speaker_mode;
	uint8_t		pad3[3];
	int8_t		speaker_bytes[4];
	uint16_t	speaker_fir[32];
	int8_t		sidetone_gain;
	uint8_t		pad4[3];
	uint16_t	aec_words[12];
};

#define	MODE_FILE_SIZE_NEWAEC	(sizeof(struct audio_cfg_bin))
#define	MODE_FILE_SIZE_OLDAEC	(sizeof(struct audio_cfg_bin) - 12)

/* mic_mode byte */
#define AUDIO_MICROPHONE_HANDHELD   (0)
#define AUDIO_MICROPHONE_HANDFREE   (1)
#define AUDIO_MICROPHONE_HEADSET    (2)

/* speaker_mode byte */
#define AUDIO_SPEAKER_HANDHELD          (0)
#define AUDIO_SPEAKER_HANDFREE          (1)
#define AUDIO_SPEAKER_HEADSET           (2)
#define AUDIO_SPEAKER_BUZZER            (3)
#define AUDIO_SPEAKER_HANDHELD_HANDFREE (4)