Hi,
Mehar> TI TLV320AIC3262 is a flexible, low-power, low-voltage stereo
Mehar> audio codec with digital microphone inputs and programmable
Mehar> outputs. It includes powertune capabilities, enhanced
Mehar> fully-programmable miniDSP, fixed predefined and parameterizable
Mehar> signal processing blocks, integrated PLL and flexible digital
Mehar> interfaces.
Mehar> + file = devm_kzalloc(codec->dev, PAGE_SIZE, GFP_KERNEL);
Mehar> + if (file == NULL)
Mehar> + return -ENOMEM;
Mehar> +
Mehar> + snprintf(file, PAGE_SIZE, "%s_fw_v%d.bin", ps_state->dev_name,
Mehar> + ps_state->version);
Mehar> + file[PAGE_SIZE - 1] = '\0';
Mehar> +
Mehar> + ret = request_firmware_nowait(THIS_MODULE, FW_ACTION_HOTPLUG,
Mehar> + file, codec->dev,
Mehar> + GFP_KERNEL, codec, aic3262_firmware_load);
What is this firmware, where can it be found and what is it's license?
Thanks for you comments,
You seem to be leaking file here.
Mehar> + if (ret < 0) {
Mehar> + dev_err(codec->dev, "Firmware request failed\n");
Mehar> + goto firm_err;
Mehar> + }
Mehar> +
Mehar> + return 0;
Mehar> +firm_err:
Mehar> + if (irq_ret)
Mehar> + aic3xxx_free_irq(aic3xxx,
Mehar> + AIC3XXX_IRQ_HEADSET_DETECT, codec);
Mehar> + destroy_workqueue(aic3262->workqueue);
Mehar> +work_err:
Mehar> + kfree(aic3262->cfw_p);
Mehar> + return ret;
Mehar> +}