Re: [PATCH 13/16] ASoC: madera: Add common support for Cirrus Logic Madera codecs
Hi Richard, [auto build test ERROR on asoc/for-next] [also build test ERROR on v4.11-rc6] [cannot apply to next-20170413] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Richard-Fitzgerald/Add-support-for-Cirrus-Logic-CS47L35-L85-L90-L91-codecs/20170406-050555 base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next config: x86_64-randconfig-s4-04150043 (attached as .config) compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All errors (new ones prefixed by >>): >> drivers/pinctrl/pinctrl-madera.c:580:20: error: >> 'pinconf_generic_dt_node_to_map_all' undeclared here (not in a function) .dt_node_to_map = pinconf_generic_dt_node_to_map_all, ^~ -- drivers//gpio/gpio-madera.c: In function 'madera_gpio_probe': >> drivers//gpio/gpio-madera.c:126:25: error: 'struct gpio_chip' has no member >> named 'of_node' madera_gpio->gpio_chip.of_node = pdev->dev.of_node; ^ vim +/pinconf_generic_dt_node_to_map_all +580 drivers/pinctrl/pinctrl-madera.c ac9870b2 Richard Fitzgerald 2017-04-05 564 return 0; ac9870b2 Richard Fitzgerald 2017-04-05 565 } ac9870b2 Richard Fitzgerald 2017-04-05 566 ac9870b2 Richard Fitzgerald 2017-04-05 567 static void madera_pin_dbg_show(struct pinctrl_dev *pctldev, ac9870b2 Richard Fitzgerald 2017-04-05 568 struct seq_file *s, ac9870b2 Richard Fitzgerald 2017-04-05 569 unsigned int offset) ac9870b2 Richard Fitzgerald 2017-04-05 570 { ac9870b2 Richard Fitzgerald 2017-04-05 571 seq_puts(s, " madera-pinctrl"); ac9870b2 Richard Fitzgerald 2017-04-05 572 } ac9870b2 Richard Fitzgerald 2017-04-05 573 ac9870b2 Richard Fitzgerald 2017-04-05 574 ac9870b2 Richard Fitzgerald 2017-04-05 575 static const struct pinctrl_ops madera_pin_group_ops = { ac9870b2 Richard Fitzgerald 2017-04-05 576 .get_groups_count = madera_get_groups_count, ac9870b2 Richard Fitzgerald 2017-04-05 577 .get_group_name = madera_get_group_name, ac9870b2 Richard Fitzgerald 2017-04-05 578 .get_group_pins = madera_get_group_pins, ac9870b2 Richard Fitzgerald 2017-04-05 579 .pin_dbg_show = madera_pin_dbg_show, ac9870b2 Richard Fitzgerald 2017-04-05 @580 .dt_node_to_map = pinconf_generic_dt_node_to_map_all, ac9870b2 Richard Fitzgerald 2017-04-05 581 .dt_free_map = pinctrl_utils_free_map, ac9870b2 Richard Fitzgerald 2017-04-05 582 }; ac9870b2 Richard Fitzgerald 2017-04-05 583 ac9870b2 Richard Fitzgerald 2017-04-05 584 static int madera_mux_get_funcs_count(struct pinctrl_dev *pctldev) ac9870b2 Richard Fitzgerald 2017-04-05 585 { ac9870b2 Richard Fitzgerald 2017-04-05 586 return ARRAY_SIZE(madera_mux_funcs); ac9870b2 Richard Fitzgerald 2017-04-05 587 } ac9870b2 Richard Fitzgerald 2017-04-05 588 :: The code at line 580 was first introduced by commit :: ac9870b2d7132c21e78becd0fe396837e334c78b pinctrl: madera: Add driver for Cirrus Logic Madera codecs :: TO: Richard Fitzgerald :: CC: 0day robot --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: application/gzip
Re: [PATCH 13/16] ASoC: madera: Add common support for Cirrus Logic Madera codecs
On Wed, Apr 05, 2017 at 11:08:01AM +0100, Richard Fitzgerald wrote: > The Cirrus Logic Madera codecs are a family of related codecs with > extensive digital and analogue I/O, digital mixing and routing, > signal processing and programmable DSPs. > > This patch adds common support code shared by all Madera codecs. > > Signed-off-by: Charles Keepax > Signed-off-by: Nariman Poushin > Signed-off-by: Nikesh Oswal > Signed-off-by: Piotr Stankiewicz > Signed-off-by: Ajit Pandey > Signed-off-by: Richard Fitzgerald > --- > Documentation/devicetree/bindings/sound/madera.txt | 63 + > MAINTAINERS|5 + > include/dt-bindings/sound/madera.h | 18 + Acked-by: Rob Herring > include/sound/madera-pdata.h | 70 + > sound/soc/codecs/Kconfig |5 + > sound/soc/codecs/Makefile |2 + > sound/soc/codecs/madera.c | 4430 > > sound/soc/codecs/madera.h | 470 +++ > 8 files changed, 5063 insertions(+) > create mode 100644 Documentation/devicetree/bindings/sound/madera.txt > create mode 100644 include/dt-bindings/sound/madera.h > create mode 100644 include/sound/madera-pdata.h > create mode 100644 sound/soc/codecs/madera.c > create mode 100644 sound/soc/codecs/madera.h
[PATCH 13/16] ASoC: madera: Add common support for Cirrus Logic Madera codecs
The Cirrus Logic Madera codecs are a family of related codecs with extensive digital and analogue I/O, digital mixing and routing, signal processing and programmable DSPs. This patch adds common support code shared by all Madera codecs. Signed-off-by: Charles Keepax Signed-off-by: Nariman Poushin Signed-off-by: Nikesh Oswal Signed-off-by: Piotr Stankiewicz Signed-off-by: Ajit Pandey Signed-off-by: Richard Fitzgerald --- Documentation/devicetree/bindings/sound/madera.txt | 63 + MAINTAINERS|5 + include/dt-bindings/sound/madera.h | 18 + include/sound/madera-pdata.h | 70 + sound/soc/codecs/Kconfig |5 + sound/soc/codecs/Makefile |2 + sound/soc/codecs/madera.c | 4430 sound/soc/codecs/madera.h | 470 +++ 8 files changed, 5063 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/madera.txt create mode 100644 include/dt-bindings/sound/madera.h create mode 100644 include/sound/madera-pdata.h create mode 100644 sound/soc/codecs/madera.c create mode 100644 sound/soc/codecs/madera.h diff --git a/Documentation/devicetree/bindings/sound/madera.txt b/Documentation/devicetree/bindings/sound/madera.txt new file mode 100644 index 000..59e7a66 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/madera.txt @@ -0,0 +1,63 @@ +Cirrus Logic Madera class audio codecs + +This is a subnode of the parent mfd node. + +See also the core bindings for the parent MFD driver: +See Documentation/devicetree/bindings/mfd/madera.txt + +Required properties: + - compatible : One of the following chip-specific strings: +"cirrus,cs47l35-codec" +"cirrus,cs47l85-codec" +"cirrus,cs47l90-codec" + +Optional properties: + - cirrus,dmic-ref : DMIC bias reference for each input, one cell per input + +A value of 0 indicates MICVDD and is the default, other +values depend on the codec - see the datasheet for the INn_DMIC_SUP field + + - cirrus,inmode : A list of input mode settings for each input. A maximum +of 16 cells, with four cells per input in the order INnAL, INnAR INnBL INnBR. +For non-muxed inputs the first two cells for that input set the mode for +the left and right channel and the second two cells must be 0. +For muxed inputs the first two cells for that input set the mode of the +left and right A inputs and the second two cells set the mode of the left +and right B inputs. +Valid mode values are one of the MADERA_INMODE_xxx (see +include/dt-bindings/sound/madera.h). If the array is shorter than the number +of inputs the unspecified inputs default to MADERA_INMODE_DIFF. + + - cirrus,out-mono : Mono bit for each output, must contain six cells if +specified. A non-zero value indicates the corresponding output is mono. + + - cirrus,max-channels-clocked : The maximum number of channels to be clocked +on each AIF, useful for I2S systems with multiple data lines being mastered. +One cell for each AIF, use a value of zero for AIFs that should be handled +normally. + + - cirrus,pdm-fmt : PDM speaker data format, must contain 2 cells +(OUT5 and OUT6). See the datasheet for values. +The second cell is ignored for codecs that do not have OUT6. + + - cirrus,pdm-mute : PDM speaker mute setting, must contain 2 cells +(OUT5 and OUT6). See the datasheet for values. +The second cell is ignored for codecs that do not have OUT6. + +Example: + +codec: cs47l35@0 { + compatible = "cirrus,cs47l35"; + + codec { + compatible = "cirrus,cs47l35-codec"; + cirrus,dmic-ref = <0 0 1 0>; + cirrus,dmic-clksrc = <0 0 0 0>; + cirrus,inmode = < + 2 2 1 1 /* IN1A digital, IN1B single-ended */ + 0 0 0 0 /* IN2 differential */ + >; + cirrus,out-mono = <0 0 0 0 0 0>; + cirrus,max-channels-clocked = <2 0 0>; + }; +}; diff --git a/MAINTAINERS b/MAINTAINERS index 0183692..b29f539 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3271,15 +3271,20 @@ F: Documentation/devicetree/bindings/interrupt-controller/cirrus,madera.txt F: Documentation/devicetree/bindings/mfd/madera.txt F: Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt F: Documentation/devicetree/bindings/regulator/madera* +F: Documentation/devicetree/bindings/sound/madera.txt +F: include/dt-bindings/sound/madera* F: include/linux/irqchip/irq-madera* F: include/linux/mfd/madera/* F: include/linux/regulator/madera* +F: include/sound/madera* F: drivers/gpio/gpio-madera* F: drivers/irqchip/irq-madera* F: drivers/mfd/madera* F: drivers/mfd/cs47l* F: drivers/pinctrl/pinctrl-madera* F: drivers/regulator/made