コード例 #1
0
/*
 * ************************************ TODO keep these demos?
 */
int tfa98xxDiagLoadPresetsDouble(int slave) {
	Tfa98xx_handle_t hL, hR ;
	int result = 0; // 1 is failure
	Tfa98xx_Config_t cfg;
	unsigned char tstbuf[0x87 + sizeof(cfg)];

	TRACEIN;
	lastApiError = Tfa98xx_Open(slave << 1, &hL);
	if (lastApiError != Tfa98xx_Error_Ok)
		return 2;
	lastApiError = Tfa98xx_Open(slave+1 << 1, &hR);
	if (lastApiError != Tfa98xx_Error_Ok)
		return 3;


	lastApiError = Tfa98xx_DspWritePreset(hL, TFA98XX_PRESET_LENGTH,
			settings_HQ_KS_13X18_DUMBO_preset);
	assert(lastApiError == Tfa98xx_Error_Ok);

	lastApiError = Tfa98xx_DspWritePreset(hR, TFA98XX_PRESET_LENGTH,
			settings_HQ_KS_13X18_DUMBO_preset);
	assert(lastApiError == Tfa98xx_Error_Ok);


  stop:
	Tfa98xx_Close(hL);
	Tfa98xx_Close(hR);
	lastError = result;
	TRACEOUT;
	return result;
}
コード例 #2
0
int tfa98xxDiagLoadPreset(int slave)
{
        Tfa98xx_handle_t handle;
        int result = 1;         // 1 is failure
        Tfa98xx_Config_t cfg;
        unsigned char tstbuf[0x87 + sizeof(cfg)];

        TRACEIN;
        lastApiError = Tfa98xx_Open(slave << 1, &handle);
        if (lastApiError != Tfa98xx_Error_Ok)
                return 2;

        coldStartup(handle);
        lastApiError =
            Tfa98xx_DspWritePreset(handle, TFA98XX_PRESET_LENGTH,
            			settings_HQ_KS_13X18_DUMBO_preset);
        assert(lastApiError == Tfa98xx_Error_Ok);

        lastApiError =
            Tfa98xx_DspGetParam(handle, 1 /*MODULE_SPEAKERBOOST */ , 0x80,
                                sizeof(tstbuf), tstbuf);
        assert(lastApiError == Tfa98xx_Error_Ok);

        result =
            0 != memcmp(settings_HQ_KS_13X18_DUMBO_preset, &tstbuf[sizeof(cfg)],
                        sizeof(Tfa98xx_Preset_t));
        if (result)
                sprintf(lastErrorString, "DSP parameters mismatch");

 stop:
        Tfa98xx_Close(handle);
        lastError = result;
        TRACEOUT;
        return result;
}
コード例 #3
0
/* load a preset from a file, as generated by the GUI,
   can be done at runtime */
static void setPreset(int handle_cnt, Tfa98xx_handle_t handles[],
	struct tfa98xx_param_data *preset)
{
	enum Tfa98xx_Error err;

	if (preset == NULL || preset->data == NULL) {
		pr_info("%s: not use preset data\n", __func__);
		return;
	}
	pr_debug("%s: start\n", __func__);

	if (handle_cnt >= 2)
		err = Tfa98xx_DspWritePresetMultiple(handle_cnt, handles,
			TFA98XX_PRESET_LENGTH, preset->data);
	else
		err = Tfa98xx_DspWritePreset(handles[0],
			TFA98XX_PRESET_LENGTH, preset->data);

	if (err != Tfa98xx_Error_Ok)
		pr_err("%s: Tfa98xx_DspWritePreset failed\n", __func__);

}