Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…git/broonie/sound into for-linus

ASoC: Updates for v5.0/v4.20

As ever there's a lot of small and driver specific changes going on
here, but we do also have some relatively large changes in the core
thanks to the hard work of Charles and Morimoto-san:

 - More component transitions from Morimoto-san, I think we're about
   finished with this.  Thanks for all the hard work!
 - Morimoto-san also added a bunch of for_each_foo macros
 - A bunch of cleanups and fixes for DAPM from Charles.
 - MCLK support for several different devices, including CS42L51, STM32
   SAI, and MAX98373.
 - Support for Allwinner A64 CODEC analog, Intel boards with DA7219 and
   MAX98927, Meson AXG PDM inputs, Nuvoton NAU8822, Renesas R8A7744 and
   TI PCM3060.
  • Loading branch information
Takashi Iwai committed Oct 22, 2018
2 parents b5a2293 + 65dfb6d commit 5e3cdec
Show file tree
Hide file tree
Showing 1,680 changed files with 24,348 additions and 11,200 deletions.
9 changes: 9 additions & 0 deletions Documentation/ABI/stable/sysfs-bus-xen-backend
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,12 @@ KernelVersion: 3.0
Contact: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Description:
Number of sectors written by the frontend.

What: /sys/bus/xen-backend/devices/*/state
Date: August 2018
KernelVersion: 4.19
Contact: Joe Jin <joe.jin@oracle.com>
Description:
The state of the device. One of: 'Unknown',
'Initialising', 'Initialised', 'Connected', 'Closing',
'Closed', 'Reconfiguring', 'Reconfigured'.
9 changes: 9 additions & 0 deletions Documentation/ABI/stable/sysfs-devices-system-xen_memory
Original file line number Diff line number Diff line change
Expand Up @@ -75,3 +75,12 @@ Contact: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Description:
Amount (in KiB) of low (or normal) memory in the
balloon.

What: /sys/devices/system/xen_memory/xen_memory0/scrub_pages
Date: September 2018
KernelVersion: 4.20
Contact: xen-devel@lists.xenproject.org
Description:
Control scrubbing pages before returning them to Xen for others domains
use. Can be set with xen_scrub_pages cmdline
parameter. Default value controlled with CONFIG_XEN_SCRUB_PAGES_DEFAULT.
10 changes: 10 additions & 0 deletions Documentation/ABI/testing/sysfs-driver-xen-blkback
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,13 @@ Description:
blkback. If the frontend tries to use more than
max_persistent_grants, the LRU kicks in and starts
removing 5% of max_persistent_grants every 100ms.

What: /sys/module/xen_blkback/parameters/persistent_grant_unused_seconds
Date: August 2018
KernelVersion: 4.19
Contact: Roger Pau Monné <roger.pau@citrix.com>
Description:
How long a persistent grant is allowed to remain
allocated without being in use. The time is in
seconds, 0 means indefinitely long.
The default is 60 seconds.
12 changes: 12 additions & 0 deletions Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3523,6 +3523,12 @@
ramdisk_size= [RAM] Sizes of RAM disks in kilobytes
See Documentation/blockdev/ramdisk.txt.

random.trust_cpu={on,off}
[KNL] Enable or disable trusting the use of the
CPU's random number generator (if available) to
fully seed the kernel's CRNG. Default is controlled
by CONFIG_RANDOM_TRUST_CPU.

ras=option[,option,...] [KNL] RAS-specific options

cec_disable [X86]
Expand Down Expand Up @@ -4994,6 +5000,12 @@
Disables the PV optimizations forcing the HVM guest to
run as generic HVM guest with no PV drivers.

xen_scrub_pages= [XEN]
Boolean option to control scrubbing pages before giving them back
to Xen, for use by other domains. Can be also changed at runtime
with /sys/devices/system/xen_memory/xen_memory0/scrub_pages.
Default value controlled with CONFIG_XEN_SCRUB_PAGES_DEFAULT.

xirc2ps_cs= [NET,PCMCIA]
Format:
<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
Expand Down
4 changes: 2 additions & 2 deletions Documentation/arm64/sve.txt
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ prctl(PR_SVE_SET_VL, unsigned long arg)
thread.

* Changing the vector length causes all of P0..P15, FFR and all bits of
Z0..V31 except for Z0 bits [127:0] .. Z31 bits [127:0] to become
Z0..Z31 except for Z0 bits [127:0] .. Z31 bits [127:0] to become
unspecified. Calling PR_SVE_SET_VL with vl equal to the thread's current
vector length, or calling PR_SVE_SET_VL with the PR_SVE_SET_VL_ONEXEC
flag, does not constitute a change to the vector length for this purpose.
Expand Down Expand Up @@ -500,7 +500,7 @@ References
[2] arch/arm64/include/uapi/asm/ptrace.h
AArch64 Linux ptrace ABI definitions

[3] linux/Documentation/arm64/cpu-feature-registers.txt
[3] Documentation/arm64/cpu-feature-registers.txt

[4] ARM IHI0055C
http://infocenter.arm.com/help/topic/com.arm.doc.ihi0055c/IHI0055C_beta_aapcs64.pdf
Expand Down
4 changes: 4 additions & 0 deletions Documentation/device-mapper/dm-raid.txt
Original file line number Diff line number Diff line change
Expand Up @@ -348,3 +348,7 @@ Version History
1.13.1 Fix deadlock caused by early md_stop_writes(). Also fix size an
state races.
1.13.2 Fix raid redundancy validation and avoid keeping raid set frozen
1.14.0 Fix reshape race on small devices. Fix stripe adding reshape
deadlock/potential data corruption. Update superblock when
specific devices are requested via rebuild. Fix RAID leg
rebuild errors.
3 changes: 1 addition & 2 deletions Documentation/devicetree/bindings/i2c/i2c-imx-lpi2c.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,14 @@
Required properties:
- compatible :
- "fsl,imx7ulp-lpi2c" for LPI2C compatible with the one integrated on i.MX7ULP soc
- "fsl,imx8dv-lpi2c" for LPI2C compatible with the one integrated on i.MX8DV soc
- reg : address and length of the lpi2c master registers
- interrupts : lpi2c interrupt
- clocks : lpi2c clock specifier

Examples:

lpi2c7: lpi2c7@40a50000 {
compatible = "fsl,imx8dv-lpi2c";
compatible = "fsl,imx7ulp-lpi2c";
reg = <0x40A50000 0x10000>;
interrupt-parent = <&intc>;
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
Expand Down
2 changes: 1 addition & 1 deletion Documentation/devicetree/bindings/input/gpio-keys.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Device-Tree bindings for input/gpio_keys.c keyboard driver
Device-Tree bindings for input/keyboard/gpio_keys.c keyboard driver

Required properties:
- compatible = "gpio-keys";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The RISC-V supervisor ISA manual specifies three interrupt sources that are
attached to every HLIC: software interrupts, the timer interrupt, and external
interrupts. Software interrupts are used to send IPIs between cores. The
timer interrupt comes from an architecturally mandated real-time timer that is
controller via Supervisor Binary Interface (SBI) calls and CSR reads. External
controlled via Supervisor Binary Interface (SBI) calls and CSR reads. External
interrupts connect all other device interrupts to the HLIC, which are routed
via the platform-level interrupt controller (PLIC).

Expand All @@ -25,7 +25,15 @@ in the system.

Required properties:
- compatible : "riscv,cpu-intc"
- #interrupt-cells : should be <1>
- #interrupt-cells : should be <1>. The interrupt sources are defined by the
RISC-V supervisor ISA manual, with only the following three interrupts being
defined for supervisor mode:
- Source 1 is the supervisor software interrupt, which can be sent by an SBI
call and is reserved for use by software.
- Source 5 is the supervisor timer interrupt, which can be configured by
SBI calls and implements a one-shot timer.
- Source 9 is the supervisor external interrupt, which chains to all other
device interrupts.
- interrupt-controller : Identifies the node as an interrupt controller

Furthermore, this interrupt-controller MUST be embedded inside the cpu
Expand All @@ -38,7 +46,7 @@ An example device tree entry for a HLIC is show below.
...
cpu1-intc: interrupt-controller {
#interrupt-cells = <1>;
compatible = "riscv,cpu-intc", "sifive,fu540-c000-cpu-intc";
compatible = "sifive,fu540-c000-cpu-intc", "riscv,cpu-intc";
interrupt-controller;
};
};
6 changes: 6 additions & 0 deletions Documentation/devicetree/bindings/net/cpsw.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ Required properties:
- slaves : Specifies number for slaves
- active_slave : Specifies the slave to use for time stamping,
ethtool and SIOCGMIIPHY
- cpsw-phy-sel : Specifies the phandle to the CPSW phy mode selection
device. See also cpsw-phy-sel.txt for it's binding.
Note that in legacy cases cpsw-phy-sel may be
a child device instead of a phandle.

Optional properties:
- ti,hwmods : Must be "cpgmac0"
Expand Down Expand Up @@ -75,6 +79,7 @@ Examples:
cpts_clock_mult = <0x80000000>;
cpts_clock_shift = <29>;
syscon = <&cm>;
cpsw-phy-sel = <&phy_sel>;
cpsw_emac0: slave@0 {
phy_id = <&davinci_mdio>, <0>;
phy-mode = "rgmii-txid";
Expand Down Expand Up @@ -103,6 +108,7 @@ Examples:
cpts_clock_mult = <0x80000000>;
cpts_clock_shift = <29>;
syscon = <&cm>;
cpsw-phy-sel = <&phy_sel>;
cpsw_emac0: slave@0 {
phy_id = <&davinci_mdio>, <0>;
phy-mode = "rgmii-txid";
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/net/macb.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ Required properties:
Use "cdns,pc302-gem" for Picochip picoXcell pc302 and later devices based on
the Cadence GEM, or the generic form: "cdns,gem".
Use "atmel,sama5d2-gem" for the GEM IP (10/100) available on Atmel sama5d2 SoCs.
Use "atmel,sama5d3-macb" for the 10/100Mbit IP available on Atmel sama5d3 SoCs.
Use "atmel,sama5d3-gem" for the Gigabit IP available on Atmel sama5d3 SoCs.
Use "atmel,sama5d4-gem" for the GEM IP (10/100) available on Atmel sama5d4 SoCs.
Use "cdns,zynq-gem" Xilinx Zynq-7xxx SoC.
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/net/sh_eth.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Required properties:
"renesas,ether-r8a7794" if the device is a part of R8A7794 SoC.
"renesas,gether-r8a77980" if the device is a part of R8A77980 SoC.
"renesas,ether-r7s72100" if the device is a part of R7S72100 SoC.
"renesas,ether-r7s9210" if the device is a part of R7S9210 SoC.
"renesas,rcar-gen1-ether" for a generic R-Car Gen1 device.
"renesas,rcar-gen2-ether" for a generic R-Car Gen2 or RZ/G1
device.
Expand Down
54 changes: 54 additions & 0 deletions Documentation/devicetree/bindings/sound/adi,adau1977.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
Analog Devices ADAU1977/ADAU1978/ADAU1979

Datasheets:
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1977.pdf
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1978.pdf
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1979.pdf

This driver supports both the I2C and SPI bus.

Required properties:
- compatible: Should contain one of the following:
"adi,adau1977"
"adi,adau1978"
"adi,adau1979"

- AVDD-supply: analog power supply for the device, please consult
Documentation/devicetree/bindings/regulator/regulator.txt

Optional properties:
- reset-gpio: the reset pin for the chip, for more details consult
Documentation/devicetree/bindings/gpio/gpio.txt

- DVDD-supply: supply voltage for the digital core, please consult
Documentation/devicetree/bindings/regulator/regulator.txt

For required properties on SPI, please consult
Documentation/devicetree/bindings/spi/spi-bus.txt

Required properties on I2C:

- reg: The i2c address. Value depends on the state of ADDR0
and ADDR1, as wired in hardware.

Examples:

adau1977_spi: adau1977@0 {
compatible = "adi,adau1977";
spi-max-frequency = <600000>;

AVDD-supply = <&regulator>;
DVDD-supply = <&regulator_digital>;

reset_gpio = <&gpio 10 GPIO_ACTIVE_LOW>;
};

adau1977_i2c: adau1977@11 {
compatible = "adi,adau1977";
reg = <0x11>;

AVDD-supply = <&regulator>;
DVDD-supply = <&regulator_digital>;

reset_gpio = <&gpio 10 GPIO_ACTIVE_LOW>;
};
24 changes: 24 additions & 0 deletions Documentation/devicetree/bindings/sound/amlogic,axg-pdm.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
* Amlogic Audio PDM input

Required properties:
- compatible: 'amlogic,axg-pdm'
- reg: physical base address of the controller and length of memory
mapped region.
- clocks: list of clock phandle, one for each entry clock-names.
- clock-names: should contain the following:
* "pclk" : peripheral clock.
* "dclk" : pdm digital clock
* "sysclk" : dsp system clock
- #sound-dai-cells: must be 0.

Example of PDM on the A113 SoC:

pdm: audio-controller@ff632000 {
compatible = "amlogic,axg-pdm";
reg = <0x0 0xff632000 0x0 0x34>;
#sound-dai-cells = <0>;
clocks = <&clkc_audio AUD_CLKID_PDM>,
<&clkc_audio AUD_CLKID_PDM_DCLK>,
<&clkc_audio AUD_CLKID_PDM_SYSCLK>;
clock-names = "pclk", "dclk", "sysclk";
};
17 changes: 17 additions & 0 deletions Documentation/devicetree/bindings/sound/cs42l51.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
CS42L51 audio CODEC

Optional properties:

- clocks : a list of phandles + clock-specifiers, one for each entry in
clock-names

- clock-names : must contain "MCLK"

Example:

cs42l51: cs42l51@4a {
compatible = "cirrus,cs42l51";
reg = <0x4a>;
clocks = <&mclk_prov>;
clock-names = "MCLK";
};
23 changes: 23 additions & 0 deletions Documentation/devicetree/bindings/sound/maxim,max98088.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
MAX98088 audio CODEC

This device supports I2C only.

Required properties:

- compatible: "maxim,max98088" or "maxim,max98089".
- reg: The I2C address of the device.

Optional properties:

- clocks: the clock provider of MCLK, see ../clock/clock-bindings.txt section
"consumer" for more information.
- clock-names: must be set to "mclk"

Example:

max98089: codec@10 {
compatible = "maxim,max98089";
reg = <0x10>;
clocks = <&clks IMX6QDL_CLK_CKO2>;
clock-names = "mclk";
};
23 changes: 23 additions & 0 deletions Documentation/devicetree/bindings/sound/mikroe,mikroe-proto.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Mikroe-PROTO audio board

Required properties:
- compatible: "mikroe,mikroe-proto"
- dai-format: Must be "i2s".
- i2s-controller: The phandle of the I2S controller.
- audio-codec: The phandle of the WM8731 audio codec.
Optional properties:
- model: The user-visible name of this sound complex.
- bitclock-master: Indicates dai-link bit clock master; for details see simple-card.txt (1).
- frame-master: Indicates dai-link frame master; for details see simple-card.txt (1).

(1) : There must be the same master for both bit and frame clocks.

Example:
sound {
compatible = "mikroe,mikroe-proto";
model = "wm8731 @ sama5d2_xplained";
i2s-controller = <&i2s0>;
audio-codec = <&wm8731>;
dai-format = "i2s";
};
};
16 changes: 16 additions & 0 deletions Documentation/devicetree/bindings/sound/nau8822.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
NAU8822 audio CODEC

This device supports I2C only.

Required properties:

- compatible : "nuvoton,nau8822"

- reg : the I2C address of the device.

Example:

codec: nau8822@1a {
compatible = "nuvoton,nau8822";
reg = <0x1a>;
};
17 changes: 17 additions & 0 deletions Documentation/devicetree/bindings/sound/pcm3060.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
PCM3060 audio CODEC

This driver supports both I2C and SPI.

Required properties:

- compatible: "ti,pcm3060"

- reg : the I2C address of the device for I2C, the chip select
number for SPI.

Examples:

pcm3060: pcm3060@46 {
compatible = "ti,pcm3060";
reg = <0x46>;
};
Loading

0 comments on commit 5e3cdec

Please sign in to comment.