Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 998052b7 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge branch 'for-linus' into for-next

Merging for-linus branch for syncing the latest STAC/IDT codec
changes to be affected by the upcoming hda-jack rewrites.
parents e7e69265 7a9744cb
Loading
Loading
Loading
Loading
+107 −0
Original line number Diff line number Diff line
* Toshiba TC3589x multi-purpose expander

The Toshiba TC3589x series are I2C-based MFD devices which may expose the
following built-in devices: gpio, keypad, rotator (vibrator), PWM (for
e.g. LEDs or vibrators) The included models are:

- TC35890
- TC35892
- TC35893
- TC35894
- TC35895
- TC35896

Required properties:
 - compatible : must be "toshiba,tc35890", "toshiba,tc35892", "toshiba,tc35893",
   "toshiba,tc35894", "toshiba,tc35895" or "toshiba,tc35896"
 - reg : I2C address of the device
 - interrupt-parent : specifies which IRQ controller we're connected to
 - interrupts : the interrupt on the parent the controller is connected to
 - interrupt-controller : marks the device node as an interrupt controller
 - #interrupt-cells : should be <1>, the first cell is the IRQ offset on this
   TC3589x interrupt controller.

Optional nodes:

- GPIO
  This GPIO module inside the TC3589x has 24 (TC35890, TC35892) or 20
  (other models) GPIO lines.
 - compatible : must be "toshiba,tc3589x-gpio"
 - interrupts : interrupt on the parent, which must be the tc3589x MFD device
 - interrupt-controller : marks the device node as an interrupt controller
 - #interrupt-cells : should be <2>, the first cell is the IRQ offset on this
   TC3589x GPIO interrupt controller, the second cell is the interrupt flags
   in accordance with <dt-bindings/interrupt-controller/irq.h>. The following
   flags are valid:
   - IRQ_TYPE_LEVEL_LOW
   - IRQ_TYPE_LEVEL_HIGH
   - IRQ_TYPE_EDGE_RISING
   - IRQ_TYPE_EDGE_FALLING
   - IRQ_TYPE_EDGE_BOTH
 - gpio-controller : marks the device node as a GPIO controller
 - #gpio-cells : should be <2>, the first cell is the GPIO offset on this
   GPIO controller, the second cell is the flags.

- Keypad
  This keypad is the same on all variants, supporting up to 96 different
  keys. The linux-specific properties are modeled on those already existing
  in other input drivers.
 - compatible : must be "toshiba,tc3589x-keypad"
 - debounce-delay-ms : debounce interval in milliseconds
 - keypad,num-rows : number of rows in the matrix, see
   bindings/input/matrix-keymap.txt
 - keypad,num-columns : number of columns in the matrix, see
   bindings/input/matrix-keymap.txt
 - linux,keymap: the definition can be found in
   bindings/input/matrix-keymap.txt
 - linux,no-autorepeat: do no enable autorepeat feature.
 - linux,wakeup: use any event on keypad as wakeup event.

Example:

tc35893@44 {
	compatible = "toshiba,tc35893";
	reg = <0x44>;
	interrupt-parent = <&gpio6>;
	interrupts = <26 IRQ_TYPE_EDGE_RISING>;

	interrupt-controller;
	#interrupt-cells = <1>;

	tc3589x_gpio {
		compatible = "toshiba,tc3589x-gpio";
		interrupts = <0>;

		interrupt-controller;
		#interrupt-cells = <2>;
		gpio-controller;
		#gpio-cells = <2>;
	};
	tc3589x_keypad {
		compatible = "toshiba,tc3589x-keypad";
		interrupts = <6>;
		debounce-delay-ms = <4>;
		keypad,num-columns = <8>;
		keypad,num-rows = <8>;
		linux,no-autorepeat;
		linux,wakeup;
		linux,keymap = <0x0301006b
				0x04010066
				0x06040072
				0x040200d7
				0x0303006a
				0x0205000e
				0x0607008b
				0x0500001c
				0x0403000b
				0x03040034
				0x05020067
				0x0305006c
				0x040500e7
				0x0005009e
				0x06020073
				0x01030039
				0x07060069
				0x050500d9>;
	};
};
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ Optional properties:
				width of 8 is assumed.

 - ti,nand-ecc-opt:		A string setting the ECC layout to use. One of:
		"sw"		<deprecated> use "ham1" instead
		"sw"		1-bit Hamming ecc code via software
		"hw"		<deprecated> use "ham1" instead
		"hw-romcode"	<deprecated> use "ham1" instead
		"ham1"		1-bit Hamming ecc code
+1 −1
Original line number Diff line number Diff line
@@ -62,7 +62,7 @@ Example:
		#gpio-cells = <2>;
		interrupt-controller;
		#interrupt-cells = <2>;
		interrupts = <0 32 0x4>;
		interrupts = <0 16 0x4>;

		pinctrl-names = "default";
		pinctrl-0 = <&gsbi5_uart_default>;
+1 −1
Original line number Diff line number Diff line
ADI AXI-SPDIF controller

Required properties:
 - compatible : Must be "adi,axi-spdif-1.00.a"
 - compatible : Must be "adi,axi-spdif-tx-1.00.a"
 - reg : Must contain SPDIF core's registers location and length
 - clocks : Pairs of phandle and specifier referencing the controller's clocks.
   The controller expects two clocks, the clock used for the AXI interface and
+8 −6
Original line number Diff line number Diff line
@@ -56,10 +56,10 @@ The dma_buf buffer sharing API usage contains the following steps:
				     size_t size, int flags,
				     const char *exp_name)

   If this succeeds, dma_buf_export allocates a dma_buf structure, and returns a
   pointer to the same. It also associates an anonymous file with this buffer,
   so it can be exported. On failure to allocate the dma_buf object, it returns
   NULL.
   If this succeeds, dma_buf_export_named allocates a dma_buf structure, and
   returns a pointer to the same. It also associates an anonymous file with this
   buffer, so it can be exported. On failure to allocate the dma_buf object,
   it returns NULL.

   'exp_name' is the name of exporter - to facilitate information while
   debugging.
@@ -76,7 +76,7 @@ The dma_buf buffer sharing API usage contains the following steps:
   drivers and/or processes.

   Interface:
      int dma_buf_fd(struct dma_buf *dmabuf)
      int dma_buf_fd(struct dma_buf *dmabuf, int flags)

   This API installs an fd for the anonymous file associated with this buffer;
   returns either 'fd', or error.
@@ -157,7 +157,9 @@ to request use of buffer for allocation.
   "dma_buf->ops->" indirection from the users of this interface.

   In struct dma_buf_ops, unmap_dma_buf is defined as
      void (*unmap_dma_buf)(struct dma_buf_attachment *, struct sg_table *);
      void (*unmap_dma_buf)(struct dma_buf_attachment *,
                            struct sg_table *,
                            enum dma_data_direction);

   unmap_dma_buf signifies the end-of-DMA for the attachment provided. Like
   map_dma_buf, this API also must be implemented by the exporter.
Loading