Message ID | 55D259B7.90703@tul.cz (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
Petr Cvek <petr.cvek@tul.cz> writes: > +/* > + * Magician Audio controller > + */ > + > +static struct platform_device magician_audio_device = { > + .name = "magician-audio", Is this already upstream or is it a submission in progress ? Other than that detail, I'll queue it in a week probably. Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Dne 20.8.2015 v 21:51 Robert Jarzmik napsal(a): > Petr Cvek <petr.cvek@tul.cz> writes: > >> +/* >> + * Magician Audio controller >> + */ >> + >> +static struct platform_device magician_audio_device = { >> + .name = "magician-audio", > Is this already upstream or is it a submission in progress ? Other than that > detail, I'll queue it in a week probably. This one is problematic. Vanilla version did not work from at least 3.4 (where I started, but probably even more in past). Somewhere between 3.13 and ~4.1 there is a change which causes it to fail after driver reload (bad pointers I think). UDA codec routes are not constructed completely and in ~4.1 they are refused, there are some swapped control registers and bad DMA definitions. Oh and recording stopped to work too (maybe it is caused by that routes). I tried to send initial separate patches (for DMA and registers), but it got stuck somewhere (at least it is not in 4.2rcX and I sent them around start of this year). I can add some of these patches to this patchset (but I didn't started yet on failing reload, record and fixing the routes). > > Cheers. > > -- > Robert > -- To unsubscribe from this list: send the line "unsubscribe linux-pm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Petr Cvek <petr.cvek@tul.cz> writes: > Dne 20.8.2015 v 21:51 Robert Jarzmik napsal(a): >> Petr Cvek <petr.cvek@tul.cz> writes: >> >>> +/* >>> + * Magician Audio controller >>> + */ >>> + >>> +static struct platform_device magician_audio_device = { >>> + .name = "magician-audio", >> Is this already upstream or is it a submission in progress ? Other than that >> detail, I'll queue it in a week probably. > > This one is problematic. Vanilla version did not work from at least 3.4 (where I > started, but probably even more in past). Somewhere between 3.13 and ~4.1 there > is a change which causes it to fail after driver reload (bad pointers I > think). UDA codec routes are not constructed completely and in ~4.1 they are > refused, there are some swapped control registers and bad DMA definitions. Oh > and recording stopped to work too (maybe it is caused by that routes). > > I tried to send initial separate patches (for DMA and registers), but it got > stuck somewhere (at least it is not in 4.2rcX and I sent them around start of > this year). > > I can add some of these patches to this patchset (but I didn't started yet on > failing reload, record and fixing the routes). Ok, but not for this patchset. This would be an apart submission to sound/soc and Mark Brown more likely. So I presume my answer is "no, it is not upstream yet, it is a submission under review". In that case, I'll take it in my "held" tree until you tell me your patches have been queued up by Mark, and then I'll move them to the for-next tree. Cheers.
diff --git a/arch/arm/mach-pxa/magician.c b/arch/arm/mach-pxa/magician.c index 63604e1..9decd86 100644 --- a/arch/arm/mach-pxa/magician.c +++ b/arch/arm/mach-pxa/magician.c @@ -94,6 +94,8 @@ #include <linux/platform_data/camera-pxa.h> #include <media/soc_camera.h> +#include <sound/uda1380.h> + #include "devices.h" #include "generic.h" @@ -887,6 +889,31 @@ static struct pxamci_platform_data magician_mci_info = { .gpio_power = EGPIO_MAGICIAN_SD_POWER, }; +/* + * AUDIO codec UDA1380 + */ + +static struct uda1380_platform_data uda1380_info = { + .gpio_power = EGPIO_MAGICIAN_CODEC_POWER, + .gpio_reset = EGPIO_MAGICIAN_CODEC_RESET, + .dac_clk = UDA1380_DAC_CLK_WSPLL, +}; + +static struct i2c_board_info magician_audio_i2c_devices[] = { + { + I2C_BOARD_INFO("uda1380", 0x18), + .platform_data = &uda1380_info, + }, +}; + +/* + * Magician Audio controller + */ + +static struct platform_device magician_audio_device = { + .name = "magician-audio", + .id = -1, +}; /* * USB OHCI @@ -1096,6 +1123,7 @@ static struct platform_device *devices[] __initdata = { &power_supply, &leds_gpio, &magician_camera, + &magician_audio_device, /* NOTICE mutually exclusive with PXA I2C */ &i2c_gpio_bus_alt, @@ -1143,6 +1171,9 @@ static void __init magician_init(void) pxa_set_ficp_info(&magician_ficp_info); pxa27x_set_i2c_power_info(&magician_i2c_power_info); pxa_set_i2c_info(&i2c_info); + i2c_register_board_info(0, + ARRAY_AND_SIZE(magician_audio_i2c_devices)); + pxa_set_mci_info(&magician_mci_info); pxa_set_ohci_info(&magician_ohci_info);
Add support for UDA1380 sound. Signed-off-by: Petr Cvek <petr.cvek@tul.cz> --- arch/arm/mach-pxa/magician.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+)