* [PATCH 0/5] ARM: shmobile: bockw: add Sound support
@ 2013-08-07 4:05 Kuninori Morimoto
2013-08-21 8:50 ` Simon Horman
2013-08-26 8:50 ` [PATCH 0/5 v2] " Kuninori Morimoto
0 siblings, 2 replies; 17+ messages in thread
From: Kuninori Morimoto @ 2013-08-07 4:05 UTC (permalink / raw)
To: linux-sh
Hi Simon
These patches add R-Car sound support on Bock-W board.
It enables PIO transfer only at this point, because
1) PIO settings is the most easy basic settings
2) HPB-DMAC is still not enabled on r8a7778
R-Car sound driver is already supporting DMA transfer on ASoC (= Mark's) branch.
So, it is easy to support DMA transfer if r8a7778 has HPB-DMAC support.
To enable R-Car sound on Bock-W board, ASoC branch mergeing is required
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git
:: asoc/topic/ak4554
:: asoc/topic/rcar
These patches are based on renesas-devel-20130806v4
Kuninori Morimoto (5):
sh-pfc: r8a7778: add SRU/SSI pin support
ARM: shmobile: r8a7778: add SSI/SRU clock support
ARM: shmobile: bockw: enable global use of FPGA
ARM: shmobile: bockw: add R-Car sound support (PIO)
ARM: shmobile: bockw defconfig: add Sound support
arch/arm/configs/bockw_defconfig | 4 +
arch/arm/mach-shmobile/Kconfig | 2 +
arch/arm/mach-shmobile/board-bockw.c | 277 +++++++++++++++++++++++++++++++-
arch/arm/mach-shmobile/clock-r8a7778.c | 43 ++++-
drivers/pinctrl/sh-pfc/pfc-r8a7778.c | 163 +++++++++++++++++++
5 files changed, 479 insertions(+), 10 deletions(-)
---- asoc/topic/ak4554 ---------------------
commit b25f77815021ec6e7400a82c4984b9c80699ce80
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Jul 4 19:42:49 2013 -0700
ASoC: ak4554: add DT support
Support for loading the ak4554 codec module via devicetree.
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
---- asoc/topic/rcar ------------------------
commit 2460719c79854a3bebe569cbfbfa0b1caa1dc434
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Sun Jul 28 18:59:25 2013 -0700
ASoC: rsnd: scu: cleanup empty functions
This patch cleanups empty functions on scu
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Best regards
---
Kuninori Morimoto
^ permalink raw reply [flat|nested] 17+ messages in thread* Re: [PATCH 0/5] ARM: shmobile: bockw: add Sound support 2013-08-07 4:05 [PATCH 0/5] ARM: shmobile: bockw: add Sound support Kuninori Morimoto @ 2013-08-21 8:50 ` Simon Horman 2013-08-26 8:50 ` [PATCH 0/5 v2] " Kuninori Morimoto 1 sibling, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-08-21 8:50 UTC (permalink / raw) To: linux-sh Subject: Re: [PATCH 1/5] sh-pfc: r8a7778: add SRU/SSI pin support Organisation: Horms Solutions Ltd. [ CC Laurent and Linus ] On Tue, Aug 06, 2013 at 09:05:34PM -0700, Kuninori Morimoto wrote: > > Hi Simon > > These patches add R-Car sound support on Bock-W board. > It enables PIO transfer only at this point, because > 1) PIO settings is the most easy basic settings > 2) HPB-DMAC is still not enabled on r8a7778 > > R-Car sound driver is already supporting DMA transfer on ASoC (= Mark's) branch. > So, it is easy to support DMA transfer if r8a7778 has HPB-DMAC support. > > To enable R-Car sound on Bock-W board, ASoC branch mergeing is required > > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git > :: asoc/topic/ak4554 > :: asoc/topic/rcar > > These patches are based on renesas-devel-20130806v4 > > Kuninori Morimoto (5): > sh-pfc: r8a7778: add SRU/SSI pin support > ARM: shmobile: r8a7778: add SSI/SRU clock support > ARM: shmobile: bockw: enable global use of FPGA > ARM: shmobile: bockw: add R-Car sound support (PIO) > ARM: shmobile: bockw defconfig: add Sound support > > arch/arm/configs/bockw_defconfig | 4 + > arch/arm/mach-shmobile/Kconfig | 2 + > arch/arm/mach-shmobile/board-bockw.c | 277 +++++++++++++++++++++++++++++++- > arch/arm/mach-shmobile/clock-r8a7778.c | 43 ++++- > drivers/pinctrl/sh-pfc/pfc-r8a7778.c | 163 +++++++++++++++++++ > 5 files changed, 479 insertions(+), 10 deletions(-) As per my separate email in response to "sh-pfc: r8a7778: add SRU/SSI pin support", it seems that patch should be reviewed by Laurent and ideally taken through Linus's tree. With regards to the remaining patches, Magnus, could you cast an eye over them? > > > ---- asoc/topic/ak4554 --------------------- > commit b25f77815021ec6e7400a82c4984b9c80699ce80 > Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > Date: Thu Jul 4 19:42:49 2013 -0700 > > ASoC: ak4554: add DT support > > Support for loading the ak4554 codec module via devicetree. > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > Signed-off-by: Mark Brown <broonie@linaro.org> > > ---- asoc/topic/rcar ------------------------ > commit 2460719c79854a3bebe569cbfbfa0b1caa1dc434 > Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > Date: Sun Jul 28 18:59:25 2013 -0700 > > ASoC: rsnd: scu: cleanup empty functions > > This patch cleanups empty functions on scu > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > Signed-off-by: Mark Brown <broonie@linaro.org> > > > Best regards > --- > Kuninori Morimoto > -- > To unsubscribe from this list: send the line "unsubscribe linux-sh" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/5 v2] ARM: shmobile: bockw: add Sound support @ 2013-08-26 8:50 ` Kuninori Morimoto 2013-08-26 8:52 ` [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) Kuninori Morimoto 2013-08-30 0:42 ` [PATCH 0/5 v2] ARM: shmobile: bockw: add Sound support Kuninori Morimoto 0 siblings, 2 replies; 17+ messages in thread From: Kuninori Morimoto @ 2013-08-26 8:50 UTC (permalink / raw) To: linux-sh Hi Simon, Laurent These are v2 of R-Car sound support on Bock-W board. It enables PIO transfer only at this point, because 1) PIO settings is the most easy basic settings 2) HPB-DMAC is still not enabled on r8a7778 R-Car sound driver is already supporting DMA transfer on ASoC (= Mark's) branch. So, it is easy to support DMA transfer if r8a7778 has HPB-DMAC support. To enable R-Car sound on Bock-W board, ASoC branch mergeing is required git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git :: for-next These patches are based on renesas-devel-20130823 Kuninori Morimoto (5): sh-pfc: r8a7778: add SRU/SSI pin support ARM: shmobile: r8a7778: add SSI/SRU clock support ARM: shmobile: bockw: enable global use of FPGA ARM: shmobile: bockw: add R-Car sound support (PIO) ARM: shmobile: bockw defconfig: add Sound support arch/arm/configs/bockw_defconfig | 4 + arch/arm/mach-shmobile/Kconfig | 2 + arch/arm/mach-shmobile/board-bockw.c | 289 +++++++++++++++++++++++++++++++- arch/arm/mach-shmobile/clock-r8a7778.c | 43 ++++- drivers/pinctrl/sh-pfc/pfc-r8a7778.c | 125 ++++++++++++++ 5 files changed, 453 insertions(+), 10 deletions(-) Best regards --- Kuninori Morimoto ^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-08-26 8:52 ` Kuninori Morimoto 2013-09-04 18:38 ` Sergei Shtylyov 2013-09-05 5:57 ` Simon Horman 0 siblings, 2 replies; 17+ messages in thread From: Kuninori Morimoto @ 2013-08-26 8:52 UTC (permalink / raw) To: linux-sh This patch enables R-Car sound, AK4643 (CN19) and AK4554 (CN20/CN21) codec chip on Bock-W. But, it supports PIO transfer only at this point. User can check sound settings (Dip-switch/PFC etc) via this patch, but will get under/over flow error when playback/capture. Because PIO transfer via SSI will be interrupted "sampling rate" times per 1 second. DMA transfer will be supported when HPB-DMAC was enabled on r8a7778. You will notice strange ALSA sound card HW numbering on Bock-W board. This came from AK4554 strange format on playback/capture. The format on playback/capture is same on "normal" codec chip, but AK4554 was different. Because of that, AK4554 playback/capture are registered as a different sound card. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> --- v1 -> v2 - use new ssi pin arch/arm/mach-shmobile/Kconfig | 2 + arch/arm/mach-shmobile/board-bockw.c | 274 +++++++++++++++++++++++++++++++++- 2 files changed, 275 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index 1f94c31..f987216 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig @@ -162,6 +162,8 @@ config MACH_BOCKW select RENESAS_INTC_IRQPIN select REGULATOR_FIXED_VOLTAGE if REGULATOR select USE_OF + select SND_SOC_AK4554 if SND_SIMPLE_CARD + select SND_SOC_AK4642 if SND_SIMPLE_CARD config MACH_BOCKW_REFERENCE bool "BOCK-W - Reference Device Tree Implementation" diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c index 56bc9cc..b037026 100644 --- a/arch/arm/mach-shmobile/board-bockw.c +++ b/arch/arm/mach-shmobile/board-bockw.c @@ -35,9 +35,12 @@ #include <mach/irqs.h> #include <mach/r8a7778.h> #include <asm/mach/arch.h> +#include <sound/rcar_snd.h> +#include <sound/simple_card.h> #define FPGA 0x18200000 #define IRQ0MR 0x30 +#define COMCTLR 0x101c static void __iomem *fpga; /* @@ -65,6 +68,35 @@ static void __iomem *fpga; * SW19 (MMC) 1 pin */ +/* + * SSI settings + * + * SW45: 1-4 side (SSI5 out, ROUT/LOUT CN19 Mid) + * SW46: 1101 (SSI6 Recorde) + * SW47: 1110 (SSI5 Playback) + * SW48: 11 (Recorde power) + * SW49: 1 (SSI slave mode) + * SW50: 1111 (SSI7, SSI8) + * SW51: 1111 (SSI3, SSI4) + * SW54: 1pin (ak4554 FPGA control) + * SW55: 1 (CLKB is 24.5760MHz) + * SW60: 1pin (ak4554 FPGA control) + * SW61: 3pin (use X11 clock) + * SW78: 3-6 (ak4642 connects I2C0) + * + * You can use sound as + * + * hw0: CN19: SSI56-AK4643 + * hw1: CN21: SSI3-AK4554(playback) + * hw2: CN21: SSI4-AK4554(capture) + * hw3: CN20: SSI7-AK4554(playback) + * hw4: CN20: SSI8-AK4554(capture) + * + * this command is required when playback on hw0. + * + * # amixer set "LINEOUT Mixer DACL" on + */ + /* Dummy supplies, where voltage doesn't matter */ static struct regulator_consumer_supply dummy_supplies[] = { REGULATOR_SUPPLY("vddvario", "smsc911x"), @@ -121,7 +153,9 @@ static struct sh_eth_plat_data ether_platform_data __initdata = { static struct i2c_board_info i2c0_devices[] = { { I2C_BOARD_INFO("rx8581", 0x51), - }, + }, { + I2C_BOARD_INFO("ak4643", 0x12), + } }; /* HSPI*/ @@ -165,7 +199,213 @@ static struct sh_mmcif_plat_data sh_mmcif_plat __initdata = { MMC_CAP_NEEDS_POLL, }; +/* Sound */ +static struct resource rsnd_resources[] __initdata = { + [RSND_GEN1_SRU] = DEFINE_RES_MEM(0xffd90000, 0x1000), + [RSND_GEN1_SSI] = DEFINE_RES_MEM(0xffd91000, 0x1240), + [RSND_GEN1_ADG] = DEFINE_RES_MEM(0xfffe0000, 0x24), +}; + +static struct rsnd_ssi_platform_info rsnd_ssi[] = { + RSND_SSI_UNUSED, /* SSI 0 */ + RSND_SSI_UNUSED, /* SSI 1 */ + RSND_SSI_UNUSED, /* SSI 2 */ + RSND_SSI_SET(1, 0, gic_iid(0x85), RSND_SSI_PLAY), + RSND_SSI_SET(2, 0, gic_iid(0x85), RSND_SSI_CLK_PIN_SHARE | RSND_SSI_CLK_FROM_ADG), + RSND_SSI_SET(0, 0, gic_iid(0x86), RSND_SSI_PLAY), + RSND_SSI_SET(0, 0, gic_iid(0x86), 0), + RSND_SSI_SET(3, 0, gic_iid(0x86), RSND_SSI_PLAY), + RSND_SSI_SET(4, 0, gic_iid(0x86), RSND_SSI_CLK_PIN_SHARE | RSND_SSI_CLK_FROM_ADG), +}; + +static struct rsnd_scu_platform_info rsnd_scu[9] = { + /* no member at this point */ +}; + +enum { + AK4554_34 = 0, + AK4643_56, + AK4554_78, + SOUND_MAX, +}; + +static int rsnd_codec_power(int id, int enable) +{ + static int sound_user[SOUND_MAX] = {0, 0, 0}; + int *usr = NULL; + u32 bit; + + switch (id) { + case 3: + case 4: + usr = sound_user + AK4554_34; + bit = (1 << 10); + break; + case 5: + case 6: + usr = sound_user + AK4643_56; + bit = (1 << 6); + break; + case 7: + case 8: + usr = sound_user + AK4554_78; + bit = (1 << 7); + break; + } + + if (!usr) + return -EIO; + + if (enable) { + if (*usr = 0) { + u32 val = ioread16(fpga + COMCTLR); + val &= ~bit; + iowrite16(val, fpga + COMCTLR); + } + + (*usr)++; + } else { + if (*usr = 0) + return 0; + + (*usr)--; + + if (*usr = 0) { + u32 val = ioread16(fpga + COMCTLR); + val |= bit; + iowrite16(val, fpga + COMCTLR); + } + } + + return 0; +} + +static int rsnd_start(int id) +{ + return rsnd_codec_power(id, 1); +} + +static int rsnd_stop(int id) +{ + return rsnd_codec_power(id, 0); +} + +static struct rcar_snd_info rsnd_info = { + .flags = RSND_GEN1, + .ssi_info = rsnd_ssi, + .ssi_info_nr = ARRAY_SIZE(rsnd_ssi), + .scu_info = rsnd_scu, + .scu_info_nr = ARRAY_SIZE(rsnd_scu), + .start = rsnd_start, + .stop = rsnd_stop, +}; + +static struct asoc_simple_card_info rsnd_card_info[] = { + /* SSI5, SSI6 */ + { + .name = "AK4643", + .card = "SSI56-AK4643", + .codec = "ak4642-codec.0-0012", + .platform = "rcar_sound", + .daifmt = SND_SOC_DAIFMT_LEFT_J, + .cpu_dai = { + .name = "rsnd-dai.0", + .fmt = SND_SOC_DAIFMT_CBS_CFS, + }, + .codec_dai = { + .name = "ak4642-hifi", + .fmt = SND_SOC_DAIFMT_CBM_CFM, + .sysclk = 11289600, + }, + }, + /* SSI3 */ + { + .name = "AK4554", + .card = "SSI3-AK4554(playback)", + .codec = "ak4554-adc-dac.0", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.1", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_RIGHT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI4 */ + { + .name = "AK4554", + .card = "SSI4-AK4554(capture)", + .codec = "ak4554-adc-dac.0", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.2", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_LEFT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI7 */ + { + .name = "AK4554", + .card = "SSI7-AK4554(playback)", + .codec = "ak4554-adc-dac.1", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.3", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_RIGHT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI8 */ + { + .name = "AK4554", + .card = "SSI8-AK4554(capture)", + .codec = "ak4554-adc-dac.1", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.4", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_LEFT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + } +}; + static const struct pinctrl_map bockw_pinctrl_map[] = { + /* AUDIO */ + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "audio_clk_a", "audio_clk"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "audio_clk_b", "audio_clk"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi34_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi3_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi4_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi5_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi5_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi6_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi6_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi78_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi7_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi8_data", "ssi"), /* Ether */ PIN_MAP_MUX_GROUP_DEFAULT("r8a777x-ether", "pfc-r8a7778", "ether_rmii", "ether"), @@ -203,6 +443,8 @@ static const struct pinctrl_map bockw_pinctrl_map[] = { static void __init bockw_init(void) { void __iomem *base; + struct clk *clk; + int i; r8a7778_clock_init(); r8a7778_init_irq_extpin(1); @@ -269,6 +511,36 @@ static void __init bockw_init(void) sdhi0_resources, ARRAY_SIZE(sdhi0_resources), &sdhi0_info, sizeof(struct sh_mobile_sdhi_info)); } + + /* for Audio */ + clk = clk_get(NULL, "audio_clk_b"); + clk_set_rate(clk, 24576000); + clk_put(clk); + rsnd_codec_power(5, 1); /* enable ak4642 */ + + platform_device_register_simple( + "ak4554-adc-dac", 0, NULL, 0); + + platform_device_register_simple( + "ak4554-adc-dac", 1, NULL, 0); + + platform_device_register_resndata( + &platform_bus, "rcar_sound", -1, + rsnd_resources, ARRAY_SIZE(rsnd_resources), + &rsnd_info, sizeof(rsnd_info)); + + for (i = 0; i < ARRAY_SIZE(rsnd_card_info); i++) { + struct platform_device_info cardinfo = { + .parent = &platform_bus, + .name = "asoc-simple-card", + .id = i, + .data = &rsnd_card_info[i], + .size_data = sizeof(struct asoc_simple_card_info), + .dma_mask = ~0, + }; + + platform_device_register_full(&cardinfo); + } } static const char *bockw_boards_compat_dt[] __initdata = { -- 1.7.9.5 ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-08-26 8:52 ` [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) Kuninori Morimoto @ 2013-09-04 18:38 ` Sergei Shtylyov 2013-09-05 5:57 ` Simon Horman 1 sibling, 0 replies; 17+ messages in thread From: Sergei Shtylyov @ 2013-09-04 18:38 UTC (permalink / raw) To: linux-sh Hello. On 08/26/2013 12:52 PM, Kuninori Morimoto wrote: > This patch enables R-Car sound, > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > on Bock-W. > But, it supports PIO transfer only at this point. > User can check sound settings (Dip-switch/PFC etc) > via this patch, but will get under/over flow error > when playback/capture. > Because PIO transfer via SSI will be interrupted > "sampling rate" times per 1 second. > DMA transfer will be supported when HPB-DMAC was > enabled on r8a7778. Looks like Vinod Koul has queued HPP-DMAC for 3.12-rc1 in his 'next' branch, so you can start looking at addign DMA for 3.13. I'll submit the patches enabling HPB-DMAC in {marzen|bockw}_defconfig later... WBR, Sergei ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-08-26 8:52 ` [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) Kuninori Morimoto 2013-09-04 18:38 ` Sergei Shtylyov @ 2013-09-05 5:57 ` Simon Horman 2013-09-05 7:19 ` Simon Horman 1 sibling, 1 reply; 17+ messages in thread From: Simon Horman @ 2013-09-05 5:57 UTC (permalink / raw) To: linux-sh On Mon, Aug 26, 2013 at 01:52:35AM -0700, Kuninori Morimoto wrote: > This patch enables R-Car sound, > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > on Bock-W. > > But, it supports PIO transfer only at this point. > User can check sound settings (Dip-switch/PFC etc) > via this patch, but will get under/over flow error > when playback/capture. > Because PIO transfer via SSI will be interrupted > "sampling rate" times per 1 second. > > DMA transfer will be supported when HPB-DMAC was > enabled on r8a7778. > > You will notice strange ALSA sound card HW > numbering on Bock-W board. > This came from AK4554 strange format on playback/capture. > The format on playback/capture is same on "normal" codec chip, > but AK4554 was different. > Because of that, AK4554 playback/capture are > registered as a different sound card. > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > --- > v1 -> v2 Thanks, I have queued this up for v3.13. There was a bit of diff-noise, please make sure I have applied it correctly. The patch I applied is below: From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> ARM: shmobile: bockw: add R-Car sound support (PIO) This patch enables R-Car sound, AK4643 (CN19) and AK4554 (CN20/CN21) codec chip on Bock-W. But, it supports PIO transfer only at this point. User can check sound settings (Dip-switch/PFC etc) via this patch, but will get under/over flow error when playback/capture. Because PIO transfer via SSI will be interrupted "sampling rate" times per 1 second. DMA transfer will be supported when HPB-DMAC was enabled on r8a7778. You will notice strange ALSA sound card HW numbering on Bock-W board. This came from AK4554 strange format on playback/capture. The format on playback/capture is same on "normal" codec chip, but AK4554 was different. Because of that, AK4554 playback/capture are registered as a different sound card. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> --- arch/arm/mach-shmobile/Kconfig | 2 + arch/arm/mach-shmobile/board-bockw.c | 274 ++++++++++++++++++++++++++++++++++- 2 files changed, 275 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index f76fca6..e37c947 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig @@ -156,6 +156,8 @@ config MACH_KZM9D depends on ARCH_EMEV2 select REGULATOR_FIXED_VOLTAGE if REGULATOR select USE_OF + select SND_SOC_AK4554 if SND_SIMPLE_CARD + select SND_SOC_AK4642 if SND_SIMPLE_CARD config MACH_KZM9D_REFERENCE bool "KZM9D board - Reference Device Tree Implementation" diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c index 2cac3c7..945c62c 100644 --- a/arch/arm/mach-shmobile/board-bockw.c +++ b/arch/arm/mach-shmobile/board-bockw.c @@ -32,9 +32,12 @@ #include <mach/irqs.h> #include <mach/r8a7778.h> #include <asm/mach/arch.h> +#include <sound/rcar_snd.h> +#include <sound/simple_card.h> #define FPGA 0x18200000 #define IRQ0MR 0x30 +#define COMCTLR 0x101c static void __iomem *fpga; /* @@ -62,6 +65,35 @@ static void __iomem *fpga; * SW19 (MMC) 1 pin */ +/* + * SSI settings + * + * SW45: 1-4 side (SSI5 out, ROUT/LOUT CN19 Mid) + * SW46: 1101 (SSI6 Recorde) + * SW47: 1110 (SSI5 Playback) + * SW48: 11 (Recorde power) + * SW49: 1 (SSI slave mode) + * SW50: 1111 (SSI7, SSI8) + * SW51: 1111 (SSI3, SSI4) + * SW54: 1pin (ak4554 FPGA control) + * SW55: 1 (CLKB is 24.5760MHz) + * SW60: 1pin (ak4554 FPGA control) + * SW61: 3pin (use X11 clock) + * SW78: 3-6 (ak4642 connects I2C0) + * + * You can use sound as + * + * hw0: CN19: SSI56-AK4643 + * hw1: CN21: SSI3-AK4554(playback) + * hw2: CN21: SSI4-AK4554(capture) + * hw3: CN20: SSI7-AK4554(playback) + * hw4: CN20: SSI8-AK4554(capture) + * + * this command is required when playback on hw0. + * + * # amixer set "LINEOUT Mixer DACL" on + */ + /* Dummy supplies, where voltage doesn't matter */ static struct regulator_consumer_supply dummy_supplies[] = { REGULATOR_SUPPLY("vddvario", "smsc911x"), @@ -108,7 +140,9 @@ static struct sh_eth_plat_data ether_platform_data __initdata = { static struct i2c_board_info i2c0_devices[] = { { I2C_BOARD_INFO("rx8581", 0x51), - }, + }, { + I2C_BOARD_INFO("ak4643", 0x12), + } }; /* HSPI*/ @@ -147,7 +181,213 @@ static struct sh_mmcif_plat_data sh_mmcif_plat = { MMC_CAP_NEEDS_POLL, }; +/* Sound */ +static struct resource rsnd_resources[] __initdata = { + [RSND_GEN1_SRU] = DEFINE_RES_MEM(0xffd90000, 0x1000), + [RSND_GEN1_SSI] = DEFINE_RES_MEM(0xffd91000, 0x1240), + [RSND_GEN1_ADG] = DEFINE_RES_MEM(0xfffe0000, 0x24), +}; + +static struct rsnd_ssi_platform_info rsnd_ssi[] = { + RSND_SSI_UNUSED, /* SSI 0 */ + RSND_SSI_UNUSED, /* SSI 1 */ + RSND_SSI_UNUSED, /* SSI 2 */ + RSND_SSI_SET(1, 0, gic_iid(0x85), RSND_SSI_PLAY), + RSND_SSI_SET(2, 0, gic_iid(0x85), RSND_SSI_CLK_PIN_SHARE | RSND_SSI_CLK_FROM_ADG), + RSND_SSI_SET(0, 0, gic_iid(0x86), RSND_SSI_PLAY), + RSND_SSI_SET(0, 0, gic_iid(0x86), 0), + RSND_SSI_SET(3, 0, gic_iid(0x86), RSND_SSI_PLAY), + RSND_SSI_SET(4, 0, gic_iid(0x86), RSND_SSI_CLK_PIN_SHARE | RSND_SSI_CLK_FROM_ADG), +}; + +static struct rsnd_scu_platform_info rsnd_scu[9] = { + /* no member at this point */ +}; + +enum { + AK4554_34 = 0, + AK4643_56, + AK4554_78, + SOUND_MAX, +}; + +static int rsnd_codec_power(int id, int enable) +{ + static int sound_user[SOUND_MAX] = {0, 0, 0}; + int *usr = NULL; + u32 bit; + + switch (id) { + case 3: + case 4: + usr = sound_user + AK4554_34; + bit = (1 << 10); + break; + case 5: + case 6: + usr = sound_user + AK4643_56; + bit = (1 << 6); + break; + case 7: + case 8: + usr = sound_user + AK4554_78; + bit = (1 << 7); + break; + } + + if (!usr) + return -EIO; + + if (enable) { + if (*usr = 0) { + u32 val = ioread16(fpga + COMCTLR); + val &= ~bit; + iowrite16(val, fpga + COMCTLR); + } + + (*usr)++; + } else { + if (*usr = 0) + return 0; + + (*usr)--; + + if (*usr = 0) { + u32 val = ioread16(fpga + COMCTLR); + val |= bit; + iowrite16(val, fpga + COMCTLR); + } + } + + return 0; +} + +static int rsnd_start(int id) +{ + return rsnd_codec_power(id, 1); +} + +static int rsnd_stop(int id) +{ + return rsnd_codec_power(id, 0); +} + +static struct rcar_snd_info rsnd_info = { + .flags = RSND_GEN1, + .ssi_info = rsnd_ssi, + .ssi_info_nr = ARRAY_SIZE(rsnd_ssi), + .scu_info = rsnd_scu, + .scu_info_nr = ARRAY_SIZE(rsnd_scu), + .start = rsnd_start, + .stop = rsnd_stop, +}; + +static struct asoc_simple_card_info rsnd_card_info[] = { + /* SSI5, SSI6 */ + { + .name = "AK4643", + .card = "SSI56-AK4643", + .codec = "ak4642-codec.0-0012", + .platform = "rcar_sound", + .daifmt = SND_SOC_DAIFMT_LEFT_J, + .cpu_dai = { + .name = "rsnd-dai.0", + .fmt = SND_SOC_DAIFMT_CBS_CFS, + }, + .codec_dai = { + .name = "ak4642-hifi", + .fmt = SND_SOC_DAIFMT_CBM_CFM, + .sysclk = 11289600, + }, + }, + /* SSI3 */ + { + .name = "AK4554", + .card = "SSI3-AK4554(playback)", + .codec = "ak4554-adc-dac.0", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.1", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_RIGHT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI4 */ + { + .name = "AK4554", + .card = "SSI4-AK4554(capture)", + .codec = "ak4554-adc-dac.0", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.2", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_LEFT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI7 */ + { + .name = "AK4554", + .card = "SSI7-AK4554(playback)", + .codec = "ak4554-adc-dac.1", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.3", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_RIGHT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + }, + /* SSI8 */ + { + .name = "AK4554", + .card = "SSI8-AK4554(capture)", + .codec = "ak4554-adc-dac.1", + .platform = "rcar_sound", + .cpu_dai = { + .name = "rsnd-dai.4", + .fmt = SND_SOC_DAIFMT_CBM_CFM | + SND_SOC_DAIFMT_LEFT_J, + }, + .codec_dai = { + .name = "ak4554-hifi", + }, + } +}; + static const struct pinctrl_map bockw_pinctrl_map[] = { + /* AUDIO */ + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "audio_clk_a", "audio_clk"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "audio_clk_b", "audio_clk"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi34_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi3_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi4_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi5_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi5_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi6_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi6_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi78_ctrl", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi7_data", "ssi"), + PIN_MAP_MUX_GROUP_DEFAULT("rcar_sound", "pfc-r8a7778", + "ssi8_data", "ssi"), /* Ether */ PIN_MAP_MUX_GROUP_DEFAULT("r8a777x-ether", "pfc-r8a7778", "ether_rmii", "ether"), @@ -179,6 +419,8 @@ static const struct pinctrl_map bockw_pinctrl_map[] = { static void __init bockw_init(void) { void __iomem *base; + struct clk *clk; + int i; r8a7778_clock_init(); r8a7778_init_irq_extpin(1); @@ -233,6 +475,36 @@ static void __init bockw_init(void) r8a7778_sdhi_init(0, &sdhi0_info); } + + /* for Audio */ + clk = clk_get(NULL, "audio_clk_b"); + clk_set_rate(clk, 24576000); + clk_put(clk); + rsnd_codec_power(5, 1); /* enable ak4642 */ + + platform_device_register_simple( + "ak4554-adc-dac", 0, NULL, 0); + + platform_device_register_simple( + "ak4554-adc-dac", 1, NULL, 0); + + platform_device_register_resndata( + &platform_bus, "rcar_sound", -1, + rsnd_resources, ARRAY_SIZE(rsnd_resources), + &rsnd_info, sizeof(rsnd_info)); + + for (i = 0; i < ARRAY_SIZE(rsnd_card_info); i++) { + struct platform_device_info cardinfo = { + .parent = &platform_bus, + .name = "asoc-simple-card", + .id = i, + .data = &rsnd_card_info[i], + .size_data = sizeof(struct asoc_simple_card_info), + .dma_mask = ~0, + }; + + platform_device_register_full(&cardinfo); + } } static const char *bockw_boards_compat_dt[] __initdata = { -- 1.8.4 ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-09-05 5:57 ` Simon Horman @ 2013-09-05 7:19 ` Simon Horman 0 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-05 7:19 UTC (permalink / raw) To: Kuninori Morimoto Cc: Laurent, Magnus, Linux-SH, Kuninori Morimoto, broonie@kernel.org, Linux-ALSA [ CC Mark Brown, alsa-devel ] On Thu, Sep 05, 2013 at 02:57:51PM +0900, Simon Horman wrote: > On Mon, Aug 26, 2013 at 01:52:35AM -0700, Kuninori Morimoto wrote: > > This patch enables R-Car sound, > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > on Bock-W. > > > > But, it supports PIO transfer only at this point. > > User can check sound settings (Dip-switch/PFC etc) > > via this patch, but will get under/over flow error > > when playback/capture. > > Because PIO transfer via SSI will be interrupted > > "sampling rate" times per 1 second. > > > > DMA transfer will be supported when HPB-DMAC was > > enabled on r8a7778. > > > > You will notice strange ALSA sound card HW > > numbering on Bock-W board. > > This came from AK4554 strange format on playback/capture. > > The format on playback/capture is same on "normal" codec chip, > > but AK4554 was different. > > Because of that, AK4554 playback/capture are > > registered as a different sound card. > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > --- > > v1 -> v2 > > Thanks, I have queued this up for v3.13. > > There was a bit of diff-noise, please make sure I have applied it > correctly. The patch I applied is below: Unfortunately I didn't read your cover email carefully before queuing this up. I now see that it has dependencies that aren't present in v3.11-rc and thus I have temporarily dropped it. It seems to me that the dependencies could be provided by the topic/car branch of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. Morimoto-san, is this correct? If so, Mark, would it be possible for you to provide topic/car or similar as stable branch for me to use as a base? My intention is to queue these up for v3.13. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-09-05 7:19 ` Simon Horman 0 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-05 7:19 UTC (permalink / raw) To: Kuninori Morimoto Cc: Laurent, Magnus, Linux-SH, Kuninori Morimoto, broonie@kernel.org, Linux-ALSA [ CC Mark Brown, alsa-devel ] On Thu, Sep 05, 2013 at 02:57:51PM +0900, Simon Horman wrote: > On Mon, Aug 26, 2013 at 01:52:35AM -0700, Kuninori Morimoto wrote: > > This patch enables R-Car sound, > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > on Bock-W. > > > > But, it supports PIO transfer only at this point. > > User can check sound settings (Dip-switch/PFC etc) > > via this patch, but will get under/over flow error > > when playback/capture. > > Because PIO transfer via SSI will be interrupted > > "sampling rate" times per 1 second. > > > > DMA transfer will be supported when HPB-DMAC was > > enabled on r8a7778. > > > > You will notice strange ALSA sound card HW > > numbering on Bock-W board. > > This came from AK4554 strange format on playback/capture. > > The format on playback/capture is same on "normal" codec chip, > > but AK4554 was different. > > Because of that, AK4554 playback/capture are > > registered as a different sound card. > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > --- > > v1 -> v2 > > Thanks, I have queued this up for v3.13. > > There was a bit of diff-noise, please make sure I have applied it > correctly. The patch I applied is below: Unfortunately I didn't read your cover email carefully before queuing this up. I now see that it has dependencies that aren't present in v3.11-rc and thus I have temporarily dropped it. It seems to me that the dependencies could be provided by the topic/car branch of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. Morimoto-san, is this correct? If so, Mark, would it be possible for you to provide topic/car or similar as stable branch for me to use as a base? My intention is to queue these up for v3.13. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-09-05 7:19 ` Simon Horman @ 2013-09-05 7:31 ` Simon Horman -1 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-05 7:31 UTC (permalink / raw) To: Kuninori Morimoto Cc: Laurent, Magnus, Linux-SH, Kuninori Morimoto, broonie@kernel.org, Linux-ALSA On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > [ CC Mark Brown, alsa-devel ] > > On Thu, Sep 05, 2013 at 02:57:51PM +0900, Simon Horman wrote: > > On Mon, Aug 26, 2013 at 01:52:35AM -0700, Kuninori Morimoto wrote: > > > This patch enables R-Car sound, > > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > > on Bock-W. > > > > > > But, it supports PIO transfer only at this point. > > > User can check sound settings (Dip-switch/PFC etc) > > > via this patch, but will get under/over flow error > > > when playback/capture. > > > Because PIO transfer via SSI will be interrupted > > > "sampling rate" times per 1 second. > > > > > > DMA transfer will be supported when HPB-DMAC was > > > enabled on r8a7778. > > > > > > You will notice strange ALSA sound card HW > > > numbering on Bock-W board. > > > This came from AK4554 strange format on playback/capture. > > > The format on playback/capture is same on "normal" codec chip, > > > but AK4554 was different. > > > Because of that, AK4554 playback/capture are > > > registered as a different sound card. > > > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > > --- > > > v1 -> v2 > > > > Thanks, I have queued this up for v3.13. > > > > There was a bit of diff-noise, please make sure I have applied it > > correctly. The patch I applied is below: > > Unfortunately I didn't read your cover email carefully before queuing this up. > I now see that it has dependencies that aren't present in v3.11-rc and > thus I have temporarily dropped it. > > It seems to me that the dependencies could be provided by > the topic/car branch of > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. > > Morimoto-san, is this correct? > If so, Mark, would it be possible for you to provide topic/car > or similar as stable branch for me to use as a base? > My intention is to queue these up for v3.13. Alternatively, if the dependencies are likely to appear in v3.12-rc1 or v3.12-rc2 then I can just wait until they are available there. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-09-05 7:31 ` Simon Horman 0 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-05 7:31 UTC (permalink / raw) To: Kuninori Morimoto Cc: Laurent, Magnus, Linux-SH, Kuninori Morimoto, broonie@kernel.org, Linux-ALSA On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > [ CC Mark Brown, alsa-devel ] > > On Thu, Sep 05, 2013 at 02:57:51PM +0900, Simon Horman wrote: > > On Mon, Aug 26, 2013 at 01:52:35AM -0700, Kuninori Morimoto wrote: > > > This patch enables R-Car sound, > > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > > on Bock-W. > > > > > > But, it supports PIO transfer only at this point. > > > User can check sound settings (Dip-switch/PFC etc) > > > via this patch, but will get under/over flow error > > > when playback/capture. > > > Because PIO transfer via SSI will be interrupted > > > "sampling rate" times per 1 second. > > > > > > DMA transfer will be supported when HPB-DMAC was > > > enabled on r8a7778. > > > > > > You will notice strange ALSA sound card HW > > > numbering on Bock-W board. > > > This came from AK4554 strange format on playback/capture. > > > The format on playback/capture is same on "normal" codec chip, > > > but AK4554 was different. > > > Because of that, AK4554 playback/capture are > > > registered as a different sound card. > > > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > > --- > > > v1 -> v2 > > > > Thanks, I have queued this up for v3.13. > > > > There was a bit of diff-noise, please make sure I have applied it > > correctly. The patch I applied is below: > > Unfortunately I didn't read your cover email carefully before queuing this up. > I now see that it has dependencies that aren't present in v3.11-rc and > thus I have temporarily dropped it. > > It seems to me that the dependencies could be provided by > the topic/car branch of > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. > > Morimoto-san, is this correct? > If so, Mark, would it be possible for you to provide topic/car > or similar as stable branch for me to use as a base? > My intention is to queue these up for v3.13. Alternatively, if the dependencies are likely to appear in v3.12-rc1 or v3.12-rc2 then I can just wait until they are available there. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-09-05 7:31 ` Simon Horman @ 2013-09-05 7:40 ` Kuninori Morimoto -1 siblings, 0 replies; 17+ messages in thread From: Kuninori Morimoto @ 2013-09-05 7:40 UTC (permalink / raw) To: Simon; +Cc: Mark Brown, Magnus, Linux-SH, Linux-ALSA, Laurent, Kuninori Morimoto Hi Simon, Mark Thank you for your hard work > > > > This patch enables R-Car sound, > > > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > > > on Bock-W. > > > > > > > > But, it supports PIO transfer only at this point. > > > > User can check sound settings (Dip-switch/PFC etc) > > > > via this patch, but will get under/over flow error > > > > when playback/capture. > > > > Because PIO transfer via SSI will be interrupted > > > > "sampling rate" times per 1 second. > > > > > > > > DMA transfer will be supported when HPB-DMAC was > > > > enabled on r8a7778. > > > > > > > > You will notice strange ALSA sound card HW > > > > numbering on Bock-W board. > > > > This came from AK4554 strange format on playback/capture. > > > > The format on playback/capture is same on "normal" codec chip, > > > > but AK4554 was different. > > > > Because of that, AK4554 playback/capture are > > > > registered as a different sound card. > > > > > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > > > --- > > > > v1 -> v2 > > > > > > Thanks, I have queued this up for v3.13. > > > > > > There was a bit of diff-noise, please make sure I have applied it > > > correctly. The patch I applied is below: > > > > Unfortunately I didn't read your cover email carefully before queuing this up. > > I now see that it has dependencies that aren't present in v3.11-rc and > > thus I have temporarily dropped it. > > > > It seems to me that the dependencies could be provided by > > the topic/car branch of > > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. Yes, exactly. But - topic/car + topic/rcar ;P > > Morimoto-san, is this correct? > > If so, Mark, would it be possible for you to provide topic/car > > or similar as stable branch for me to use as a base? > > My intention is to queue these up for v3.13. > > Alternatively, if the dependencies are likely to > appear in v3.12-rc1 or v3.12-rc2 then I can just wait until > they are available there. Can you help Mark ? Best regards --- Kuninori Morimoto ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-09-05 7:40 ` Kuninori Morimoto 0 siblings, 0 replies; 17+ messages in thread From: Kuninori Morimoto @ 2013-09-05 7:40 UTC (permalink / raw) To: Simon; +Cc: Mark Brown, Magnus, Linux-SH, Linux-ALSA, Laurent, Kuninori Morimoto Hi Simon, Mark Thank you for your hard work > > > > This patch enables R-Car sound, > > > > AK4643 (CN19) and AK4554 (CN20/CN21) codec chip > > > > on Bock-W. > > > > > > > > But, it supports PIO transfer only at this point. > > > > User can check sound settings (Dip-switch/PFC etc) > > > > via this patch, but will get under/over flow error > > > > when playback/capture. > > > > Because PIO transfer via SSI will be interrupted > > > > "sampling rate" times per 1 second. > > > > > > > > DMA transfer will be supported when HPB-DMAC was > > > > enabled on r8a7778. > > > > > > > > You will notice strange ALSA sound card HW > > > > numbering on Bock-W board. > > > > This came from AK4554 strange format on playback/capture. > > > > The format on playback/capture is same on "normal" codec chip, > > > > but AK4554 was different. > > > > Because of that, AK4554 playback/capture are > > > > registered as a different sound card. > > > > > > > > Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> > > > > --- > > > > v1 -> v2 > > > > > > Thanks, I have queued this up for v3.13. > > > > > > There was a bit of diff-noise, please make sure I have applied it > > > correctly. The patch I applied is below: > > > > Unfortunately I didn't read your cover email carefully before queuing this up. > > I now see that it has dependencies that aren't present in v3.11-rc and > > thus I have temporarily dropped it. > > > > It seems to me that the dependencies could be provided by > > the topic/car branch of > > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git. Yes, exactly. But - topic/car + topic/rcar ;P > > Morimoto-san, is this correct? > > If so, Mark, would it be possible for you to provide topic/car > > or similar as stable branch for me to use as a base? > > My intention is to queue these up for v3.13. > > Alternatively, if the dependencies are likely to > appear in v3.12-rc1 or v3.12-rc2 then I can just wait until > they are available there. Can you help Mark ? Best regards --- Kuninori Morimoto ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-09-05 7:19 ` Simon Horman @ 2013-09-05 13:53 ` Mark Brown -1 siblings, 0 replies; 17+ messages in thread From: Mark Brown @ 2013-09-05 13:53 UTC (permalink / raw) To: Simon Horman Cc: Linux-ALSA, Kuninori Morimoto, Linux-SH, Magnus, Laurent, Kuninori Morimoto [-- Attachment #1.1: Type: text/plain, Size: 307 bytes --] On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > Morimoto-san, is this correct? > If so, Mark, would it be possible for you to provide topic/car > or similar as stable branch for me to use as a base? > My intention is to queue these up for v3.13. It's gone to Linus already so it's stable. [-- Attachment #1.2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] [-- Attachment #2: Type: text/plain, Size: 0 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-09-05 13:53 ` Mark Brown 0 siblings, 0 replies; 17+ messages in thread From: Mark Brown @ 2013-09-05 13:53 UTC (permalink / raw) To: Simon Horman Cc: Linux-ALSA, Kuninori Morimoto, Linux-SH, Magnus, Laurent, Kuninori Morimoto [-- Attachment #1: Type: text/plain, Size: 307 bytes --] On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > Morimoto-san, is this correct? > If so, Mark, would it be possible for you to provide topic/car > or similar as stable branch for me to use as a base? > My intention is to queue these up for v3.13. It's gone to Linus already so it's stable. [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) 2013-09-05 13:53 ` Mark Brown @ 2013-09-06 2:16 ` Simon Horman -1 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-06 2:16 UTC (permalink / raw) To: Mark Brown Cc: Kuninori Morimoto, Laurent, Magnus, Linux-SH, Kuninori Morimoto, Linux-ALSA On Thu, Sep 05, 2013 at 02:53:01PM +0100, Mark Brown wrote: > On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > > > Morimoto-san, is this correct? > > If so, Mark, would it be possible for you to provide topic/car > > or similar as stable branch for me to use as a base? > > My intention is to queue these up for v3.13. > > It's gone to Linus already so it's stable. Thanks and sorry for missing that. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) @ 2013-09-06 2:16 ` Simon Horman 0 siblings, 0 replies; 17+ messages in thread From: Simon Horman @ 2013-09-06 2:16 UTC (permalink / raw) To: Mark Brown Cc: Kuninori Morimoto, Laurent, Magnus, Linux-SH, Kuninori Morimoto, Linux-ALSA On Thu, Sep 05, 2013 at 02:53:01PM +0100, Mark Brown wrote: > On Thu, Sep 05, 2013 at 04:19:50PM +0900, Simon Horman wrote: > > > Morimoto-san, is this correct? > > If so, Mark, would it be possible for you to provide topic/car > > or similar as stable branch for me to use as a base? > > My intention is to queue these up for v3.13. > > It's gone to Linus already so it's stable. Thanks and sorry for missing that. ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/5 v2] ARM: shmobile: bockw: add Sound support 2013-08-26 8:50 ` [PATCH 0/5 v2] " Kuninori Morimoto 2013-08-26 8:52 ` [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) Kuninori Morimoto @ 2013-08-30 0:42 ` Kuninori Morimoto 1 sibling, 0 replies; 17+ messages in thread From: Kuninori Morimoto @ 2013-08-30 0:42 UTC (permalink / raw) To: linux-sh Hi Laurent Could you please check this patches ? > These are v2 of R-Car sound support on Bock-W board. > > It enables PIO transfer only at this point, because > 1) PIO settings is the most easy basic settings > 2) HPB-DMAC is still not enabled on r8a7778 > > R-Car sound driver is already supporting DMA transfer on ASoC (= Mark's) branch. > So, it is easy to support DMA transfer if r8a7778 has HPB-DMAC support. > > To enable R-Car sound on Bock-W board, ASoC branch mergeing is required > > git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git :: for-next > > These patches are based on renesas-devel-20130823 > > Kuninori Morimoto (5): > sh-pfc: r8a7778: add SRU/SSI pin support > ARM: shmobile: r8a7778: add SSI/SRU clock support > ARM: shmobile: bockw: enable global use of FPGA > ARM: shmobile: bockw: add R-Car sound support (PIO) > ARM: shmobile: bockw defconfig: add Sound support > > arch/arm/configs/bockw_defconfig | 4 + > arch/arm/mach-shmobile/Kconfig | 2 + > arch/arm/mach-shmobile/board-bockw.c | 289 +++++++++++++++++++++++++++++++- > arch/arm/mach-shmobile/clock-r8a7778.c | 43 ++++- > drivers/pinctrl/sh-pfc/pfc-r8a7778.c | 125 ++++++++++++++ > 5 files changed, 453 insertions(+), 10 deletions(-) > > Best regards > --- > Kuninori Morimoto Best regards --- Kuninori Morimoto ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2013-09-06 2:16 UTC | newest] Thread overview: 17+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-08-07 4:05 [PATCH 0/5] ARM: shmobile: bockw: add Sound support Kuninori Morimoto 2013-08-21 8:50 ` Simon Horman 2013-08-26 8:50 ` [PATCH 0/5 v2] " Kuninori Morimoto 2013-08-26 8:52 ` [PATCH 4/5 v2] ARM: shmobile: bockw: add R-Car sound support (PIO) Kuninori Morimoto 2013-09-04 18:38 ` Sergei Shtylyov 2013-09-05 5:57 ` Simon Horman 2013-09-05 7:19 ` Simon Horman 2013-09-05 7:19 ` Simon Horman 2013-09-05 7:31 ` Simon Horman 2013-09-05 7:31 ` Simon Horman 2013-09-05 7:40 ` Kuninori Morimoto 2013-09-05 7:40 ` Kuninori Morimoto 2013-09-05 13:53 ` Mark Brown 2013-09-05 13:53 ` Mark Brown 2013-09-06 2:16 ` Simon Horman 2013-09-06 2:16 ` Simon Horman 2013-08-30 0:42 ` [PATCH 0/5 v2] ARM: shmobile: bockw: add Sound support Kuninori Morimoto
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.