diff options
Diffstat (limited to 'Documentation')
28 files changed, 506 insertions, 89 deletions
diff --git a/Documentation/ABI/testing/sysfs-tty b/Documentation/ABI/testing/sysfs-tty index a2ccec35ffce..ad22fb0ee765 100644 --- a/Documentation/ABI/testing/sysfs-tty +++ b/Documentation/ABI/testing/sysfs-tty | |||
@@ -3,8 +3,7 @@ Date: Nov 2010 | |||
3 | Contact: Kay Sievers <kay.sievers@vrfy.org> | 3 | Contact: Kay Sievers <kay.sievers@vrfy.org> |
4 | Description: | 4 | Description: |
5 | Shows the list of currently configured | 5 | Shows the list of currently configured |
6 | tty devices used for the console, | 6 | console devices, like 'tty1 ttyS0'. |
7 | like 'tty1 ttyS0'. | ||
8 | The last entry in the file is the active | 7 | The last entry in the file is the active |
9 | device connected to /dev/console. | 8 | device connected to /dev/console. |
10 | The file supports poll() to detect virtual | 9 | The file supports poll() to detect virtual |
diff --git a/Documentation/PCI/MSI-HOWTO.txt b/Documentation/PCI/MSI-HOWTO.txt index a8d01005f480..10a93696e55a 100644 --- a/Documentation/PCI/MSI-HOWTO.txt +++ b/Documentation/PCI/MSI-HOWTO.txt | |||
@@ -82,7 +82,19 @@ Most of the hard work is done for the driver in the PCI layer. It simply | |||
82 | has to request that the PCI layer set up the MSI capability for this | 82 | has to request that the PCI layer set up the MSI capability for this |
83 | device. | 83 | device. |
84 | 84 | ||
85 | 4.2.1 pci_enable_msi_range | 85 | 4.2.1 pci_enable_msi |
86 | |||
87 | int pci_enable_msi(struct pci_dev *dev) | ||
88 | |||
89 | A successful call allocates ONE interrupt to the device, regardless | ||
90 | of how many MSIs the device supports. The device is switched from | ||
91 | pin-based interrupt mode to MSI mode. The dev->irq number is changed | ||
92 | to a new number which represents the message signaled interrupt; | ||
93 | consequently, this function should be called before the driver calls | ||
94 | request_irq(), because an MSI is delivered via a vector that is | ||
95 | different from the vector of a pin-based interrupt. | ||
96 | |||
97 | 4.2.2 pci_enable_msi_range | ||
86 | 98 | ||
87 | int pci_enable_msi_range(struct pci_dev *dev, int minvec, int maxvec) | 99 | int pci_enable_msi_range(struct pci_dev *dev, int minvec, int maxvec) |
88 | 100 | ||
@@ -147,6 +159,11 @@ static int foo_driver_enable_msi(struct pci_dev *pdev, int nvec) | |||
147 | return pci_enable_msi_range(pdev, nvec, nvec); | 159 | return pci_enable_msi_range(pdev, nvec, nvec); |
148 | } | 160 | } |
149 | 161 | ||
162 | Note, unlike pci_enable_msi_exact() function, which could be also used to | ||
163 | enable a particular number of MSI-X interrupts, pci_enable_msi_range() | ||
164 | returns either a negative errno or 'nvec' (not negative errno or 0 - as | ||
165 | pci_enable_msi_exact() does). | ||
166 | |||
150 | 4.2.1.3 Single MSI mode | 167 | 4.2.1.3 Single MSI mode |
151 | 168 | ||
152 | The most notorious example of the request type described above is | 169 | The most notorious example of the request type described above is |
@@ -158,7 +175,27 @@ static int foo_driver_enable_single_msi(struct pci_dev *pdev) | |||
158 | return pci_enable_msi_range(pdev, 1, 1); | 175 | return pci_enable_msi_range(pdev, 1, 1); |
159 | } | 176 | } |
160 | 177 | ||
161 | 4.2.2 pci_disable_msi | 178 | Note, unlike pci_enable_msi() function, which could be also used to |
179 | enable the single MSI mode, pci_enable_msi_range() returns either a | ||
180 | negative errno or 1 (not negative errno or 0 - as pci_enable_msi() | ||
181 | does). | ||
182 | |||
183 | 4.2.3 pci_enable_msi_exact | ||
184 | |||
185 | int pci_enable_msi_exact(struct pci_dev *dev, int nvec) | ||
186 | |||
187 | This variation on pci_enable_msi_range() call allows a device driver to | ||
188 | request exactly 'nvec' MSIs. | ||
189 | |||
190 | If this function returns a negative number, it indicates an error and | ||
191 | the driver should not attempt to request any more MSI interrupts for | ||
192 | this device. | ||
193 | |||
194 | By contrast with pci_enable_msi_range() function, pci_enable_msi_exact() | ||
195 | returns zero in case of success, which indicates MSI interrupts have been | ||
196 | successfully allocated. | ||
197 | |||
198 | 4.2.4 pci_disable_msi | ||
162 | 199 | ||
163 | void pci_disable_msi(struct pci_dev *dev) | 200 | void pci_disable_msi(struct pci_dev *dev) |
164 | 201 | ||
@@ -172,7 +209,7 @@ on any interrupt for which it previously called request_irq(). | |||
172 | Failure to do so results in a BUG_ON(), leaving the device with | 209 | Failure to do so results in a BUG_ON(), leaving the device with |
173 | MSI enabled and thus leaking its vector. | 210 | MSI enabled and thus leaking its vector. |
174 | 211 | ||
175 | 4.2.3 pci_msi_vec_count | 212 | 4.2.4 pci_msi_vec_count |
176 | 213 | ||
177 | int pci_msi_vec_count(struct pci_dev *dev) | 214 | int pci_msi_vec_count(struct pci_dev *dev) |
178 | 215 | ||
@@ -257,8 +294,8 @@ possible, likely up to the limit returned by pci_msix_vec_count() function: | |||
257 | 294 | ||
258 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) | 295 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) |
259 | { | 296 | { |
260 | return pci_enable_msi_range(adapter->pdev, adapter->msix_entries, | 297 | return pci_enable_msix_range(adapter->pdev, adapter->msix_entries, |
261 | 1, nvec); | 298 | 1, nvec); |
262 | } | 299 | } |
263 | 300 | ||
264 | Note the value of 'minvec' parameter is 1. As 'minvec' is inclusive, | 301 | Note the value of 'minvec' parameter is 1. As 'minvec' is inclusive, |
@@ -269,8 +306,8 @@ In this case the function could look like this: | |||
269 | 306 | ||
270 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) | 307 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) |
271 | { | 308 | { |
272 | return pci_enable_msi_range(adapter->pdev, adapter->msix_entries, | 309 | return pci_enable_msix_range(adapter->pdev, adapter->msix_entries, |
273 | FOO_DRIVER_MINIMUM_NVEC, nvec); | 310 | FOO_DRIVER_MINIMUM_NVEC, nvec); |
274 | } | 311 | } |
275 | 312 | ||
276 | 4.3.1.2 Exact number of MSI-X interrupts | 313 | 4.3.1.2 Exact number of MSI-X interrupts |
@@ -282,10 +319,15 @@ parameters: | |||
282 | 319 | ||
283 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) | 320 | static int foo_driver_enable_msix(struct foo_adapter *adapter, int nvec) |
284 | { | 321 | { |
285 | return pci_enable_msi_range(adapter->pdev, adapter->msix_entries, | 322 | return pci_enable_msix_range(adapter->pdev, adapter->msix_entries, |
286 | nvec, nvec); | 323 | nvec, nvec); |
287 | } | 324 | } |
288 | 325 | ||
326 | Note, unlike pci_enable_msix_exact() function, which could be also used to | ||
327 | enable a particular number of MSI-X interrupts, pci_enable_msix_range() | ||
328 | returns either a negative errno or 'nvec' (not negative errno or 0 - as | ||
329 | pci_enable_msix_exact() does). | ||
330 | |||
289 | 4.3.1.3 Specific requirements to the number of MSI-X interrupts | 331 | 4.3.1.3 Specific requirements to the number of MSI-X interrupts |
290 | 332 | ||
291 | As noted above, there could be devices that can not operate with just any | 333 | As noted above, there could be devices that can not operate with just any |
@@ -332,7 +374,64 @@ Note how pci_enable_msix_range() return value is analized for a fallback - | |||
332 | any error code other than -ENOSPC indicates a fatal error and should not | 374 | any error code other than -ENOSPC indicates a fatal error and should not |
333 | be retried. | 375 | be retried. |
334 | 376 | ||
335 | 4.3.2 pci_disable_msix | 377 | 4.3.2 pci_enable_msix_exact |
378 | |||
379 | int pci_enable_msix_exact(struct pci_dev *dev, | ||
380 | struct msix_entry *entries, int nvec) | ||
381 | |||
382 | This variation on pci_enable_msix_range() call allows a device driver to | ||
383 | request exactly 'nvec' MSI-Xs. | ||
384 | |||
385 | If this function returns a negative number, it indicates an error and | ||
386 | the driver should not attempt to allocate any more MSI-X interrupts for | ||
387 | this device. | ||
388 | |||
389 | By contrast with pci_enable_msix_range() function, pci_enable_msix_exact() | ||
390 | returns zero in case of success, which indicates MSI-X interrupts have been | ||
391 | successfully allocated. | ||
392 | |||
393 | Another version of a routine that enables MSI-X mode for a device with | ||
394 | specific requirements described in chapter 4.3.1.3 might look like this: | ||
395 | |||
396 | /* | ||
397 | * Assume 'minvec' and 'maxvec' are non-zero | ||
398 | */ | ||
399 | static int foo_driver_enable_msix(struct foo_adapter *adapter, | ||
400 | int minvec, int maxvec) | ||
401 | { | ||
402 | int rc; | ||
403 | |||
404 | minvec = roundup_pow_of_two(minvec); | ||
405 | maxvec = rounddown_pow_of_two(maxvec); | ||
406 | |||
407 | if (minvec > maxvec) | ||
408 | return -ERANGE; | ||
409 | |||
410 | retry: | ||
411 | rc = pci_enable_msix_exact(adapter->pdev, | ||
412 | adapter->msix_entries, maxvec); | ||
413 | |||
414 | /* | ||
415 | * -ENOSPC is the only error code allowed to be analyzed | ||
416 | */ | ||
417 | if (rc == -ENOSPC) { | ||
418 | if (maxvec == 1) | ||
419 | return -ENOSPC; | ||
420 | |||
421 | maxvec /= 2; | ||
422 | |||
423 | if (minvec > maxvec) | ||
424 | return -ENOSPC; | ||
425 | |||
426 | goto retry; | ||
427 | } else if (rc < 0) { | ||
428 | return rc; | ||
429 | } | ||
430 | |||
431 | return maxvec; | ||
432 | } | ||
433 | |||
434 | 4.3.3 pci_disable_msix | ||
336 | 435 | ||
337 | void pci_disable_msix(struct pci_dev *dev) | 436 | void pci_disable_msix(struct pci_dev *dev) |
338 | 437 | ||
diff --git a/Documentation/device-mapper/cache.txt b/Documentation/device-mapper/cache.txt index e6b72d355151..68c0f517c60e 100644 --- a/Documentation/device-mapper/cache.txt +++ b/Documentation/device-mapper/cache.txt | |||
@@ -124,12 +124,11 @@ the default being 204800 sectors (or 100MB). | |||
124 | Updating on-disk metadata | 124 | Updating on-disk metadata |
125 | ------------------------- | 125 | ------------------------- |
126 | 126 | ||
127 | On-disk metadata is committed every time a REQ_SYNC or REQ_FUA bio is | 127 | On-disk metadata is committed every time a FLUSH or FUA bio is written. |
128 | written. If no such requests are made then commits will occur every | 128 | If no such requests are made then commits will occur every second. This |
129 | second. This means the cache behaves like a physical disk that has a | 129 | means the cache behaves like a physical disk that has a volatile write |
130 | write cache (the same is true of the thin-provisioning target). If | 130 | cache. If power is lost you may lose some recent writes. The metadata |
131 | power is lost you may lose some recent writes. The metadata should | 131 | should always be consistent in spite of any crash. |
132 | always be consistent in spite of any crash. | ||
133 | 132 | ||
134 | The 'dirty' state for a cache block changes far too frequently for us | 133 | The 'dirty' state for a cache block changes far too frequently for us |
135 | to keep updating it on the fly. So we treat it as a hint. In normal | 134 | to keep updating it on the fly. So we treat it as a hint. In normal |
diff --git a/Documentation/device-mapper/thin-provisioning.txt b/Documentation/device-mapper/thin-provisioning.txt index 8a7a3d46e0da..05a27e9442bd 100644 --- a/Documentation/device-mapper/thin-provisioning.txt +++ b/Documentation/device-mapper/thin-provisioning.txt | |||
@@ -116,6 +116,35 @@ Resuming a device with a new table itself triggers an event so the | |||
116 | userspace daemon can use this to detect a situation where a new table | 116 | userspace daemon can use this to detect a situation where a new table |
117 | already exceeds the threshold. | 117 | already exceeds the threshold. |
118 | 118 | ||
119 | A low water mark for the metadata device is maintained in the kernel and | ||
120 | will trigger a dm event if free space on the metadata device drops below | ||
121 | it. | ||
122 | |||
123 | Updating on-disk metadata | ||
124 | ------------------------- | ||
125 | |||
126 | On-disk metadata is committed every time a FLUSH or FUA bio is written. | ||
127 | If no such requests are made then commits will occur every second. This | ||
128 | means the thin-provisioning target behaves like a physical disk that has | ||
129 | a volatile write cache. If power is lost you may lose some recent | ||
130 | writes. The metadata should always be consistent in spite of any crash. | ||
131 | |||
132 | If data space is exhausted the pool will either error or queue IO | ||
133 | according to the configuration (see: error_if_no_space). If metadata | ||
134 | space is exhausted or a metadata operation fails: the pool will error IO | ||
135 | until the pool is taken offline and repair is performed to 1) fix any | ||
136 | potential inconsistencies and 2) clear the flag that imposes repair. | ||
137 | Once the pool's metadata device is repaired it may be resized, which | ||
138 | will allow the pool to return to normal operation. Note that if a pool | ||
139 | is flagged as needing repair, the pool's data and metadata devices | ||
140 | cannot be resized until repair is performed. It should also be noted | ||
141 | that when the pool's metadata space is exhausted the current metadata | ||
142 | transaction is aborted. Given that the pool will cache IO whose | ||
143 | completion may have already been acknowledged to upper IO layers | ||
144 | (e.g. filesystem) it is strongly suggested that consistency checks | ||
145 | (e.g. fsck) be performed on those layers when repair of the pool is | ||
146 | required. | ||
147 | |||
119 | Thin provisioning | 148 | Thin provisioning |
120 | ----------------- | 149 | ----------------- |
121 | 150 | ||
@@ -258,10 +287,9 @@ ii) Status | |||
258 | should register for the event and then check the target's status. | 287 | should register for the event and then check the target's status. |
259 | 288 | ||
260 | held metadata root: | 289 | held metadata root: |
261 | The location, in sectors, of the metadata root that has been | 290 | The location, in blocks, of the metadata root that has been |
262 | 'held' for userspace read access. '-' indicates there is no | 291 | 'held' for userspace read access. '-' indicates there is no |
263 | held root. This feature is not yet implemented so '-' is | 292 | held root. |
264 | always returned. | ||
265 | 293 | ||
266 | discard_passdown|no_discard_passdown | 294 | discard_passdown|no_discard_passdown |
267 | Whether or not discards are actually being passed down to the | 295 | Whether or not discards are actually being passed down to the |
diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt index 34dc40cffdfd..af9b4a0d902b 100644 --- a/Documentation/devicetree/bindings/arm/omap/omap.txt +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt | |||
@@ -91,7 +91,7 @@ Boards: | |||
91 | compatible = "ti,omap3-beagle", "ti,omap3" | 91 | compatible = "ti,omap3-beagle", "ti,omap3" |
92 | 92 | ||
93 | - OMAP3 Tobi with Overo : Commercial expansion board with daughter board | 93 | - OMAP3 Tobi with Overo : Commercial expansion board with daughter board |
94 | compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3" | 94 | compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3" |
95 | 95 | ||
96 | - OMAP4 SDP : Software Development Board | 96 | - OMAP4 SDP : Software Development Board |
97 | compatible = "ti,omap4-sdp", "ti,omap4430" | 97 | compatible = "ti,omap4-sdp", "ti,omap4430" |
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt index a6a352c2771e..5992dceec7af 100644 --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt | |||
@@ -21,9 +21,9 @@ Required Properties: | |||
21 | must appear in the same order as the output clocks. | 21 | must appear in the same order as the output clocks. |
22 | - #clock-cells: Must be 1 | 22 | - #clock-cells: Must be 1 |
23 | - clock-output-names: The name of the clocks as free-form strings | 23 | - clock-output-names: The name of the clocks as free-form strings |
24 | - renesas,indices: Indices of the gate clocks into the group (0 to 31) | 24 | - renesas,clock-indices: Indices of the gate clocks into the group (0 to 31) |
25 | 25 | ||
26 | The clocks, clock-output-names and renesas,indices properties contain one | 26 | The clocks, clock-output-names and renesas,clock-indices properties contain one |
27 | entry per gate clock. The MSTP groups are sparsely populated. Unimplemented | 27 | entry per gate clock. The MSTP groups are sparsely populated. Unimplemented |
28 | gate clocks must not be declared. | 28 | gate clocks must not be declared. |
29 | 29 | ||
diff --git a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt index 68b83ecc3850..ee9be9961524 100644 --- a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt +++ b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt | |||
@@ -1,12 +1,16 @@ | |||
1 | * Freescale Smart Direct Memory Access (SDMA) Controller for i.MX | 1 | * Freescale Smart Direct Memory Access (SDMA) Controller for i.MX |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "fsl,imx31-sdma", "fsl,imx31-to1-sdma", | 4 | - compatible : Should be one of |
5 | "fsl,imx31-to2-sdma", "fsl,imx35-sdma", "fsl,imx35-to1-sdma", | 5 | "fsl,imx25-sdma" |
6 | "fsl,imx35-to2-sdma", "fsl,imx51-sdma", "fsl,imx53-sdma" or | 6 | "fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma" |
7 | "fsl,imx6q-sdma". The -to variants should be preferred since they | 7 | "fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma" |
8 | allow to determnine the correct ROM script addresses needed for | 8 | "fsl,imx51-sdma" |
9 | the driver to work without additional firmware. | 9 | "fsl,imx53-sdma" |
10 | "fsl,imx6q-sdma" | ||
11 | The -to variants should be preferred since they allow to determnine the | ||
12 | correct ROM script addresses needed for the driver to work without additional | ||
13 | firmware. | ||
10 | - reg : Should contain SDMA registers location and length | 14 | - reg : Should contain SDMA registers location and length |
11 | - interrupts : Should contain SDMA interrupt | 15 | - interrupts : Should contain SDMA interrupt |
12 | - #dma-cells : Must be <3>. | 16 | - #dma-cells : Must be <3>. |
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt index 1a1ac2e560e9..f47e56bcf78d 100644 --- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt +++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt | |||
@@ -18,6 +18,7 @@ atmel,24c02 i2c serial eeprom (24cxx) | |||
18 | atmel,at97sc3204t i2c trusted platform module (TPM) | 18 | atmel,at97sc3204t i2c trusted platform module (TPM) |
19 | capella,cm32181 CM32181: Ambient Light Sensor | 19 | capella,cm32181 CM32181: Ambient Light Sensor |
20 | catalyst,24c32 i2c serial eeprom | 20 | catalyst,24c32 i2c serial eeprom |
21 | cirrus,cs42l51 Cirrus Logic CS42L51 audio codec | ||
21 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock | 22 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock |
22 | dallas,ds1338 I2C RTC with 56-Byte NV RAM | 23 | dallas,ds1338 I2C RTC with 56-Byte NV RAM |
23 | dallas,ds1339 I2C Serial Real-Time Clock | 24 | dallas,ds1339 I2C Serial Real-Time Clock |
diff --git a/Documentation/devicetree/bindings/misc/atmel-ssc.txt b/Documentation/devicetree/bindings/misc/atmel-ssc.txt index 60960b2755f4..efc98ea1f23d 100644 --- a/Documentation/devicetree/bindings/misc/atmel-ssc.txt +++ b/Documentation/devicetree/bindings/misc/atmel-ssc.txt | |||
@@ -17,6 +17,14 @@ Required properties for devices compatible with "atmel,at91sam9g45-ssc": | |||
17 | See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. | 17 | See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. |
18 | - dma-names: Must be "tx", "rx". | 18 | - dma-names: Must be "tx", "rx". |
19 | 19 | ||
20 | Optional properties: | ||
21 | - atmel,clk-from-rk-pin: bool property. | ||
22 | - When SSC works in slave mode, according to the hardware design, the | ||
23 | clock can get from TK pin, and also can get from RK pin. So, add | ||
24 | this parameter to choose where the clock from. | ||
25 | - By default the clock is from TK pin, if the clock from RK pin, this | ||
26 | property is needed. | ||
27 | |||
20 | Examples: | 28 | Examples: |
21 | - PDC transfer: | 29 | - PDC transfer: |
22 | ssc0: ssc@fffbc000 { | 30 | ssc0: ssc@fffbc000 { |
diff --git a/Documentation/devicetree/bindings/net/opencores-ethoc.txt b/Documentation/devicetree/bindings/net/opencores-ethoc.txt new file mode 100644 index 000000000000..2dc127c30d9b --- /dev/null +++ b/Documentation/devicetree/bindings/net/opencores-ethoc.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * OpenCores MAC 10/100 Mbps | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "opencores,ethoc". | ||
5 | - reg: two memory regions (address and length), | ||
6 | first region is for the device registers and descriptor rings, | ||
7 | second is for the device packet memory. | ||
8 | - interrupts: interrupt for the device. | ||
9 | |||
10 | Optional properties: | ||
11 | - clocks: phandle to refer to the clk used as per | ||
12 | Documentation/devicetree/bindings/clock/clock-bindings.txt | ||
13 | |||
14 | Examples: | ||
15 | |||
16 | enet0: ethoc@fd030000 { | ||
17 | compatible = "opencores,ethoc"; | ||
18 | reg = <0xfd030000 0x4000 0xfd800000 0x4000>; | ||
19 | interrupts = <1>; | ||
20 | local-mac-address = [00 50 c2 13 6f 00]; | ||
21 | clocks = <&osc>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/sti-dwmac.txt b/Documentation/devicetree/bindings/net/sti-dwmac.txt new file mode 100644 index 000000000000..3dd3d0bf112f --- /dev/null +++ b/Documentation/devicetree/bindings/net/sti-dwmac.txt | |||
@@ -0,0 +1,58 @@ | |||
1 | STMicroelectronics SoC DWMAC glue layer controller | ||
2 | |||
3 | The device node has following properties. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible : Can be "st,stih415-dwmac", "st,stih416-dwmac" or | ||
7 | "st,stid127-dwmac". | ||
8 | - reg : Offset of the glue configuration register map in system | ||
9 | configuration regmap pointed by st,syscon property and size. | ||
10 | |||
11 | - reg-names : Should be "sti-ethconf". | ||
12 | |||
13 | - st,syscon : Should be phandle to system configuration node which | ||
14 | encompases this glue registers. | ||
15 | |||
16 | - st,tx-retime-src: On STi Parts for Giga bit speeds, 125Mhz clocks can be | ||
17 | wired up in from different sources. One via TXCLK pin and other via CLK_125 | ||
18 | pin. This wiring is totally board dependent. However the retiming glue | ||
19 | logic should be configured accordingly. Possible values for this property | ||
20 | |||
21 | "txclk" - if 125Mhz clock is wired up via txclk line. | ||
22 | "clk_125" - if 125Mhz clock is wired up via clk_125 line. | ||
23 | |||
24 | This property is only valid for Giga bit setup( GMII, RGMII), and it is | ||
25 | un-used for non-giga bit (MII and RMII) setups. Also note that internal | ||
26 | clockgen can not generate stable 125Mhz clock. | ||
27 | |||
28 | - st,ext-phyclk: This boolean property indicates who is generating the clock | ||
29 | for tx and rx. This property is only valid for RMII case where the clock can | ||
30 | be generated from the MAC or PHY. | ||
31 | |||
32 | - clock-names: should be "sti-ethclk". | ||
33 | - clocks: Should point to ethernet clockgen which can generate phyclk. | ||
34 | |||
35 | |||
36 | Example: | ||
37 | |||
38 | ethernet0: dwmac@fe810000 { | ||
39 | device_type = "network"; | ||
40 | compatible = "st,stih416-dwmac", "snps,dwmac", "snps,dwmac-3.710"; | ||
41 | reg = <0xfe810000 0x8000>, <0x8bc 0x4>; | ||
42 | reg-names = "stmmaceth", "sti-ethconf"; | ||
43 | interrupts = <0 133 0>, <0 134 0>, <0 135 0>; | ||
44 | interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; | ||
45 | phy-mode = "mii"; | ||
46 | |||
47 | st,syscon = <&syscfg_rear>; | ||
48 | |||
49 | snps,pbl = <32>; | ||
50 | snps,mixed-burst; | ||
51 | |||
52 | resets = <&softreset STIH416_ETH0_SOFTRESET>; | ||
53 | reset-names = "stmmaceth"; | ||
54 | pinctrl-0 = <&pinctrl_mii0>; | ||
55 | pinctrl-names = "default"; | ||
56 | clocks = <&CLK_S_GMAC0_PHY>; | ||
57 | clock-names = "stmmaceth"; | ||
58 | }; | ||
diff --git a/Documentation/devicetree/bindings/pinctrl/brcm,capri-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/brcm,bcm11351-pinctrl.txt index 9e9e9ef9f852..c119debe6bab 100644 --- a/Documentation/devicetree/bindings/pinctrl/brcm,capri-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm11351-pinctrl.txt | |||
@@ -1,4 +1,4 @@ | |||
1 | Broadcom Capri Pin Controller | 1 | Broadcom BCM281xx Pin Controller |
2 | 2 | ||
3 | This is a pin controller for the Broadcom BCM281xx SoC family, which includes | 3 | This is a pin controller for the Broadcom BCM281xx SoC family, which includes |
4 | BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. | 4 | BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. |
@@ -7,14 +7,14 @@ BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. | |||
7 | 7 | ||
8 | Required Properties: | 8 | Required Properties: |
9 | 9 | ||
10 | - compatible: Must be "brcm,capri-pinctrl". | 10 | - compatible: Must be "brcm,bcm11351-pinctrl" |
11 | - reg: Base address of the PAD Controller register block and the size | 11 | - reg: Base address of the PAD Controller register block and the size |
12 | of the block. | 12 | of the block. |
13 | 13 | ||
14 | For example, the following is the bare minimum node: | 14 | For example, the following is the bare minimum node: |
15 | 15 | ||
16 | pinctrl@35004800 { | 16 | pinctrl@35004800 { |
17 | compatible = "brcm,capri-pinctrl"; | 17 | compatible = "brcm,bcm11351-pinctrl"; |
18 | reg = <0x35004800 0x430>; | 18 | reg = <0x35004800 0x430>; |
19 | }; | 19 | }; |
20 | 20 | ||
@@ -119,7 +119,7 @@ Optional Properties (for HDMI pins): | |||
119 | Example: | 119 | Example: |
120 | // pin controller node | 120 | // pin controller node |
121 | pinctrl@35004800 { | 121 | pinctrl@35004800 { |
122 | compatible = "brcm,capri-pinctrl"; | 122 | compatible = "brcmbcm11351-pinctrl"; |
123 | reg = <0x35004800 0x430>; | 123 | reg = <0x35004800 0x430>; |
124 | 124 | ||
125 | // pin configuration node | 125 | // pin configuration node |
diff --git a/Documentation/devicetree/bindings/sound/da9055.txt b/Documentation/devicetree/bindings/sound/da9055.txt new file mode 100644 index 000000000000..ed1b7cc6f249 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/da9055.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * Dialog DA9055 Audio CODEC | ||
2 | |||
3 | DA9055 provides Audio CODEC support (I2C only). | ||
4 | |||
5 | The Audio CODEC device in DA9055 has it's own I2C address which is configurable, | ||
6 | so the device is instantiated separately from the PMIC (MFD) device. | ||
7 | |||
8 | For details on accompanying PMIC I2C device, see the following: | ||
9 | Documentation/devicetree/bindings/mfd/da9055.txt | ||
10 | |||
11 | Required properties: | ||
12 | |||
13 | - compatible: "dlg,da9055-codec" | ||
14 | - reg: Specifies the I2C slave address | ||
15 | |||
16 | |||
17 | Example: | ||
18 | |||
19 | codec: da9055-codec@1a { | ||
20 | compatible = "dlg,da9055-codec"; | ||
21 | reg = <0x1a>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt b/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt index 865178d5cdf3..963e100514c2 100644 --- a/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt +++ b/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt | |||
@@ -5,12 +5,19 @@ Required properties: | |||
5 | - ti,model : The user-visible name of this sound complex. | 5 | - ti,model : The user-visible name of this sound complex. |
6 | - ti,audio-codec : The phandle of the TLV320AIC3x audio codec | 6 | - ti,audio-codec : The phandle of the TLV320AIC3x audio codec |
7 | - ti,mcasp-controller : The phandle of the McASP controller | 7 | - ti,mcasp-controller : The phandle of the McASP controller |
8 | - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec | ||
9 | - ti,audio-routing : A list of the connections between audio components. | 8 | - ti,audio-routing : A list of the connections between audio components. |
10 | Each entry is a pair of strings, the first being the connection's sink, | 9 | Each entry is a pair of strings, the first being the connection's sink, |
11 | the second being the connection's source. Valid names for sources and | 10 | the second being the connection's source. Valid names for sources and |
12 | sinks are the codec's pins, and the jacks on the board: | 11 | sinks are the codec's pins, and the jacks on the board: |
13 | 12 | ||
13 | Optional properties: | ||
14 | - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec. | ||
15 | - clocks : Reference to the master clock | ||
16 | - clock-names : The clock should be named "mclk" | ||
17 | - Either codec-clock-rate or the codec-clock reference has to be defined. If | ||
18 | the both are defined the driver attempts to set referenced clock to the | ||
19 | defined rate and takes the rate from the clock reference. | ||
20 | |||
14 | Board connectors: | 21 | Board connectors: |
15 | 22 | ||
16 | * Headphone Jack | 23 | * Headphone Jack |
diff --git a/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt b/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt new file mode 100644 index 000000000000..0d7985c864af --- /dev/null +++ b/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | Audio complex for Eukrea boards with tlv320aic23 codec. | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "eukrea,asoc-tlv320" | ||
5 | - eukrea,model : The user-visible name of this sound complex. | ||
6 | - ssi-controller : The phandle of the SSI controller. | ||
7 | - fsl,mux-int-port : The internal port of the i.MX audio muxer (AUDMUX). | ||
8 | - fsl,mux-ext-port : The external port of the i.MX audio muxer. | ||
9 | |||
10 | Note: The AUDMUX port numbering should start at 1, which is consistent with | ||
11 | hardware manual. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | sound { | ||
16 | compatible = "eukrea,asoc-tlv320"; | ||
17 | eukrea,model = "imx51-eukrea-tlv320aic23"; | ||
18 | ssi-controller = <&ssi2>; | ||
19 | fsl,mux-int-port = <2>; | ||
20 | fsl,mux-ext-port = <3>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/fsl,esai.txt b/Documentation/devicetree/bindings/sound/fsl,esai.txt index d7b99fa637b5..aeb8c4a0b88d 100644 --- a/Documentation/devicetree/bindings/sound/fsl,esai.txt +++ b/Documentation/devicetree/bindings/sound/fsl,esai.txt | |||
@@ -34,6 +34,10 @@ Required properties: | |||
34 | that ESAI would work in the synchronous mode, which means all the settings | 34 | that ESAI would work in the synchronous mode, which means all the settings |
35 | for Receiving would be duplicated from Transmition related registers. | 35 | for Receiving would be duplicated from Transmition related registers. |
36 | 36 | ||
37 | - big-endian : If this property is absent, the native endian mode will | ||
38 | be in use as default, or the big endian mode will be in use for all the | ||
39 | device registers. | ||
40 | |||
37 | Example: | 41 | Example: |
38 | 42 | ||
39 | esai: esai@02024000 { | 43 | esai: esai@02024000 { |
@@ -46,5 +50,6 @@ esai: esai@02024000 { | |||
46 | dma-names = "rx", "tx"; | 50 | dma-names = "rx", "tx"; |
47 | fsl,fifo-depth = <128>; | 51 | fsl,fifo-depth = <128>; |
48 | fsl,esai-synchronous; | 52 | fsl,esai-synchronous; |
53 | big-endian; | ||
49 | status = "disabled"; | 54 | status = "disabled"; |
50 | }; | 55 | }; |
diff --git a/Documentation/devicetree/bindings/sound/fsl,spdif.txt b/Documentation/devicetree/bindings/sound/fsl,spdif.txt index f2ae335670f5..3e9e82c8eab3 100644 --- a/Documentation/devicetree/bindings/sound/fsl,spdif.txt +++ b/Documentation/devicetree/bindings/sound/fsl,spdif.txt | |||
@@ -29,6 +29,10 @@ Required properties: | |||
29 | can also be referred to TxClk_Source | 29 | can also be referred to TxClk_Source |
30 | bit of register SPDIF_STC. | 30 | bit of register SPDIF_STC. |
31 | 31 | ||
32 | - big-endian : If this property is absent, the native endian mode will | ||
33 | be in use as default, or the big endian mode will be in use for all the | ||
34 | device registers. | ||
35 | |||
32 | Example: | 36 | Example: |
33 | 37 | ||
34 | spdif: spdif@02004000 { | 38 | spdif: spdif@02004000 { |
@@ -50,5 +54,6 @@ spdif: spdif@02004000 { | |||
50 | "rxtx5", "rxtx6", | 54 | "rxtx5", "rxtx6", |
51 | "rxtx7"; | 55 | "rxtx7"; |
52 | 56 | ||
57 | big-endian; | ||
53 | status = "okay"; | 58 | status = "okay"; |
54 | }; | 59 | }; |
diff --git a/Documentation/devicetree/bindings/sound/pcm512x.txt b/Documentation/devicetree/bindings/sound/pcm512x.txt new file mode 100644 index 000000000000..faff75e64573 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/pcm512x.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | PCM512x audio CODECs | ||
2 | |||
3 | These devices support both I2C and SPI (configured with pin strapping | ||
4 | on the board). | ||
5 | |||
6 | Required properties: | ||
7 | |||
8 | - compatible : One of "ti,pcm5121" or "ti,pcm5122" | ||
9 | |||
10 | - reg : the I2C address of the device for I2C, the chip select | ||
11 | number for SPI. | ||
12 | |||
13 | - AVDD-supply, DVDD-supply, and CPVDD-supply : power supplies for the | ||
14 | device, as covered in bindings/regulator/regulator.txt | ||
15 | |||
16 | Optional properties: | ||
17 | |||
18 | - clocks : A clock specifier for the clock connected as SCLK. If this | ||
19 | is absent the device will be configured to clock from BCLK. | ||
20 | |||
21 | Example: | ||
22 | |||
23 | pcm5122: pcm5122@4c { | ||
24 | compatible = "ti,pcm5122"; | ||
25 | reg = <0x4c>; | ||
26 | |||
27 | AVDD-supply = <®_3v3_analog>; | ||
28 | DVDD-supply = <®_1v8>; | ||
29 | CPVDD-supply = <®_3v3>; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt b/Documentation/devicetree/bindings/sound/simple-card.txt index 19c84df5fffa..b30c222f9cd3 100644 --- a/Documentation/devicetree/bindings/sound/simple-card.txt +++ b/Documentation/devicetree/bindings/sound/simple-card.txt | |||
@@ -8,13 +8,18 @@ Required properties: | |||
8 | 8 | ||
9 | Optional properties: | 9 | Optional properties: |
10 | 10 | ||
11 | - simple-audio-card,name : User specified audio sound card name, one string | ||
12 | property. | ||
11 | - simple-audio-card,format : CPU/CODEC common audio format. | 13 | - simple-audio-card,format : CPU/CODEC common audio format. |
12 | "i2s", "right_j", "left_j" , "dsp_a" | 14 | "i2s", "right_j", "left_j" , "dsp_a" |
13 | "dsp_b", "ac97", "pdm", "msb", "lsb" | 15 | "dsp_b", "ac97", "pdm", "msb", "lsb" |
16 | - simple-audio-card,widgets : Please refer to widgets.txt. | ||
14 | - simple-audio-card,routing : A list of the connections between audio components. | 17 | - simple-audio-card,routing : A list of the connections between audio components. |
15 | Each entry is a pair of strings, the first being the | 18 | Each entry is a pair of strings, the first being the |
16 | connection's sink, the second being the connection's | 19 | connection's sink, the second being the connection's |
17 | source. | 20 | source. |
21 | - dai-tdm-slot-num : Please refer to tdm-slot.txt. | ||
22 | - dai-tdm-slot-width : Please refer to tdm-slot.txt. | ||
18 | 23 | ||
19 | Required subnodes: | 24 | Required subnodes: |
20 | 25 | ||
@@ -42,11 +47,19 @@ Example: | |||
42 | 47 | ||
43 | sound { | 48 | sound { |
44 | compatible = "simple-audio-card"; | 49 | compatible = "simple-audio-card"; |
50 | simple-audio-card,name = "VF610-Tower-Sound-Card"; | ||
45 | simple-audio-card,format = "left_j"; | 51 | simple-audio-card,format = "left_j"; |
52 | simple-audio-card,widgets = | ||
53 | "Microphone", "Microphone Jack", | ||
54 | "Headphone", "Headphone Jack", | ||
55 | "Speaker", "External Speaker"; | ||
46 | simple-audio-card,routing = | 56 | simple-audio-card,routing = |
47 | "MIC_IN", "Mic Jack", | 57 | "MIC_IN", "Microphone Jack", |
48 | "Headphone Jack", "HP_OUT", | 58 | "Headphone Jack", "HP_OUT", |
49 | "Ext Spk", "LINE_OUT"; | 59 | "External Speaker", "LINE_OUT"; |
60 | |||
61 | dai-tdm-slot-num = <2>; | ||
62 | dai-tdm-slot-width = <8>; | ||
50 | 63 | ||
51 | simple-audio-card,cpu { | 64 | simple-audio-card,cpu { |
52 | sound-dai = <&sh_fsi2 0>; | 65 | sound-dai = <&sh_fsi2 0>; |
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt new file mode 100644 index 000000000000..062f5ec36f9b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | SiRF internal audio CODEC | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : "sirf,atlas6-audio-codec" or "sirf,prima2-audio-codec" | ||
6 | |||
7 | - reg : the register address of the device. | ||
8 | |||
9 | - clocks: the clock of SiRF internal audio codec | ||
10 | |||
11 | Example: | ||
12 | |||
13 | audiocodec: audiocodec@b0040000 { | ||
14 | compatible = "sirf,atlas6-audio-codec"; | ||
15 | reg = <0xb0040000 0x10000>; | ||
16 | clocks = <&clks 27>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio-port.txt b/Documentation/devicetree/bindings/sound/sirf-audio-port.txt new file mode 100644 index 000000000000..1f66de3c8f00 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio-port.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | * SiRF SoC audio port | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "sirf,audio-port" | ||
5 | - reg: Base address and size entries: | ||
6 | - dmas: List of DMA controller phandle and DMA request line ordered pairs. | ||
7 | - dma-names: Identifier string for each DMA request line in the dmas property. | ||
8 | These strings correspond 1:1 with the ordered pairs in dmas. | ||
9 | |||
10 | One of the DMA channels will be responsible for transmission (should be | ||
11 | named "tx") and one for reception (should be named "rx"). | ||
12 | |||
13 | Example: | ||
14 | |||
15 | audioport: audioport@b0040000 { | ||
16 | compatible = "sirf,audio-port"; | ||
17 | reg = <0xb0040000 0x10000>; | ||
18 | dmas = <&dmac1 3>, <&dmac1 8>; | ||
19 | dma-names = "rx", "tx"; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio.txt b/Documentation/devicetree/bindings/sound/sirf-audio.txt new file mode 100644 index 000000000000..c88882ca3704 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio.txt | |||
@@ -0,0 +1,41 @@ | |||
1 | * SiRF atlas6 and prima2 internal audio codec and port based audio setups | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "sirf,sirf-audio-card" | ||
5 | - sirf,audio-platform: phandle for the platform node | ||
6 | - sirf,audio-codec: phandle for the SiRF internal codec node | ||
7 | |||
8 | Optional properties: | ||
9 | - hp-pa-gpios: Need to be present if the board need control external | ||
10 | headphone amplifier. | ||
11 | - spk-pa-gpios: Need to be present if the board need control external | ||
12 | speaker amplifier. | ||
13 | - hp-switch-gpios: Need to be present if the board capable to detect jack | ||
14 | insertion, removal. | ||
15 | |||
16 | Available audio endpoints for the audio-routing table: | ||
17 | |||
18 | Board connectors: | ||
19 | * Headset Stereophone | ||
20 | * Ext Spk | ||
21 | * Line In | ||
22 | * Mic | ||
23 | |||
24 | SiRF internal audio codec pins: | ||
25 | * HPOUTL | ||
26 | * HPOUTR | ||
27 | * SPKOUT | ||
28 | * Ext Mic | ||
29 | * Mic Bias | ||
30 | |||
31 | Example: | ||
32 | |||
33 | sound { | ||
34 | compatible = "sirf,sirf-audio-card"; | ||
35 | sirf,audio-codec = <&audiocodec>; | ||
36 | sirf,audio-platform = <&audioport>; | ||
37 | hp-pa-gpios = <&gpio 44 0>; | ||
38 | spk-pa-gpios = <&gpio 46 0>; | ||
39 | hp-switch-gpios = <&gpio 45 0>; | ||
40 | }; | ||
41 | |||
diff --git a/Documentation/devicetree/bindings/sound/tdm-slot.txt b/Documentation/devicetree/bindings/sound/tdm-slot.txt new file mode 100644 index 000000000000..6a2c84247f91 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tdm-slot.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | TDM slot: | ||
2 | |||
3 | This specifies audio DAI's TDM slot. | ||
4 | |||
5 | TDM slot properties: | ||
6 | dai-tdm-slot-num : Number of slots in use. | ||
7 | dai-tdm-slot-width : Width in bits for each slot. | ||
8 | |||
9 | For instance: | ||
10 | dai-tdm-slot-num = <2>; | ||
11 | dai-tdm-slot-width = <8>; | ||
12 | |||
13 | And for each spcified driver, there could be one .of_xlate_tdm_slot_mask() | ||
14 | to specify a explicit mapping of the channels and the slots. If it's absent | ||
15 | the default snd_soc_of_xlate_tdm_slot_mask() will be used to generating the | ||
16 | tx and rx masks. | ||
17 | |||
18 | For snd_soc_of_xlate_tdm_slot_mask(), the tx and rx masks will use a 1 bit | ||
19 | for an active slot as default, and the default active bits are at the LSB of | ||
20 | the masks. | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt b/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt new file mode 100644 index 000000000000..5e2741af27be --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | Texas Instruments - tlv320aic32x4 Codec module | ||
2 | |||
3 | The tlv320aic32x4 serial control bus communicates through I2C protocols | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: Should be "ti,tlv320aic32x4" | ||
7 | - reg: I2C slave address | ||
8 | - supply-*: Required supply regulators are: | ||
9 | "iov" - digital IO power supply | ||
10 | "ldoin" - LDO power supply | ||
11 | "dv" - Digital core power supply | ||
12 | "av" - Analog core power supply | ||
13 | If you supply ldoin, dv and av are optional. Otherwise they are required | ||
14 | See regulator/regulator.txt for more information about the detailed binding | ||
15 | format. | ||
16 | |||
17 | Optional properties: | ||
18 | - reset-gpios: Reset-GPIO phandle with args as described in gpio/gpio.txt | ||
19 | - clocks/clock-names: Clock named 'mclk' for the master clock of the codec. | ||
20 | See clock/clock-bindings.txt for information about the detailed format. | ||
21 | |||
22 | |||
23 | Example: | ||
24 | |||
25 | codec: tlv320aic32x4@18 { | ||
26 | compatible = "ti,tlv320aic32x4"; | ||
27 | reg = <0x18>; | ||
28 | clocks = <&clks 201>; | ||
29 | clock-names = "mclk"; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt index 9d8ea14db490..5e6040c2c2e9 100644 --- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt +++ b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt | |||
@@ -6,7 +6,6 @@ Required properties: | |||
6 | 6 | ||
7 | - compatible - "string" - One of: | 7 | - compatible - "string" - One of: |
8 | "ti,tlv320aic3x" - Generic TLV320AIC3x device | 8 | "ti,tlv320aic3x" - Generic TLV320AIC3x device |
9 | "ti,tlv320aic32x4" - TLV320AIC32x4 | ||
10 | "ti,tlv320aic33" - TLV320AIC33 | 9 | "ti,tlv320aic33" - TLV320AIC33 |
11 | "ti,tlv320aic3007" - TLV320AIC3007 | 10 | "ti,tlv320aic3007" - TLV320AIC3007 |
12 | "ti,tlv320aic3106" - TLV320AIC3106 | 11 | "ti,tlv320aic3106" - TLV320AIC3106 |
diff --git a/Documentation/devicetree/bindings/sound/widgets.txt b/Documentation/devicetree/bindings/sound/widgets.txt new file mode 100644 index 000000000000..b6de5ba3b2de --- /dev/null +++ b/Documentation/devicetree/bindings/sound/widgets.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | Widgets: | ||
2 | |||
3 | This mainly specifies audio off-codec DAPM widgets. | ||
4 | |||
5 | Each entry is a pair of strings in DT: | ||
6 | |||
7 | "template-wname", "user-supplied-wname" | ||
8 | |||
9 | The "template-wname" being the template widget name and currently includes: | ||
10 | "Microphone", "Line", "Headphone" and "Speaker". | ||
11 | |||
12 | The "user-supplied-wname" being the user specified widget name. | ||
13 | |||
14 | For instance: | ||
15 | simple-audio-widgets = | ||
16 | "Microphone", "Microphone Jack", | ||
17 | "Line", "Line In Jack", | ||
18 | "Line", "Line Out Jack", | ||
19 | "Headphone", "Headphone Jack", | ||
20 | "Speaker", "Speaker External"; | ||
diff --git a/Documentation/networking/3c505.txt b/Documentation/networking/3c505.txt deleted file mode 100644 index 72f38b13101d..000000000000 --- a/Documentation/networking/3c505.txt +++ /dev/null | |||
@@ -1,45 +0,0 @@ | |||
1 | The 3Com Etherlink Plus (3c505) driver. | ||
2 | |||
3 | This driver now uses DMA. There is currently no support for PIO operation. | ||
4 | The default DMA channel is 6; this is _not_ autoprobed, so you must | ||
5 | make sure you configure it correctly. If loading the driver as a | ||
6 | module, you can do this with "modprobe 3c505 dma=n". If the driver is | ||
7 | linked statically into the kernel, you must either use an "ether=" | ||
8 | statement on the command line, or change the definition of ELP_DMA in 3c505.h. | ||
9 | |||
10 | The driver will warn you if it has to fall back on the compiled in | ||
11 | default DMA channel. | ||
12 | |||
13 | If no base address is given at boot time, the driver will autoprobe | ||
14 | ports 0x300, 0x280 and 0x310 (in that order). If no IRQ is given, the driver | ||
15 | will try to probe for it. | ||
16 | |||
17 | The driver can be used as a loadable module. | ||
18 | |||
19 | Theoretically, one instance of the driver can now run multiple cards, | ||
20 | in the standard way (when loading a module, say "modprobe 3c505 | ||
21 | io=0x300,0x340 irq=10,11 dma=6,7" or whatever). I have not tested | ||
22 | this, though. | ||
23 | |||
24 | The driver may now support revision 2 hardware; the dependency on | ||
25 | being able to read the host control register has been removed. This | ||
26 | is also untested, since I don't have a suitable card. | ||
27 | |||
28 | Known problems: | ||
29 | I still see "DMA upload timed out" messages from time to time. These | ||
30 | seem to be fairly non-fatal though. | ||
31 | The card is old and slow. | ||
32 | |||
33 | To do: | ||
34 | Improve probe/setup code | ||
35 | Test multicast and promiscuous operation | ||
36 | |||
37 | Authors: | ||
38 | The driver is mainly written by Craig Southeren, email | ||
39 | <craigs@ineluki.apana.org.au>. | ||
40 | Parts of the driver (adapting the driver to 1.1.4+ kernels, | ||
41 | IRQ/address detection, some changes) and this README by | ||
42 | Juha Laiho <jlaiho@ichaos.nullnet.fi>. | ||
43 | DMA mode, more fixes, etc, by Philip Blundell <pjb27@cam.ac.uk> | ||
44 | Multicard support, Software configurable DMA, etc., by | ||
45 | Christopher Collins <ccollins@pcug.org.au> | ||
diff --git a/Documentation/networking/can.txt b/Documentation/networking/can.txt index f3089d423515..0cbe6ec22d6f 100644 --- a/Documentation/networking/can.txt +++ b/Documentation/networking/can.txt | |||
@@ -554,12 +554,6 @@ solution for a couple of reasons: | |||
554 | not specified in the struct can_frame and therefore it is only valid in | 554 | not specified in the struct can_frame and therefore it is only valid in |
555 | CANFD_MTU sized CAN FD frames. | 555 | CANFD_MTU sized CAN FD frames. |
556 | 556 | ||
557 | As long as the payload length is <=8 the received CAN frames from CAN FD | ||
558 | capable CAN devices can be received and read by legacy sockets too. When | ||
559 | user-generated CAN FD frames have a payload length <=8 these can be send | ||
560 | by legacy CAN network interfaces too. Sending CAN FD frames with payload | ||
561 | length > 8 to a legacy CAN network interface returns an -EMSGSIZE error. | ||
562 | |||
563 | Implementation hint for new CAN applications: | 557 | Implementation hint for new CAN applications: |
564 | 558 | ||
565 | To build a CAN FD aware application use struct canfd_frame as basic CAN | 559 | To build a CAN FD aware application use struct canfd_frame as basic CAN |