aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/ABI/testing/sysfs-block14
-rw-r--r--Documentation/DocBook/media/v4l/compat.xml4
-rw-r--r--Documentation/DocBook/media/v4l/controls.xml278
-rw-r--r--Documentation/DocBook/media/v4l/io.xml6
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt-nv12m.xml17
-rw-r--r--Documentation/DocBook/media/v4l/pixfmt.xml38
-rw-r--r--Documentation/DocBook/media/v4l/subdev-formats.xml44
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-qbuf.xml3
-rw-r--r--Documentation/DocBook/media/v4l/vidioc-querybuf.xml11
-rw-r--r--Documentation/DocBook/mtdnand.tmpl2
-rw-r--r--Documentation/arm/Booting22
-rw-r--r--Documentation/block/biodoc.txt5
-rw-r--r--Documentation/devicetree/bindings/arm/davinci/nand.txt51
-rw-r--r--Documentation/devicetree/bindings/i2c/atmel-i2c.txt30
-rw-r--r--Documentation/devicetree/bindings/i2c/davinci.txt28
-rw-r--r--Documentation/devicetree/bindings/i2c/i2c-mxs.txt2
-rw-r--r--Documentation/devicetree/bindings/i2c/nomadik.txt23
-rw-r--r--Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt2
-rw-r--r--Documentation/devicetree/bindings/mmc/atmel-hsmci.txt68
-rw-r--r--Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt87
-rw-r--r--Documentation/devicetree/bindings/mmc/mmc.txt9
-rw-r--r--Documentation/devicetree/bindings/mmc/pxa-mmc.txt25
-rw-r--r--Documentation/devicetree/bindings/mmc/samsung-sdhci.txt53
-rw-r--r--Documentation/devicetree/bindings/mmc/sdhci-dove.txt14
-rw-r--r--Documentation/devicetree/bindings/mmc/sdhci-spear.txt18
-rw-r--r--Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt79
-rw-r--r--Documentation/devicetree/bindings/mtd/atmel-nand.txt40
-rw-r--r--Documentation/devicetree/bindings/mtd/gpmi-nand.txt4
-rw-r--r--Documentation/devicetree/bindings/mtd/lpc32xx-mlc.txt50
-rw-r--r--Documentation/devicetree/bindings/mtd/lpc32xx-slc.txt52
-rw-r--r--Documentation/devicetree/bindings/mtd/mtd-physmap.txt7
-rw-r--r--Documentation/devicetree/bindings/pwm/imx-pwm.txt17
-rw-r--r--Documentation/devicetree/bindings/pwm/mxs-pwm.txt2
-rw-r--r--Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt2
-rw-r--r--Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt2
-rw-r--r--Documentation/driver-model/devres.txt4
-rw-r--r--Documentation/filesystems/nfs/nfs.txt44
-rw-r--r--Documentation/hwmon/da90522
-rw-r--r--Documentation/hwmon/max16192
-rw-r--r--Documentation/hwmon/twl4030-madc-hwmon2
-rw-r--r--Documentation/kernel-parameters.txt5
-rw-r--r--Documentation/leds/leds-lp5523.txt21
-rw-r--r--Documentation/percpu-rw-semaphore.txt27
-rw-r--r--Documentation/pwm.txt3
-rwxr-xr-xDocumentation/target/tcm_mod_builder.py16
-rw-r--r--Documentation/video4linux/v4l2-controls.txt24
-rw-r--r--Documentation/virtual/uml/UserModeLinux-HOWTO.txt2
47 files changed, 1205 insertions, 56 deletions
diff --git a/Documentation/ABI/testing/sysfs-block b/Documentation/ABI/testing/sysfs-block
index c1eb41cb9876..279da08f7541 100644
--- a/Documentation/ABI/testing/sysfs-block
+++ b/Documentation/ABI/testing/sysfs-block
@@ -206,3 +206,17 @@ Description:
206 when a discarded area is read the discard_zeroes_data 206 when a discarded area is read the discard_zeroes_data
207 parameter will be set to one. Otherwise it will be 0 and 207 parameter will be set to one. Otherwise it will be 0 and
208 the result of reading a discarded area is undefined. 208 the result of reading a discarded area is undefined.
209
210What: /sys/block/<disk>/queue/write_same_max_bytes
211Date: January 2012
212Contact: Martin K. Petersen <martin.petersen@oracle.com>
213Description:
214 Some devices support a write same operation in which a
215 single data block can be written to a range of several
216 contiguous blocks on storage. This can be used to wipe
217 areas on disk or to initialize drives in a RAID
218 configuration. write_same_max_bytes indicates how many
219 bytes can be written in a single write same command. If
220 write_same_max_bytes is 0, write same is not supported
221 by the device.
222
diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml
index c6ae4c9d0e0c..4fdf6b562d1c 100644
--- a/Documentation/DocBook/media/v4l/compat.xml
+++ b/Documentation/DocBook/media/v4l/compat.xml
@@ -2582,6 +2582,10 @@ ioctls.</para>
2582 <listitem> 2582 <listitem>
2583 <para>Support for frequency band enumeration: &VIDIOC-ENUM-FREQ-BANDS; ioctl.</para> 2583 <para>Support for frequency band enumeration: &VIDIOC-ENUM-FREQ-BANDS; ioctl.</para>
2584 </listitem> 2584 </listitem>
2585 <listitem>
2586 <para>Vendor and device specific media bus pixel formats.
2587 <xref linkend="v4l2-mbus-vendor-spec-fmts" />.</para>
2588 </listitem>
2585 </itemizedlist> 2589 </itemizedlist>
2586 </section> 2590 </section>
2587 2591
diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
index 272a5f718509..7fe5be1d3bbb 100644
--- a/Documentation/DocBook/media/v4l/controls.xml
+++ b/Documentation/DocBook/media/v4l/controls.xml
@@ -1586,7 +1586,6 @@ frame counter of the frame that is currently displayed (decoded). This value is
1586the decoder is started.</entry> 1586the decoder is started.</entry>
1587 </row> 1587 </row>
1588 1588
1589
1590 <row><entry></entry></row> 1589 <row><entry></entry></row>
1591 <row> 1590 <row>
1592 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE</constant>&nbsp;</entry> 1591 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE</constant>&nbsp;</entry>
@@ -2270,6 +2269,14 @@ Applicable to the MPEG1, MPEG2, MPEG4 encoders.</entry>
2270 </row> 2269 </row>
2271 2270
2272 <row><entry></entry></row> 2271 <row><entry></entry></row>
2272 <row id="v4l2-mpeg-video-vbv-delay">
2273 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_VBV_DELAY</constant>&nbsp;</entry>
2274 <entry>integer</entry>
2275 </row><row><entry spanname="descr">Sets the initial delay in milliseconds for
2276VBV buffer control.</entry>
2277 </row>
2278
2279 <row><entry></entry></row>
2273 <row> 2280 <row>
2274 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE</constant>&nbsp;</entry> 2281 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE</constant>&nbsp;</entry>
2275 <entry>integer</entry> 2282 <entry>integer</entry>
@@ -2334,6 +2341,265 @@ Applicable to the MPEG4 decoder.</entry>
2334 </row><row><entry spanname="descr">vop_time_increment value for MPEG4. Applicable to the MPEG4 encoder.</entry> 2341 </row><row><entry spanname="descr">vop_time_increment value for MPEG4. Applicable to the MPEG4 encoder.</entry>
2335 </row> 2342 </row>
2336 2343
2344 <row><entry></entry></row>
2345 <row>
2346 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING</constant>&nbsp;</entry>
2347 <entry>boolean</entry>
2348 </row>
2349 <row><entry spanname="descr">Enable generation of frame packing supplemental enhancement information in the encoded bitstream.
2350The frame packing SEI message contains the arrangement of L and R planes for 3D viewing. Applicable to the H264 encoder.</entry>
2351 </row>
2352
2353 <row><entry></entry></row>
2354 <row>
2355 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0</constant>&nbsp;</entry>
2356 <entry>boolean</entry>
2357 </row>
2358 <row><entry spanname="descr">Sets current frame as frame0 in frame packing SEI.
2359Applicable to the H264 encoder.</entry>
2360 </row>
2361
2362 <row><entry></entry></row>
2363 <row id="v4l2-mpeg-video-h264-sei-fp-arrangement-type">
2364 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE</constant>&nbsp;</entry>
2365 <entry>enum&nbsp;v4l2_mpeg_video_h264_sei_fp_arrangement_type</entry>
2366 </row>
2367 <row><entry spanname="descr">Frame packing arrangement type for H264 SEI.
2368Applicable to the H264 encoder.
2369Possible values are:</entry>
2370 </row>
2371 <row>
2372 <entrytbl spanname="descr" cols="2">
2373 <tbody valign="top">
2374 <row>
2375 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD</constant>&nbsp;</entry>
2376 <entry>Pixels are alternatively from L and R.</entry>
2377 </row>
2378 <row>
2379 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN</constant>&nbsp;</entry>
2380 <entry>L and R are interlaced by column.</entry>
2381 </row>
2382 <row>
2383 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW</constant>&nbsp;</entry>
2384 <entry>L and R are interlaced by row.</entry>
2385 </row>
2386 <row>
2387 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE</constant>&nbsp;</entry>
2388 <entry>L is on the left, R on the right.</entry>
2389 </row>
2390 <row>
2391 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM</constant>&nbsp;</entry>
2392 <entry>L is on top, R on bottom.</entry>
2393 </row>
2394 <row>
2395 <entry><constant>V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL</constant>&nbsp;</entry>
2396 <entry>One view per frame.</entry>
2397 </row>
2398 </tbody>
2399 </entrytbl>
2400 </row>
2401
2402 <row><entry></entry></row>
2403 <row>
2404 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO</constant>&nbsp;</entry>
2405 <entry>boolean</entry>
2406 </row>
2407 <row><entry spanname="descr">Enables flexible macroblock ordering in the encoded bitstream. It is a technique
2408used for restructuring the ordering of macroblocks in pictures. Applicable to the H264 encoder.</entry>
2409 </row>
2410
2411 <row><entry></entry></row>
2412 <row id="v4l2-mpeg-video-h264-fmo-map-type">
2413 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE</constant>&nbsp;</entry>
2414 <entry>enum&nbsp;v4l2_mpeg_video_h264_fmo_map_type</entry>
2415 </row>
2416 <row><entry spanname="descr">When using FMO, the map type divides the image in different scan patterns of macroblocks.
2417Applicable to the H264 encoder.
2418Possible values are:</entry>
2419 </row>
2420 <row>
2421 <entrytbl spanname="descr" cols="2">
2422 <tbody valign="top">
2423 <row>
2424 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES</constant>&nbsp;</entry>
2425 <entry>Slices are interleaved one after other with macroblocks in run length order.</entry>
2426 </row>
2427 <row>
2428 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES</constant>&nbsp;</entry>
2429 <entry>Scatters the macroblocks based on a mathematical function known to both encoder and decoder.</entry>
2430 </row>
2431 <row>
2432 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER</constant>&nbsp;</entry>
2433 <entry>Macroblocks arranged in rectangular areas or regions of interest.</entry>
2434 </row>
2435 <row>
2436 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT</constant>&nbsp;</entry>
2437 <entry>Slice groups grow in a cyclic way from centre to outwards.</entry>
2438 </row>
2439 <row>
2440 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN</constant>&nbsp;</entry>
2441 <entry>Slice groups grow in raster scan pattern from left to right.</entry>
2442 </row>
2443 <row>
2444 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN</constant>&nbsp;</entry>
2445 <entry>Slice groups grow in wipe scan pattern from top to bottom.</entry>
2446 </row>
2447 <row>
2448 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT</constant>&nbsp;</entry>
2449 <entry>User defined map type.</entry>
2450 </row>
2451 </tbody>
2452 </entrytbl>
2453 </row>
2454
2455 <row><entry></entry></row>
2456 <row>
2457 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP</constant>&nbsp;</entry>
2458 <entry>integer</entry>
2459 </row>
2460 <row><entry spanname="descr">Number of slice groups in FMO.
2461Applicable to the H264 encoder.</entry>
2462 </row>
2463
2464 <row><entry></entry></row>
2465 <row id="v4l2-mpeg-video-h264-fmo-change-direction">
2466 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION</constant>&nbsp;</entry>
2467 <entry>enum&nbsp;v4l2_mpeg_video_h264_fmo_change_dir</entry>
2468 </row>
2469 <row><entry spanname="descr">Specifies a direction of the slice group change for raster and wipe maps.
2470Applicable to the H264 encoder.
2471Possible values are:</entry>
2472 </row>
2473 <row>
2474 <entrytbl spanname="descr" cols="2">
2475 <tbody valign="top">
2476 <row>
2477 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT</constant>&nbsp;</entry>
2478 <entry>Raster scan or wipe right.</entry>
2479 </row>
2480 <row>
2481 <entry><constant>V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT</constant>&nbsp;</entry>
2482 <entry>Reverse raster scan or wipe left.</entry>
2483 </row>
2484 </tbody>
2485 </entrytbl>
2486 </row>
2487
2488 <row><entry></entry></row>
2489 <row>
2490 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE</constant>&nbsp;</entry>
2491 <entry>integer</entry>
2492 </row>
2493 <row><entry spanname="descr">Specifies the size of the first slice group for raster and wipe map.
2494Applicable to the H264 encoder.</entry>
2495 </row>
2496
2497 <row><entry></entry></row>
2498 <row>
2499 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH</constant>&nbsp;</entry>
2500 <entry>integer</entry>
2501 </row>
2502 <row><entry spanname="descr">Specifies the number of consecutive macroblocks for the interleaved map.
2503Applicable to the H264 encoder.</entry>
2504 </row>
2505
2506 <row><entry></entry></row>
2507 <row>
2508 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_ASO</constant>&nbsp;</entry>
2509 <entry>boolean</entry>
2510 </row>
2511 <row><entry spanname="descr">Enables arbitrary slice ordering in encoded bitstream.
2512Applicable to the H264 encoder.</entry>
2513 </row>
2514
2515 <row><entry></entry></row>
2516 <row>
2517 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER</constant>&nbsp;</entry>
2518 <entry>integer</entry>
2519 </row><row><entry spanname="descr">Specifies the slice order in ASO. Applicable to the H264 encoder.
2520The supplied 32-bit integer is interpreted as follows (bit
25210 = least significant bit):</entry>
2522 </row>
2523 <row>
2524 <entrytbl spanname="descr" cols="2">
2525 <tbody valign="top">
2526 <row>
2527 <entry>Bit 0:15</entry>
2528 <entry>Slice ID</entry>
2529 </row>
2530 <row>
2531 <entry>Bit 16:32</entry>
2532 <entry>Slice position or order</entry>
2533 </row>
2534 </tbody>
2535 </entrytbl>
2536 </row>
2537
2538 <row><entry></entry></row>
2539 <row>
2540 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING</constant>&nbsp;</entry>
2541 <entry>boolean</entry>
2542 </row>
2543 <row><entry spanname="descr">Enables H264 hierarchical coding.
2544Applicable to the H264 encoder.</entry>
2545 </row>
2546
2547 <row><entry></entry></row>
2548 <row id="v4l2-mpeg-video-h264-hierarchical-coding-type">
2549 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE</constant>&nbsp;</entry>
2550 <entry>enum&nbsp;v4l2_mpeg_video_h264_hierarchical_coding_type</entry>
2551 </row>
2552 <row><entry spanname="descr">Specifies the hierarchical coding type.
2553Applicable to the H264 encoder.
2554Possible values are:</entry>
2555 </row>
2556 <row>
2557 <entrytbl spanname="descr" cols="2">
2558 <tbody valign="top">
2559 <row>
2560 <entry><constant>V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B</constant>&nbsp;</entry>
2561 <entry>Hierarchical B coding.</entry>
2562 </row>
2563 <row>
2564 <entry><constant>V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P</constant>&nbsp;</entry>
2565 <entry>Hierarchical P coding.</entry>
2566 </row>
2567 </tbody>
2568 </entrytbl>
2569 </row>
2570
2571 <row><entry></entry></row>
2572 <row>
2573 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER</constant>&nbsp;</entry>
2574 <entry>integer</entry>
2575 </row>
2576 <row><entry spanname="descr">Specifies the number of hierarchical coding layers.
2577Applicable to the H264 encoder.</entry>
2578 </row>
2579
2580 <row><entry></entry></row>
2581 <row>
2582 <entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP</constant>&nbsp;</entry>
2583 <entry>integer</entry>
2584 </row><row><entry spanname="descr">Specifies a user defined QP for each layer. Applicable to the H264 encoder.
2585The supplied 32-bit integer is interpreted as follows (bit
25860 = least significant bit):</entry>
2587 </row>
2588 <row>
2589 <entrytbl spanname="descr" cols="2">
2590 <tbody valign="top">
2591 <row>
2592 <entry>Bit 0:15</entry>
2593 <entry>QP value</entry>
2594 </row>
2595 <row>
2596 <entry>Bit 16:32</entry>
2597 <entry>Layer number</entry>
2598 </row>
2599 </tbody>
2600 </entrytbl>
2601 </row>
2602
2337 </tbody> 2603 </tbody>
2338 </tgroup> 2604 </tgroup>
2339 </table> 2605 </table>
@@ -4267,6 +4533,16 @@ interface and may change in the future.</para>
4267 pixels / second. 4533 pixels / second.
4268 </entry> 4534 </entry>
4269 </row> 4535 </row>
4536 <row>
4537 <entry spanname="id"><constant>V4L2_CID_TEST_PATTERN</constant></entry>
4538 <entry>menu</entry>
4539 </row>
4540 <row id="v4l2-test-pattern">
4541 <entry spanname="descr"> Some capture/display/sensor devices have
4542 the capability to generate test pattern images. These hardware
4543 specific test patterns can be used to test if a device is working
4544 properly.</entry>
4545 </row>
4270 <row><entry></entry></row> 4546 <row><entry></entry></row>
4271 </tbody> 4547 </tbody>
4272 </tgroup> 4548 </tgroup>
diff --git a/Documentation/DocBook/media/v4l/io.xml b/Documentation/DocBook/media/v4l/io.xml
index 97f785add841..b5d1cbdc558b 100644
--- a/Documentation/DocBook/media/v4l/io.xml
+++ b/Documentation/DocBook/media/v4l/io.xml
@@ -677,8 +677,10 @@ memory, set by the application. See <xref linkend="userp" /> for details.
677 <entry><structfield>length</structfield></entry> 677 <entry><structfield>length</structfield></entry>
678 <entry></entry> 678 <entry></entry>
679 <entry>Size of the buffer (not the payload) in bytes for the 679 <entry>Size of the buffer (not the payload) in bytes for the
680 single-planar API. For the multi-planar API should contain the 680 single-planar API. For the multi-planar API the application sets
681 number of elements in the <structfield>planes</structfield> array. 681 this to the number of elements in the <structfield>planes</structfield>
682 array. The driver will fill in the actual number of valid elements in
683 that array.
682 </entry> 684 </entry>
683 </row> 685 </row>
684 <row> 686 <row>
diff --git a/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml b/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
index 5274c24d11e0..a990b34d911a 100644
--- a/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt-nv12m.xml
@@ -1,11 +1,13 @@
1 <refentry id="V4L2-PIX-FMT-NV12M"> 1 <refentry>
2 <refmeta> 2 <refmeta>
3 <refentrytitle>V4L2_PIX_FMT_NV12M ('NM12')</refentrytitle> 3 <refentrytitle>V4L2_PIX_FMT_NV12M ('NM12'), V4L2_PIX_FMT_NV21M ('NM21'), V4L2_PIX_FMT_NV12MT_16X16</refentrytitle>
4 &manvol; 4 &manvol;
5 </refmeta> 5 </refmeta>
6 <refnamediv> 6 <refnamediv>
7 <refname> <constant>V4L2_PIX_FMT_NV12M</constant></refname> 7 <refname id="V4L2-PIX-FMT-NV12M"><constant>V4L2_PIX_FMT_NV12M</constant></refname>
8 <refpurpose>Variation of <constant>V4L2_PIX_FMT_NV12</constant> with planes 8 <refname id="V4L2-PIX-FMT-NV21M"><constant>V4L2_PIX_FMT_NV21M</constant></refname>
9 <refname id="V4L2-PIX-FMT-NV12MT_16X16"><constant>V4L2_PIX_FMT_NV12MT_16X16</constant></refname>
10 <refpurpose>Variation of <constant>V4L2_PIX_FMT_NV12</constant> and <constant>V4L2_PIX_FMT_NV21</constant> with planes
9 non contiguous in memory. </refpurpose> 11 non contiguous in memory. </refpurpose>
10 </refnamediv> 12 </refnamediv>
11 <refsect1> 13 <refsect1>
@@ -22,7 +24,12 @@ The CbCr plane is the same width, in bytes, as the Y plane (and of the image),
22but is half as tall in pixels. Each CbCr pair belongs to four pixels. For example, 24but is half as tall in pixels. Each CbCr pair belongs to four pixels. For example,
23Cb<subscript>0</subscript>/Cr<subscript>0</subscript> belongs to 25Cb<subscript>0</subscript>/Cr<subscript>0</subscript> belongs to
24Y'<subscript>00</subscript>, Y'<subscript>01</subscript>, 26Y'<subscript>00</subscript>, Y'<subscript>01</subscript>,
25Y'<subscript>10</subscript>, Y'<subscript>11</subscript>. </para> 27Y'<subscript>10</subscript>, Y'<subscript>11</subscript>.
28<constant>V4L2_PIX_FMT_NV12MT_16X16</constant> is the tiled version of
29<constant>V4L2_PIX_FMT_NV12M</constant> with 16x16 macroblock tiles. Here pixels
30are arranged in 16x16 2D tiles and tiles are arranged in linear order in memory.
31<constant>V4L2_PIX_FMT_NV21M</constant> is the same as <constant>V4L2_PIX_FMT_NV12M</constant>
32except the Cb and Cr bytes are swapped, the CrCb plane starts with a Cr byte.</para>
26 33
27 <para><constant>V4L2_PIX_FMT_NV12M</constant> is intended to be 34 <para><constant>V4L2_PIX_FMT_NV12M</constant> is intended to be
28used only in drivers and applications that support the multi-planar API, 35used only in drivers and applications that support the multi-planar API,
diff --git a/Documentation/DocBook/media/v4l/pixfmt.xml b/Documentation/DocBook/media/v4l/pixfmt.xml
index 1ddbfabe3195..bf94f417592c 100644
--- a/Documentation/DocBook/media/v4l/pixfmt.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt.xml
@@ -758,6 +758,11 @@ extended control <constant>V4L2_CID_MPEG_STREAM_TYPE</constant>, see
758 <entry>'AVC1'</entry> 758 <entry>'AVC1'</entry>
759 <entry>H264 video elementary stream without start codes.</entry> 759 <entry>H264 video elementary stream without start codes.</entry>
760 </row> 760 </row>
761 <row id="V4L2-PIX-FMT-H264-MVC">
762 <entry><constant>V4L2_PIX_FMT_H264_MVC</constant></entry>
763 <entry>'MVC'</entry>
764 <entry>H264 MVC video elementary stream.</entry>
765 </row>
761 <row id="V4L2-PIX-FMT-H263"> 766 <row id="V4L2-PIX-FMT-H263">
762 <entry><constant>V4L2_PIX_FMT_H263</constant></entry> 767 <entry><constant>V4L2_PIX_FMT_H263</constant></entry>
763 <entry>'H263'</entry> 768 <entry>'H263'</entry>
@@ -793,6 +798,11 @@ extended control <constant>V4L2_CID_MPEG_STREAM_TYPE</constant>, see
793 <entry>'VC1L'</entry> 798 <entry>'VC1L'</entry>
794 <entry>VC1, SMPTE 421M Annex L compliant stream.</entry> 799 <entry>VC1, SMPTE 421M Annex L compliant stream.</entry>
795 </row> 800 </row>
801 <row id="V4L2-PIX-FMT-VP8">
802 <entry><constant>V4L2_PIX_FMT_VP8</constant></entry>
803 <entry>'VP8'</entry>
804 <entry>VP8 video elementary stream.</entry>
805 </row>
796 </tbody> 806 </tbody>
797 </tgroup> 807 </tgroup>
798 </table> 808 </table>
@@ -996,6 +1006,34 @@ the other bits are set to 0.</entry>
996 <entry>Old 6-bit greyscale format. Only the most significant 6 bits of each byte are used, 1006 <entry>Old 6-bit greyscale format. Only the most significant 6 bits of each byte are used,
997the other bits are set to 0.</entry> 1007the other bits are set to 0.</entry>
998 </row> 1008 </row>
1009 <row id="V4L2-PIX-FMT-S5C-UYVY-JPG">
1010 <entry><constant>V4L2_PIX_FMT_S5C_UYVY_JPG</constant></entry>
1011 <entry>'S5CI'</entry>
1012 <entry>Two-planar format used by Samsung S5C73MX cameras. The
1013first plane contains interleaved JPEG and UYVY image data, followed by meta data
1014in form of an array of offsets to the UYVY data blocks. The actual pointer array
1015follows immediately the interleaved JPEG/UYVY data, the number of entries in
1016this array equals the height of the UYVY image. Each entry is a 4-byte unsigned
1017integer in big endian order and it's an offset to a single pixel line of the
1018UYVY image. The first plane can start either with JPEG or UYVY data chunk. The
1019size of a single UYVY block equals the UYVY image's width multiplied by 2. The
1020size of a JPEG chunk depends on the image and can vary with each line.
1021<para>The second plane, at an offset of 4084 bytes, contains a 4-byte offset to
1022the pointer array in the first plane. This offset is followed by a 4-byte value
1023indicating size of the pointer array. All numbers in the second plane are also
1024in big endian order. Remaining data in the second plane is undefined. The
1025information in the second plane allows to easily find location of the pointer
1026array, which can be different for each frame. The size of the pointer array is
1027constant for given UYVY image height.</para>
1028<para>In order to extract UYVY and JPEG frames an application can initially set
1029a data pointer to the start of first plane and then add an offset from the first
1030entry of the pointers table. Such a pointer indicates start of an UYVY image
1031pixel line. Whole UYVY line can be copied to a separate buffer. These steps
1032should be repeated for each line, i.e. the number of entries in the pointer
1033array. Anything what's in between the UYVY lines is JPEG data and should be
1034concatenated to form the JPEG stream. </para>
1035</entry>
1036 </row>
999 </tbody> 1037 </tbody>
1000 </tgroup> 1038 </tgroup>
1001 </table> 1039 </table>
diff --git a/Documentation/DocBook/media/v4l/subdev-formats.xml b/Documentation/DocBook/media/v4l/subdev-formats.xml
index 49c532ebbbbe..a0a936455fae 100644
--- a/Documentation/DocBook/media/v4l/subdev-formats.xml
+++ b/Documentation/DocBook/media/v4l/subdev-formats.xml
@@ -2565,5 +2565,49 @@
2565 </tgroup> 2565 </tgroup>
2566 </table> 2566 </table>
2567 </section> 2567 </section>
2568
2569 <section id="v4l2-mbus-vendor-spec-fmts">
2570 <title>Vendor and Device Specific Formats</title>
2571
2572 <note>
2573 <title>Experimental</title>
2574 <para>This is an <link linkend="experimental">experimental</link>
2575interface and may change in the future.</para>
2576 </note>
2577
2578 <para>This section lists complex data formats that are either vendor or
2579 device specific.
2580 </para>
2581
2582 <para>The following table lists the existing vendor and device specific
2583 formats.</para>
2584
2585 <table pgwide="0" frame="none" id="v4l2-mbus-pixelcode-vendor-specific">
2586 <title>Vendor and device specific formats</title>
2587 <tgroup cols="3">
2588 <colspec colname="id" align="left" />
2589 <colspec colname="code" align="left"/>
2590 <colspec colname="remarks" align="left"/>
2591 <thead>
2592 <row>
2593 <entry>Identifier</entry>
2594 <entry>Code</entry>
2595 <entry>Comments</entry>
2596 </row>
2597 </thead>
2598 <tbody valign="top">
2599 <row id="V4L2-MBUS-FMT-S5C-UYVY-JPEG-1X8">
2600 <entry>V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8</entry>
2601 <entry>0x5001</entry>
2602 <entry>
2603 Interleaved raw UYVY and JPEG image format with embedded
2604 meta-data used by Samsung S3C73MX camera sensors.
2605 </entry>
2606 </row>
2607 </tbody>
2608 </tgroup>
2609 </table>
2610 </section>
2611
2568 </section> 2612 </section>
2569</section> 2613</section>
diff --git a/Documentation/DocBook/media/v4l/vidioc-qbuf.xml b/Documentation/DocBook/media/v4l/vidioc-qbuf.xml
index 6a821a65a5ae..2d37abefce13 100644
--- a/Documentation/DocBook/media/v4l/vidioc-qbuf.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-qbuf.xml
@@ -121,8 +121,7 @@ remaining fields or returns an error code. The driver may also set
121field. It indicates a non-critical (recoverable) streaming error. In such case 121field. It indicates a non-critical (recoverable) streaming error. In such case
122the application may continue as normal, but should be aware that data in the 122the application may continue as normal, but should be aware that data in the
123dequeued buffer might be corrupted. When using the multi-planar API, the 123dequeued buffer might be corrupted. When using the multi-planar API, the
124planes array does not have to be passed; the <structfield>m.planes</structfield> 124planes array must be passed in as well.</para>
125member must be set to NULL in that case.</para>
126 125
127 <para>By default <constant>VIDIOC_DQBUF</constant> blocks when no 126 <para>By default <constant>VIDIOC_DQBUF</constant> blocks when no
128buffer is in the outgoing queue. When the 127buffer is in the outgoing queue. When the
diff --git a/Documentation/DocBook/media/v4l/vidioc-querybuf.xml b/Documentation/DocBook/media/v4l/vidioc-querybuf.xml
index 6e414d7b6df7..a597155c052d 100644
--- a/Documentation/DocBook/media/v4l/vidioc-querybuf.xml
+++ b/Documentation/DocBook/media/v4l/vidioc-querybuf.xml
@@ -48,8 +48,8 @@
48 <refsect1> 48 <refsect1>
49 <title>Description</title> 49 <title>Description</title>
50 50
51 <para>This ioctl is part of the <link linkend="mmap">memory 51 <para>This ioctl is part of the <link linkend="mmap">streaming
52mapping</link> I/O method. It can be used to query the status of a 52</link> I/O method. It can be used to query the status of a
53buffer at any time after buffers have been allocated with the 53buffer at any time after buffers have been allocated with the
54&VIDIOC-REQBUFS; ioctl.</para> 54&VIDIOC-REQBUFS; ioctl.</para>
55 55
@@ -71,6 +71,7 @@ the structure.</para>
71 71
72 <para>In the <structfield>flags</structfield> field the 72 <para>In the <structfield>flags</structfield> field the
73<constant>V4L2_BUF_FLAG_MAPPED</constant>, 73<constant>V4L2_BUF_FLAG_MAPPED</constant>,
74<constant>V4L2_BUF_FLAG_PREPARED</constant>,
74<constant>V4L2_BUF_FLAG_QUEUED</constant> and 75<constant>V4L2_BUF_FLAG_QUEUED</constant> and
75<constant>V4L2_BUF_FLAG_DONE</constant> flags will be valid. The 76<constant>V4L2_BUF_FLAG_DONE</constant> flags will be valid. The
76<structfield>memory</structfield> field will be set to the current 77<structfield>memory</structfield> field will be set to the current
@@ -79,8 +80,10 @@ contains the offset of the buffer from the start of the device memory,
79the <structfield>length</structfield> field its size. For the multi-planar API, 80the <structfield>length</structfield> field its size. For the multi-planar API,
80fields <structfield>m.mem_offset</structfield> and 81fields <structfield>m.mem_offset</structfield> and
81<structfield>length</structfield> in the <structfield>m.planes</structfield> 82<structfield>length</structfield> in the <structfield>m.planes</structfield>
82array elements will be used instead. The driver may or may not set the remaining 83array elements will be used instead and the <structfield>length</structfield>
83fields and flags, they are meaningless in this context.</para> 84field of &v4l2-buffer; is set to the number of filled-in array elements.
85The driver may or may not set the remaining fields and flags, they are
86meaningless in this context.</para>
84 87
85 <para>The <structname>v4l2_buffer</structname> structure is 88 <para>The <structname>v4l2_buffer</structname> structure is
86 specified in <xref linkend="buffer" />.</para> 89 specified in <xref linkend="buffer" />.</para>
diff --git a/Documentation/DocBook/mtdnand.tmpl b/Documentation/DocBook/mtdnand.tmpl
index e0aedb7a7827..fe122d6e686f 100644
--- a/Documentation/DocBook/mtdnand.tmpl
+++ b/Documentation/DocBook/mtdnand.tmpl
@@ -1216,8 +1216,6 @@ in this page</entry>
1216#define NAND_BBT_LASTBLOCK 0x00000010 1216#define NAND_BBT_LASTBLOCK 0x00000010
1217/* The bbt is at the given page, else we must scan for the bbt */ 1217/* The bbt is at the given page, else we must scan for the bbt */
1218#define NAND_BBT_ABSPAGE 0x00000020 1218#define NAND_BBT_ABSPAGE 0x00000020
1219/* The bbt is at the given page, else we must scan for the bbt */
1220#define NAND_BBT_SEARCH 0x00000040
1221/* bbt is stored per chip on multichip devices */ 1219/* bbt is stored per chip on multichip devices */
1222#define NAND_BBT_PERCHIP 0x00000080 1220#define NAND_BBT_PERCHIP 0x00000080
1223/* bbt has a version counter at offset veroffs */ 1221/* bbt has a version counter at offset veroffs */
diff --git a/Documentation/arm/Booting b/Documentation/arm/Booting
index a341d87d276e..0c1f475fdf36 100644
--- a/Documentation/arm/Booting
+++ b/Documentation/arm/Booting
@@ -154,13 +154,33 @@ In either case, the following conditions must be met:
154 154
155- CPU mode 155- CPU mode
156 All forms of interrupts must be disabled (IRQs and FIQs) 156 All forms of interrupts must be disabled (IRQs and FIQs)
157 The CPU must be in SVC mode. (A special exception exists for Angel) 157
158 For CPUs which do not include the ARM virtualization extensions, the
159 CPU must be in SVC mode. (A special exception exists for Angel)
160
161 CPUs which include support for the virtualization extensions can be
162 entered in HYP mode in order to enable the kernel to make full use of
163 these extensions. This is the recommended boot method for such CPUs,
164 unless the virtualisations are already in use by a pre-installed
165 hypervisor.
166
167 If the kernel is not entered in HYP mode for any reason, it must be
168 entered in SVC mode.
158 169
159- Caches, MMUs 170- Caches, MMUs
160 The MMU must be off. 171 The MMU must be off.
161 Instruction cache may be on or off. 172 Instruction cache may be on or off.
162 Data cache must be off. 173 Data cache must be off.
163 174
175 If the kernel is entered in HYP mode, the above requirements apply to
176 the HYP mode configuration in addition to the ordinary PL1 (privileged
177 kernel modes) configuration. In addition, all traps into the
178 hypervisor must be disabled, and PL1 access must be granted for all
179 peripherals and CPU resources for which this is architecturally
180 possible. Except for entering in HYP mode, the system configuration
181 should be such that a kernel which does not include support for the
182 virtualization extensions can boot correctly without extra help.
183
164- The boot loader is expected to call the kernel image by jumping 184- The boot loader is expected to call the kernel image by jumping
165 directly to the first instruction of the kernel image. 185 directly to the first instruction of the kernel image.
166 186
diff --git a/Documentation/block/biodoc.txt b/Documentation/block/biodoc.txt
index e418dc0a7086..8df5e8e6dceb 100644
--- a/Documentation/block/biodoc.txt
+++ b/Documentation/block/biodoc.txt
@@ -465,7 +465,6 @@ struct bio {
465 bio_end_io_t *bi_end_io; /* bi_end_io (bio) */ 465 bio_end_io_t *bi_end_io; /* bi_end_io (bio) */
466 atomic_t bi_cnt; /* pin count: free when it hits zero */ 466 atomic_t bi_cnt; /* pin count: free when it hits zero */
467 void *bi_private; 467 void *bi_private;
468 bio_destructor_t *bi_destructor; /* bi_destructor (bio) */
469}; 468};
470 469
471With this multipage bio design: 470With this multipage bio design:
@@ -647,10 +646,6 @@ for a non-clone bio. There are the 6 pools setup for different size biovecs,
647so bio_alloc(gfp_mask, nr_iovecs) will allocate a vec_list of the 646so bio_alloc(gfp_mask, nr_iovecs) will allocate a vec_list of the
648given size from these slabs. 647given size from these slabs.
649 648
650The bi_destructor() routine takes into account the possibility of the bio
651having originated from a different source (see later discussions on
652n/w to block transfers and kvec_cb)
653
654The bio_get() routine may be used to hold an extra reference on a bio prior 649The bio_get() routine may be used to hold an extra reference on a bio prior
655to i/o submission, if the bio fields are likely to be accessed after the 650to i/o submission, if the bio fields are likely to be accessed after the
656i/o is issued (since the bio may otherwise get freed in case i/o completion 651i/o is issued (since the bio may otherwise get freed in case i/o completion
diff --git a/Documentation/devicetree/bindings/arm/davinci/nand.txt b/Documentation/devicetree/bindings/arm/davinci/nand.txt
new file mode 100644
index 000000000000..e37241f1fdd8
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/davinci/nand.txt
@@ -0,0 +1,51 @@
1* Texas Instruments Davinci NAND
2
3This file provides information, what the device node for the
4davinci nand interface contain.
5
6Required properties:
7- compatible: "ti,davinci-nand";
8- reg : contain 2 offset/length values:
9 - offset and length for the access window
10 - offset and length for accessing the aemif control registers
11- ti,davinci-chipselect: Indicates on the davinci_nand driver which
12 chipselect is used for accessing the nand.
13
14Recommended properties :
15- ti,davinci-mask-ale: mask for ale
16- ti,davinci-mask-cle: mask for cle
17- ti,davinci-mask-chipsel: mask for chipselect
18- ti,davinci-ecc-mode: ECC mode valid values for davinci driver:
19 - "none"
20 - "soft"
21 - "hw"
22- ti,davinci-ecc-bits: used ECC bits, currently supported 1 or 4.
23- ti,davinci-nand-buswidth: buswidth 8 or 16
24- ti,davinci-nand-use-bbt: use flash based bad block table support.
25
26Example (enbw_cmc board):
27aemif@60000000 {
28 compatible = "ti,davinci-aemif";
29 #address-cells = <2>;
30 #size-cells = <1>;
31 reg = <0x68000000 0x80000>;
32 ranges = <2 0 0x60000000 0x02000000
33 3 0 0x62000000 0x02000000
34 4 0 0x64000000 0x02000000
35 5 0 0x66000000 0x02000000
36 6 0 0x68000000 0x02000000>;
37 nand@3,0 {
38 compatible = "ti,davinci-nand";
39 reg = <3 0x0 0x807ff
40 6 0x0 0x8000>;
41 #address-cells = <1>;
42 #size-cells = <1>;
43 ti,davinci-chipselect = <1>;
44 ti,davinci-mask-ale = <0>;
45 ti,davinci-mask-cle = <0>;
46 ti,davinci-mask-chipsel = <0>;
47 ti,davinci-ecc-mode = "hw";
48 ti,davinci-ecc-bits = <4>;
49 ti,davinci-nand-use-bbt;
50 };
51};
diff --git a/Documentation/devicetree/bindings/i2c/atmel-i2c.txt b/Documentation/devicetree/bindings/i2c/atmel-i2c.txt
new file mode 100644
index 000000000000..b689a0d9441c
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/atmel-i2c.txt
@@ -0,0 +1,30 @@
1I2C for Atmel platforms
2
3Required properties :
4- compatible : Must be "atmel,at91rm9200-i2c", "atmel,at91sam9261-i2c",
5 "atmel,at91sam9260-i2c", "atmel,at91sam9g20-i2c", "atmel,at91sam9g10-i2c"
6 or "atmel,at91sam9x5-i2c"
7- reg: physical base address of the controller and length of memory mapped
8 region.
9- interrupts: interrupt number to the cpu.
10- #address-cells = <1>;
11- #size-cells = <0>;
12
13Optional properties:
14- Child nodes conforming to i2c bus binding
15
16Examples :
17
18i2c0: i2c@fff84000 {
19 compatible = "atmel,at91sam9g20-i2c";
20 reg = <0xfff84000 0x100>;
21 interrupts = <12 4 6>;
22 #address-cells = <1>;
23 #size-cells = <0>;
24
25 24c512@50 {
26 compatible = "24c512";
27 reg = <0x50>;
28 pagesize = <128>;
29 }
30}
diff --git a/Documentation/devicetree/bindings/i2c/davinci.txt b/Documentation/devicetree/bindings/i2c/davinci.txt
new file mode 100644
index 000000000000..2dc935b4113d
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/davinci.txt
@@ -0,0 +1,28 @@
1* Texas Instruments Davinci I2C
2
3This file provides information, what the device node for the
4davinci i2c interface contain.
5
6Required properties:
7- compatible: "ti,davinci-i2c";
8- reg : Offset and length of the register set for the device
9
10Recommended properties :
11- interrupts : standard interrupt property.
12- clock-frequency : desired I2C bus clock frequency in Hz.
13
14Example (enbw_cmc board):
15 i2c@1c22000 {
16 compatible = "ti,davinci-i2c";
17 reg = <0x22000 0x1000>;
18 clock-frequency = <100000>;
19 interrupts = <15>;
20 interrupt-parent = <&intc>;
21 #address-cells = <1>;
22 #size-cells = <0>;
23
24 dtt@48 {
25 compatible = "national,lm75";
26 reg = <0x48>;
27 };
28 };
diff --git a/Documentation/devicetree/bindings/i2c/i2c-mxs.txt b/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
index 30ac3a0557f7..7a3fe9e5f4cb 100644
--- a/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
+++ b/Documentation/devicetree/bindings/i2c/i2c-mxs.txt
@@ -6,6 +6,7 @@ Required properties:
6- interrupts: Should contain ERROR and DMA interrupts 6- interrupts: Should contain ERROR and DMA interrupts
7- clock-frequency: Desired I2C bus clock frequency in Hz. 7- clock-frequency: Desired I2C bus clock frequency in Hz.
8 Only 100000Hz and 400000Hz modes are supported. 8 Only 100000Hz and 400000Hz modes are supported.
9- fsl,i2c-dma-channel: APBX DMA channel for the I2C
9 10
10Examples: 11Examples:
11 12
@@ -16,4 +17,5 @@ i2c0: i2c@80058000 {
16 reg = <0x80058000 2000>; 17 reg = <0x80058000 2000>;
17 interrupts = <111 68>; 18 interrupts = <111 68>;
18 clock-frequency = <100000>; 19 clock-frequency = <100000>;
20 fsl,i2c-dma-channel = <6>;
19}; 21};
diff --git a/Documentation/devicetree/bindings/i2c/nomadik.txt b/Documentation/devicetree/bindings/i2c/nomadik.txt
new file mode 100644
index 000000000000..72065b0ff680
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/nomadik.txt
@@ -0,0 +1,23 @@
1I2C for Nomadik based systems
2
3Required (non-standard) properties:
4 - Nil
5
6Recommended (non-standard) properties:
7 - clock-frequency : Maximum bus clock frequency for the device
8
9Optional (non-standard) properties:
10 - Nil
11
12Example :
13
14i2c@80004000 {
15 compatible = "stericsson,db8500-i2c", "st,nomadik-i2c";
16 reg = <0x80004000 0x1000>;
17 interrupts = <0 21 0x4>;
18 #address-cells = <1>;
19 #size-cells = <0>;
20 v-i2c-supply = <&db8500_vape_reg>;
21
22 clock-frequency = <400000>;
23};
diff --git a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
index 548892c08c59..7da578d72123 100644
--- a/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
+++ b/Documentation/devicetree/bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
@@ -7,7 +7,7 @@ as "armctrl" in the SoC documentation, hence naming of this binding.
7 7
8Required properties: 8Required properties:
9 9
10- compatible : should be "brcm,bcm2835-armctrl-ic.txt" 10- compatible : should be "brcm,bcm2835-armctrl-ic"
11- reg : Specifies base physical address and size of the registers. 11- reg : Specifies base physical address and size of the registers.
12- interrupt-controller : Identifies the node as an interrupt controller 12- interrupt-controller : Identifies the node as an interrupt controller
13- #interrupt-cells : Specifies the number of cells needed to encode an 13- #interrupt-cells : Specifies the number of cells needed to encode an
diff --git a/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt
new file mode 100644
index 000000000000..0a85c70cd30a
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/atmel-hsmci.txt
@@ -0,0 +1,68 @@
1* Atmel High Speed MultiMedia Card Interface
2
3This controller on atmel products provides an interface for MMC, SD and SDIO
4types of memory cards.
5
6This file documents differences between the core properties described
7by mmc.txt and the properties used by the atmel-mci driver.
8
91) MCI node
10
11Required properties:
12- compatible: should be "atmel,hsmci"
13- #address-cells: should be one. The cell is the slot id.
14- #size-cells: should be zero.
15- at least one slot node
16
17The node contains child nodes for each slot that the platform uses
18
19Example MCI node:
20
21mmc0: mmc@f0008000 {
22 compatible = "atmel,hsmci";
23 reg = <0xf0008000 0x600>;
24 interrupts = <12 4>;
25 #address-cells = <1>;
26 #size-cells = <0>;
27
28 [ child node definitions...]
29};
30
312) slot nodes
32
33Required properties:
34- reg: should contain the slot id.
35- bus-width: number of data lines connected to the controller
36
37Optional properties:
38- cd-gpios: specify GPIOs for card detection
39- cd-inverted: invert the value of external card detect gpio line
40- wp-gpios: specify GPIOs for write protection
41
42Example slot node:
43
44slot@0 {
45 reg = <0>;
46 bus-width = <4>;
47 cd-gpios = <&pioD 15 0>
48 cd-inverted;
49};
50
51Example full MCI node:
52mmc0: mmc@f0008000 {
53 compatible = "atmel,hsmci";
54 reg = <0xf0008000 0x600>;
55 interrupts = <12 4>;
56 #address-cells = <1>;
57 #size-cells = <0>;
58 slot@0 {
59 reg = <0>;
60 bus-width = <4>;
61 cd-gpios = <&pioD 15 0>
62 cd-inverted;
63 };
64 slot@1 {
65 reg = <1>;
66 bus-width = <4>;
67 };
68};
diff --git a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt
new file mode 100644
index 000000000000..792768953330
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt
@@ -0,0 +1,87 @@
1* Samsung Exynos specific extensions to the Synopsis Designware Mobile
2 Storage Host Controller
3
4The Synopsis designware mobile storage host controller is used to interface
5a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
6differences between the core Synopsis dw mshc controller properties described
7by synposis-dw-mshc.txt and the properties used by the Samsung Exynos specific
8extensions to the Synopsis Designware Mobile Storage Host Controller.
9
10Required Properties:
11
12* compatible: should be
13 - "samsung,exynos4210-dw-mshc": for controllers with Samsung Exynos4210
14 specific extentions.
15 - "samsung,exynos4412-dw-mshc": for controllers with Samsung Exynos4412
16 specific extentions.
17 - "samsung,exynos5250-dw-mshc": for controllers with Samsung Exynos5250
18 specific extentions.
19
20* samsung,dw-mshc-ciu-div: Specifies the divider value for the card interface
21 unit (ciu) clock. This property is applicable only for Exynos5 SoC's and
22 ignored for Exynos4 SoC's. The valid range of divider value is 0 to 7.
23
24* samsung,dw-mshc-sdr-timing: Specifies the value of CIU clock phase shift value
25 in transmit mode and CIU clock phase shift value in receive mode for single
26 data rate mode operation. Refer notes below for the order of the cells and the
27 valid values.
28
29* samsung,dw-mshc-ddr-timing: Specifies the value of CUI clock phase shift value
30 in transmit mode and CIU clock phase shift value in receive mode for double
31 data rate mode operation. Refer notes below for the order of the cells and the
32 valid values.
33
34 Notes for the sdr-timing and ddr-timing values:
35
36 The order of the cells should be
37 - First Cell: CIU clock phase shift value for tx mode.
38 - Second Cell: CIU clock phase shift value for rx mode.
39
40 Valid values for SDR and DDR CIU clock timing for Exynos5250:
41 - valid value for tx phase shift and rx phase shift is 0 to 7.
42 - when CIU clock divider value is set to 3, all possible 8 phase shift
43 values can be used.
44 - if CIU clock divider value is 0 (that is divide by 1), both tx and rx
45 phase shift clocks should be 0.
46
47Required properties for a slot:
48
49* gpios: specifies a list of gpios used for command, clock and data bus. The
50 first gpio is the command line and the second gpio is the clock line. The
51 rest of the gpios (depending on the bus-width property) are the data lines in
52 no particular order. The format of the gpio specifier depends on the gpio
53 controller.
54
55Example:
56
57 The MSHC controller node can be split into two portions, SoC specific and
58 board specific portions as listed below.
59
60 dwmmc0@12200000 {
61 compatible = "samsung,exynos5250-dw-mshc";
62 reg = <0x12200000 0x1000>;
63 interrupts = <0 75 0>;
64 #address-cells = <1>;
65 #size-cells = <0>;
66 };
67
68 dwmmc0@12200000 {
69 num-slots = <1>;
70 supports-highspeed;
71 broken-cd;
72 fifo-depth = <0x80>;
73 card-detect-delay = <200>;
74 samsung,dw-mshc-ciu-div = <3>;
75 samsung,dw-mshc-sdr-timing = <2 3>;
76 samsung,dw-mshc-ddr-timing = <1 2>;
77
78 slot@0 {
79 reg = <0>;
80 bus-width = <8>;
81 gpios = <&gpc0 0 2 0 3>, <&gpc0 1 2 0 3>,
82 <&gpc1 0 2 3 3>, <&gpc1 1 2 3 3>,
83 <&gpc1 2 2 3 3>, <&gpc1 3 2 3 3>,
84 <&gpc0 3 2 3 3>, <&gpc0 4 2 3 3>,
85 <&gpc0 5 2 3 3>, <&gpc0 6 2 3 3>;
86 };
87 };
diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt
index 8a6811f4a02f..8e2e0ba2f486 100644
--- a/Documentation/devicetree/bindings/mmc/mmc.txt
+++ b/Documentation/devicetree/bindings/mmc/mmc.txt
@@ -9,12 +9,17 @@ Interpreted by the OF core:
9Required properties: 9Required properties:
10- bus-width: Number of data lines, can be <1>, <4>, or <8> 10- bus-width: Number of data lines, can be <1>, <4>, or <8>
11 11
12Card detection:
13If no property below is supplied, standard SDHCI card detect is used.
14Only one of the properties in this section should be supplied:
15 - broken-cd: There is no card detection available; polling must be used.
16 - cd-gpios: Specify GPIOs for card detection, see gpio binding
17 - non-removable: non-removable slot (like eMMC); assume always present.
18
12Optional properties: 19Optional properties:
13- cd-gpios: Specify GPIOs for card detection, see gpio binding
14- wp-gpios: Specify GPIOs for write protection, see gpio binding 20- wp-gpios: Specify GPIOs for write protection, see gpio binding
15- cd-inverted: when present, polarity on the cd gpio line is inverted 21- cd-inverted: when present, polarity on the cd gpio line is inverted
16- wp-inverted: when present, polarity on the wp gpio line is inverted 22- wp-inverted: when present, polarity on the wp gpio line is inverted
17- non-removable: non-removable slot (like eMMC)
18- max-frequency: maximum operating clock frequency 23- max-frequency: maximum operating clock frequency
19 24
20Example: 25Example:
diff --git a/Documentation/devicetree/bindings/mmc/pxa-mmc.txt b/Documentation/devicetree/bindings/mmc/pxa-mmc.txt
new file mode 100644
index 000000000000..b7025de7dced
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/pxa-mmc.txt
@@ -0,0 +1,25 @@
1* PXA MMC drivers
2
3Driver bindings for the PXA MCI (MMC/SDIO) interfaces
4
5Required properties:
6- compatible: Should be "marvell,pxa-mmc".
7- vmmc-supply: A regulator for VMMC
8
9Optional properties:
10- marvell,detect-delay-ms: sets the detection delay timeout in ms.
11- marvell,gpio-power: GPIO spec for the card power enable pin
12
13This file documents differences between the core properties in mmc.txt
14and the properties used by the pxa-mmc driver.
15
16Examples:
17
18mmc0: mmc@41100000 {
19 compatible = "marvell,pxa-mmc";
20 reg = <0x41100000 0x1000>;
21 interrupts = <23>;
22 cd-gpios = <&gpio 23 0>;
23 wp-gpios = <&gpio 24 0>;
24};
25
diff --git a/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
new file mode 100644
index 000000000000..630a7d7f4718
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/samsung-sdhci.txt
@@ -0,0 +1,53 @@
1* Samsung's SDHCI Controller device tree bindings
2
3Samsung's SDHCI controller is used as a connectivity interface with external
4MMC, SD and eMMC storage mediums. This file documents differences between the
5core mmc properties described by mmc.txt and the properties used by the
6Samsung implmentation of the SDHCI controller.
7
8Note: The mmc core bindings documentation states that if none of the core
9card-detect bindings are used, then the standard sdhci card detect mechanism
10is used. The Samsung's SDHCI controller bindings extends this as listed below.
11
12[A] The property "samsung,cd-pinmux-gpio" can be used as stated in the
13 "Optional Board Specific Properties" section below.
14
15[B] If core card-detect bindings and "samsung,cd-pinmux-gpio" property
16 is not specified, it is assumed that there is no card detection
17 mechanism used.
18
19Required SoC Specific Properties:
20- compatible: should be one of the following
21 - "samsung,s3c6410-sdhci": For controllers compatible with s3c6410 sdhci
22 controller.
23 - "samsung,exynos4210-sdhci": For controllers compatible with Exynos4 sdhci
24 controller.
25
26Required Board Specific Properties:
27- gpios: Should specify the gpios used for clock, command and data lines. The
28 gpio specifier format depends on the gpio controller.
29
30Optional Board Specific Properties:
31- samsung,cd-pinmux-gpio: Specifies the card detect line that is routed
32 through a pinmux to the card-detect pin of the card slot. This property
33 should be used only if none of the mmc core card-detect properties are
34 used.
35
36Example:
37 sdhci@12530000 {
38 compatible = "samsung,exynos4210-sdhci";
39 reg = <0x12530000 0x100>;
40 interrupts = <0 75 0>;
41 bus-width = <4>;
42 cd-gpios = <&gpk2 2 2 3 3>;
43 gpios = <&gpk2 0 2 0 3>, /* clock line */
44 <&gpk2 1 2 0 3>, /* command line */
45 <&gpk2 3 2 3 3>, /* data line 0 */
46 <&gpk2 4 2 3 3>, /* data line 1 */
47 <&gpk2 5 2 3 3>, /* data line 2 */
48 <&gpk2 6 2 3 3>; /* data line 3 */
49 };
50
51 Note: This example shows both SoC specific and board specific properties
52 in a single device node. The properties can be actually be seperated
53 into SoC specific node and board specific node.
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-dove.txt b/Documentation/devicetree/bindings/mmc/sdhci-dove.txt
new file mode 100644
index 000000000000..ae9aab9abcd7
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/sdhci-dove.txt
@@ -0,0 +1,14 @@
1* Marvell sdhci-dove controller
2
3This file documents differences between the core properties in mmc.txt
4and the properties used by the sdhci-pxav2 and sdhci-pxav3 drivers.
5
6- compatible: Should be "marvell,dove-sdhci".
7
8Example:
9
10sdio0: sdio@92000 {
11 compatible = "marvell,dove-sdhci";
12 reg = <0x92000 0x100>;
13 interrupts = <35>;
14};
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-spear.txt b/Documentation/devicetree/bindings/mmc/sdhci-spear.txt
new file mode 100644
index 000000000000..fd3643e7e467
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/sdhci-spear.txt
@@ -0,0 +1,18 @@
1* SPEAr SDHCI Controller
2
3This file documents differences between the core properties in mmc.txt
4and the properties used by the sdhci-spear driver.
5
6Required properties:
7- compatible: "st,spear300-sdhci"
8
9Optional properties:
10- cd-gpios: card detect gpio, with zero flags.
11
12Example:
13
14 sdhci@fc000000 {
15 compatible = "st,spear300-sdhci";
16 reg = <0xfc000000 0x1000>;
17 cd-gpios = <&gpio0 6 0>;
18 };
diff --git a/Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt
new file mode 100644
index 000000000000..06cd32d08052
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/synposis-dw-mshc.txt
@@ -0,0 +1,79 @@
1* Synopsis Designware Mobile Storage Host Controller
2
3The Synopsis designware mobile storage host controller is used to interface
4a SoC with storage medium such as eMMC or SD/MMC cards. This file documents
5differences between the core mmc properties described by mmc.txt and the
6properties used by the Synopsis Designware Mobile Storage Host Controller.
7
8Required Properties:
9
10* compatible: should be
11 - snps,dw-mshc: for controllers compliant with synopsis dw-mshc.
12* #address-cells: should be 1.
13* #size-cells: should be 0.
14
15# Slots: The slot specific information are contained within child-nodes with
16 each child-node representing a supported slot. There should be atleast one
17 child node representing a card slot. The name of the child node representing
18 the slot is recommended to be slot@n where n is the unique number of the slot
19 connnected to the controller. The following are optional properties which
20 can be included in the slot child node.
21
22 * reg: specifies the physical slot number. The valid values of this
23 property is 0 to (num-slots -1), where num-slots is the value
24 specified by the num-slots property.
25
26 * bus-width: as documented in mmc core bindings.
27
28 * wp-gpios: specifies the write protect gpio line. The format of the
29 gpio specifier depends on the gpio controller. If the write-protect
30 line is not available, this property is optional.
31
32Optional properties:
33
34* num-slots: specifies the number of slots supported by the controller.
35 The number of physical slots actually used could be equal or less than the
36 value specified by num-slots. If this property is not specified, the value
37 of num-slot property is assumed to be 1.
38
39* fifo-depth: The maximum size of the tx/rx fifo's. If this property is not
40 specified, the default value of the fifo size is determined from the
41 controller registers.
42
43* card-detect-delay: Delay in milli-seconds before detecting card after card
44 insert event. The default value is 0.
45
46* supports-highspeed: Enables support for high speed cards (upto 50MHz)
47
48* broken-cd: as documented in mmc core bindings.
49
50Aliases:
51
52- All the MSHC controller nodes should be represented in the aliases node using
53 the following format 'mshc{n}' where n is a unique number for the alias.
54
55Example:
56
57The MSHC controller node can be split into two portions, SoC specific and
58board specific portions as listed below.
59
60 dwmmc0@12200000 {
61 compatible = "snps,dw-mshc";
62 reg = <0x12200000 0x1000>;
63 interrupts = <0 75 0>;
64 #address-cells = <1>;
65 #size-cells = <0>;
66 };
67
68 dwmmc0@12200000 {
69 num-slots = <1>;
70 supports-highspeed;
71 broken-cd;
72 fifo-depth = <0x80>;
73 card-detect-delay = <200>;
74
75 slot@0 {
76 reg = <0>;
77 bus-width = <8>;
78 };
79 };
diff --git a/Documentation/devicetree/bindings/mtd/atmel-nand.txt b/Documentation/devicetree/bindings/mtd/atmel-nand.txt
index a20069502f5a..d555421ea49f 100644
--- a/Documentation/devicetree/bindings/mtd/atmel-nand.txt
+++ b/Documentation/devicetree/bindings/mtd/atmel-nand.txt
@@ -3,7 +3,9 @@ Atmel NAND flash
3Required properties: 3Required properties:
4- compatible : "atmel,at91rm9200-nand". 4- compatible : "atmel,at91rm9200-nand".
5- reg : should specify localbus address and size used for the chip, 5- reg : should specify localbus address and size used for the chip,
6 and if availlable the ECC. 6 and hardware ECC controller if available.
7 If the hardware ECC is PMECC, it should contain address and size for
8 PMECC, PMECC Error Location controller and ROM which has lookup tables.
7- atmel,nand-addr-offset : offset for the address latch. 9- atmel,nand-addr-offset : offset for the address latch.
8- atmel,nand-cmd-offset : offset for the command latch. 10- atmel,nand-cmd-offset : offset for the command latch.
9- #address-cells, #size-cells : Must be present if the device has sub-nodes 11- #address-cells, #size-cells : Must be present if the device has sub-nodes
@@ -16,6 +18,15 @@ Optional properties:
16- nand-ecc-mode : String, operation mode of the NAND ecc mode, soft by default. 18- nand-ecc-mode : String, operation mode of the NAND ecc mode, soft by default.
17 Supported values are: "none", "soft", "hw", "hw_syndrome", "hw_oob_first", 19 Supported values are: "none", "soft", "hw", "hw_syndrome", "hw_oob_first",
18 "soft_bch". 20 "soft_bch".
21- atmel,has-pmecc : boolean to enable Programmable Multibit ECC hardware.
22 Only supported by at91sam9x5 or later sam9 product.
23- atmel,pmecc-cap : error correct capability for Programmable Multibit ECC
24 Controller. Supported values are: 2, 4, 8, 12, 24.
25- atmel,pmecc-sector-size : sector size for ECC computation. Supported values
26 are: 512, 1024.
27- atmel,pmecc-lookup-table-offset : includes two offsets of lookup table in ROM
28 for different sector size. First one is for sector size 512, the next is for
29 sector size 1024.
19- nand-bus-width : 8 or 16 bus width if not present 8 30- nand-bus-width : 8 or 16 bus width if not present 8
20- nand-on-flash-bbt: boolean to enable on flash bbt option if not present false 31- nand-on-flash-bbt: boolean to enable on flash bbt option if not present false
21 32
@@ -39,3 +50,30 @@ nand0: nand@40000000,0 {
39 ... 50 ...
40 }; 51 };
41}; 52};
53
54/* for PMECC supported chips */
55nand0: nand@40000000 {
56 compatible = "atmel,at91rm9200-nand";
57 #address-cells = <1>;
58 #size-cells = <1>;
59 reg = < 0x40000000 0x10000000 /* bus addr & size */
60 0xffffe000 0x00000600 /* PMECC addr & size */
61 0xffffe600 0x00000200 /* PMECC ERRLOC addr & size */
62 0x00100000 0x00100000 /* ROM addr & size */
63 >;
64 atmel,nand-addr-offset = <21>; /* ale */
65 atmel,nand-cmd-offset = <22>; /* cle */
66 nand-on-flash-bbt;
67 nand-ecc-mode = "hw";
68 atmel,has-pmecc; /* enable PMECC */
69 atmel,pmecc-cap = <2>;
70 atmel,pmecc-sector-size = <512>;
71 atmel,pmecc-lookup-table-offset = <0x8000 0x10000>;
72 gpios = <&pioD 5 0 /* rdy */
73 &pioD 4 0 /* nce */
74 0 /* cd */
75 >;
76 partition@0 {
77 ...
78 };
79};
diff --git a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt
index 1a5bbd346d22..3fb3f9015365 100644
--- a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt
+++ b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt
@@ -12,6 +12,10 @@ Required properties:
12 - interrupt-names : The interrupt names "gpmi-dma", "bch"; 12 - interrupt-names : The interrupt names "gpmi-dma", "bch";
13 - fsl,gpmi-dma-channel : Should contain the dma channel it uses. 13 - fsl,gpmi-dma-channel : Should contain the dma channel it uses.
14 14
15Optional properties:
16 - nand-on-flash-bbt: boolean to enable on flash bbt option if not
17 present false
18
15The device tree may optionally contain sub-nodes describing partitions of the 19The device tree may optionally contain sub-nodes describing partitions of the
16address space. See partition.txt for more detail. 20address space. See partition.txt for more detail.
17 21
diff --git a/Documentation/devicetree/bindings/mtd/lpc32xx-mlc.txt b/Documentation/devicetree/bindings/mtd/lpc32xx-mlc.txt
new file mode 100644
index 000000000000..d0a37252eb22
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/lpc32xx-mlc.txt
@@ -0,0 +1,50 @@
1NXP LPC32xx SoC NAND MLC controller
2
3Required properties:
4- compatible: "nxp,lpc3220-mlc"
5- reg: Address and size of the controller
6- interrupts: The NAND interrupt specification
7- gpios: GPIO specification for NAND write protect
8
9The following required properties are very controller specific. See the LPC32xx
10User Manual 7.5.14 MLC NAND Timing Register (the values here are specified in
11Hz, to make them independent of actual clock speed and to provide for good
12accuracy:)
13- nxp,tcea_delay: TCEA_DELAY
14- nxp,busy_delay: BUSY_DELAY
15- nxp,nand_ta: NAND_TA
16- nxp,rd_high: RD_HIGH
17- nxp,rd_low: RD_LOW
18- nxp,wr_high: WR_HIGH
19- nxp,wr_low: WR_LOW
20
21Optional subnodes:
22- Partitions, see Documentation/devicetree/bindings/mtd/partition.txt
23
24Example:
25
26 mlc: flash@200A8000 {
27 compatible = "nxp,lpc3220-mlc";
28 reg = <0x200A8000 0x11000>;
29 interrupts = <11 0>;
30 #address-cells = <1>;
31 #size-cells = <1>;
32
33 nxp,tcea-delay = <333333333>;
34 nxp,busy-delay = <10000000>;
35 nxp,nand-ta = <18181818>;
36 nxp,rd-high = <31250000>;
37 nxp,rd-low = <45454545>;
38 nxp,wr-high = <40000000>;
39 nxp,wr-low = <83333333>;
40 gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
41
42 mtd0@00000000 {
43 label = "boot";
44 reg = <0x00000000 0x00064000>;
45 read-only;
46 };
47
48 ...
49
50 };
diff --git a/Documentation/devicetree/bindings/mtd/lpc32xx-slc.txt b/Documentation/devicetree/bindings/mtd/lpc32xx-slc.txt
new file mode 100644
index 000000000000..d94edc0fc554
--- /dev/null
+++ b/Documentation/devicetree/bindings/mtd/lpc32xx-slc.txt
@@ -0,0 +1,52 @@
1NXP LPC32xx SoC NAND SLC controller
2
3Required properties:
4- compatible: "nxp,lpc3220-slc"
5- reg: Address and size of the controller
6- nand-on-flash-bbt: Use bad block table on flash
7- gpios: GPIO specification for NAND write protect
8
9The following required properties are very controller specific. See the LPC32xx
10User Manual:
11- nxp,wdr-clks: Delay before Ready signal is tested on write (W_RDY)
12- nxp,rdr-clks: Delay before Ready signal is tested on read (R_RDY)
13(The following values are specified in Hz, to make them independent of actual
14clock speed:)
15- nxp,wwidth: Write pulse width (W_WIDTH)
16- nxp,whold: Write hold time (W_HOLD)
17- nxp,wsetup: Write setup time (W_SETUP)
18- nxp,rwidth: Read pulse width (R_WIDTH)
19- nxp,rhold: Read hold time (R_HOLD)
20- nxp,rsetup: Read setup time (R_SETUP)
21
22Optional subnodes:
23- Partitions, see Documentation/devicetree/bindings/mtd/partition.txt
24
25Example:
26
27 slc: flash@20020000 {
28 compatible = "nxp,lpc3220-slc";
29 reg = <0x20020000 0x1000>;
30 #address-cells = <1>;
31 #size-cells = <1>;
32
33 nxp,wdr-clks = <14>;
34 nxp,wwidth = <40000000>;
35 nxp,whold = <100000000>;
36 nxp,wsetup = <100000000>;
37 nxp,rdr-clks = <14>;
38 nxp,rwidth = <40000000>;
39 nxp,rhold = <66666666>;
40 nxp,rsetup = <100000000>;
41 nand-on-flash-bbt;
42 gpios = <&gpio 5 19 1>; /* GPO_P3 19, active low */
43
44 mtd0@00000000 {
45 label = "phy3250-boot";
46 reg = <0x00000000 0x00064000>;
47 read-only;
48 };
49
50 ...
51
52 };
diff --git a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt
index a63c2bd7de2b..94de19b8f16b 100644
--- a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt
+++ b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt
@@ -16,6 +16,13 @@ file systems on embedded devices.
16 - #address-cells, #size-cells : Must be present if the device has 16 - #address-cells, #size-cells : Must be present if the device has
17 sub-nodes representing partitions (see below). In this case 17 sub-nodes representing partitions (see below). In this case
18 both #address-cells and #size-cells must be equal to 1. 18 both #address-cells and #size-cells must be equal to 1.
19 - no-unaligned-direct-access: boolean to disable the default direct
20 mapping of the flash.
21 On some platforms (e.g. MPC5200) a direct 1:1 mapping may cause
22 problems with JFFS2 usage, as the local bus (LPB) doesn't support
23 unaligned accesses as implemented in the JFFS2 code via memcpy().
24 By defining "no-unaligned-direct-access", the flash will not be
25 exposed directly to the MTD users (e.g. JFFS2) any more.
19 26
20For JEDEC compatible devices, the following additional properties 27For JEDEC compatible devices, the following additional properties
21are defined: 28are defined:
diff --git a/Documentation/devicetree/bindings/pwm/imx-pwm.txt b/Documentation/devicetree/bindings/pwm/imx-pwm.txt
new file mode 100644
index 000000000000..8522bfbccfd7
--- /dev/null
+++ b/Documentation/devicetree/bindings/pwm/imx-pwm.txt
@@ -0,0 +1,17 @@
1Freescale i.MX PWM controller
2
3Required properties:
4- compatible: should be "fsl,<soc>-pwm"
5- reg: physical base address and length of the controller's registers
6- #pwm-cells: should be 2. The first cell specifies the per-chip index
7 of the PWM to use and the second cell is the period in nanoseconds.
8- interrupts: The interrupt for the pwm controller
9
10Example:
11
12pwm1: pwm@53fb4000 {
13 #pwm-cells = <2>;
14 compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
15 reg = <0x53fb4000 0x4000>;
16 interrupts = <61>;
17};
diff --git a/Documentation/devicetree/bindings/pwm/mxs-pwm.txt b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt
index 11963e4d6bc4..9e3f8f1d46a2 100644
--- a/Documentation/devicetree/bindings/pwm/mxs-pwm.txt
+++ b/Documentation/devicetree/bindings/pwm/mxs-pwm.txt
@@ -4,7 +4,7 @@ Required properties:
4- compatible: should be "fsl,imx23-pwm" 4- compatible: should be "fsl,imx23-pwm"
5- reg: physical base address and length of the controller's registers 5- reg: physical base address and length of the controller's registers
6- #pwm-cells: should be 2. The first cell specifies the per-chip index 6- #pwm-cells: should be 2. The first cell specifies the per-chip index
7 of the PWM to use and the second cell is the duty cycle in nanoseconds. 7 of the PWM to use and the second cell is the period in nanoseconds.
8- fsl,pwm-number: the number of PWM devices 8- fsl,pwm-number: the number of PWM devices
9 9
10Example: 10Example:
diff --git a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
index bbbeedb4ec05..01438ecd6628 100644
--- a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
+++ b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
@@ -7,7 +7,7 @@ Required properties:
7- reg: physical base address and length of the controller's registers 7- reg: physical base address and length of the controller's registers
8- #pwm-cells: On Tegra the number of cells used to specify a PWM is 2. The 8- #pwm-cells: On Tegra the number of cells used to specify a PWM is 2. The
9 first cell specifies the per-chip index of the PWM to use and the second 9 first cell specifies the per-chip index of the PWM to use and the second
10 cell is the duty cycle in nanoseconds. 10 cell is the period in nanoseconds.
11 11
12Example: 12Example:
13 13
diff --git a/Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt b/Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt
index 2de21c2acf55..844bd5fbd04c 100644
--- a/Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt
+++ b/Documentation/devicetree/bindings/timer/brcm,bcm2835-system-timer.txt
@@ -7,7 +7,7 @@ free running counter values, and generates an interrupt.
7 7
8Required properties: 8Required properties:
9 9
10- compatible : should be "brcm,bcm2835-system-timer.txt" 10- compatible : should be "brcm,bcm2835-system-timer"
11- reg : Specifies base physical address and size of the registers. 11- reg : Specifies base physical address and size of the registers.
12- interrupts : A list of 4 interrupt sinks; one per timer channel. 12- interrupts : A list of 4 interrupt sinks; one per timer channel.
13- clock-frequency : The frequency of the clock that drives the counter, in Hz. 13- clock-frequency : The frequency of the clock that drives the counter, in Hz.
diff --git a/Documentation/driver-model/devres.txt b/Documentation/driver-model/devres.txt
index 950856bd2e39..43cff70465ab 100644
--- a/Documentation/driver-model/devres.txt
+++ b/Documentation/driver-model/devres.txt
@@ -284,3 +284,7 @@ CLOCK
284PINCTRL 284PINCTRL
285 devm_pinctrl_get() 285 devm_pinctrl_get()
286 devm_pinctrl_put() 286 devm_pinctrl_put()
287
288PWM
289 devm_pwm_get()
290 devm_pwm_put()
diff --git a/Documentation/filesystems/nfs/nfs.txt b/Documentation/filesystems/nfs/nfs.txt
index f50f26ce6cd0..f2571c8bef74 100644
--- a/Documentation/filesystems/nfs/nfs.txt
+++ b/Documentation/filesystems/nfs/nfs.txt
@@ -12,9 +12,47 @@ and work is in progress on adding support for minor version 1 of the NFSv4
12protocol. 12protocol.
13 13
14The purpose of this document is to provide information on some of the 14The purpose of this document is to provide information on some of the
15upcall interfaces that are used in order to provide the NFS client with 15special features of the NFS client that can be configured by system
16some of the information that it requires in order to fully comply with 16administrators.
17the NFS spec. 17
18
19The nfs4_unique_id parameter
20============================
21
22NFSv4 requires clients to identify themselves to servers with a unique
23string. File open and lock state shared between one client and one server
24is associated with this identity. To support robust NFSv4 state recovery
25and transparent state migration, this identity string must not change
26across client reboots.
27
28Without any other intervention, the Linux client uses a string that contains
29the local system's node name. System administrators, however, often do not
30take care to ensure that node names are fully qualified and do not change
31over the lifetime of a client system. Node names can have other
32administrative requirements that require particular behavior that does not
33work well as part of an nfs_client_id4 string.
34
35The nfs.nfs4_unique_id boot parameter specifies a unique string that can be
36used instead of a system's node name when an NFS client identifies itself to
37a server. Thus, if the system's node name is not unique, or it changes, its
38nfs.nfs4_unique_id stays the same, preventing collision with other clients
39or loss of state during NFS reboot recovery or transparent state migration.
40
41The nfs.nfs4_unique_id string is typically a UUID, though it can contain
42anything that is believed to be unique across all NFS clients. An
43nfs4_unique_id string should be chosen when a client system is installed,
44just as a system's root file system gets a fresh UUID in its label at
45install time.
46
47The string should remain fixed for the lifetime of the client. It can be
48changed safely if care is taken that the client shuts down cleanly and all
49outstanding NFSv4 state has expired, to prevent loss of NFSv4 state.
50
51This string can be stored in an NFS client's grub.conf, or it can be provided
52via a net boot facility such as PXE. It may also be specified as an nfs.ko
53module parameter. Specifying a uniquifier string is not support for NFS
54clients running in containers.
55
18 56
19The DNS resolver 57The DNS resolver
20================ 58================
diff --git a/Documentation/hwmon/da9052 b/Documentation/hwmon/da9052
index ef898553638e..5bc51346b689 100644
--- a/Documentation/hwmon/da9052
+++ b/Documentation/hwmon/da9052
@@ -56,6 +56,6 @@ The junction temperature is calculated:
56The junction temperature attribute is supported by the driver. 56The junction temperature attribute is supported by the driver.
57 57
58The battery temperature is calculated: 58The battery temperature is calculated:
59 Degree Celcius = 1 / (t1 + 1/298)- 273 59 Degree Celsius = 1 / (t1 + 1/298)- 273
60where t1 = (1/B)* ln(( ADCval * 2.5)/(R25*ITBAT*255)) 60where t1 = (1/B)* ln(( ADCval * 2.5)/(R25*ITBAT*255))
61Default values of R25, B, ITBAT are 10e3, 3380 and 50e-6 respectively. 61Default values of R25, B, ITBAT are 10e3, 3380 and 50e-6 respectively.
diff --git a/Documentation/hwmon/max1619 b/Documentation/hwmon/max1619
index d6f8d9cd7d7f..e6d87398cc8f 100644
--- a/Documentation/hwmon/max1619
+++ b/Documentation/hwmon/max1619
@@ -9,7 +9,7 @@ Supported chips:
9 http://pdfserv.maxim-ic.com/en/ds/MAX1619.pdf 9 http://pdfserv.maxim-ic.com/en/ds/MAX1619.pdf
10 10
11Authors: 11Authors:
12 Alexey Fisher <fishor@mail.ru>, 12 Oleksij Rempel <bug-track@fisher-privat.net>,
13 Jean Delvare <khali@linux-fr.org> 13 Jean Delvare <khali@linux-fr.org>
14 14
15Description 15Description
diff --git a/Documentation/hwmon/twl4030-madc-hwmon b/Documentation/hwmon/twl4030-madc-hwmon
index ef7984317cec..c3a3a5be10ad 100644
--- a/Documentation/hwmon/twl4030-madc-hwmon
+++ b/Documentation/hwmon/twl4030-madc-hwmon
@@ -41,5 +41,5 @@ Channel Signal
41 41
42The Sysfs nodes will represent the voltage in the units of mV, 42The Sysfs nodes will represent the voltage in the units of mV,
43the temperature channel shows the converted temperature in 43the temperature channel shows the converted temperature in
44degree celcius. The Battery charging current channel represents 44degree Celsius. The Battery charging current channel represents
45battery charging current in mA. 45battery charging current in mA.
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index f777fa96243d..e2ed3360b708 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -1730,6 +1730,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
1730 will be autodetected by the client, and it will fall 1730 will be autodetected by the client, and it will fall
1731 back to using the idmapper. 1731 back to using the idmapper.
1732 To turn off this behaviour, set the value to '0'. 1732 To turn off this behaviour, set the value to '0'.
1733 nfs.nfs4_unique_id=
1734 [NFS4] Specify an additional fixed unique ident-
1735 ification string that NFSv4 clients can insert into
1736 their nfs_client_id4 string. This is typically a
1737 UUID that is generated at system install time.
1733 1738
1734 nfs.send_implementation_id = 1739 nfs.send_implementation_id =
1735 [NFSv4.1] Send client implementation identification 1740 [NFSv4.1] Send client implementation identification
diff --git a/Documentation/leds/leds-lp5523.txt b/Documentation/leds/leds-lp5523.txt
index fad2feb8b7ce..c2743f59f9ac 100644
--- a/Documentation/leds/leds-lp5523.txt
+++ b/Documentation/leds/leds-lp5523.txt
@@ -10,8 +10,22 @@ Contact: Samu Onkalo (samu.p.onkalo-at-nokia.com)
10Description 10Description
11----------- 11-----------
12LP5523 can drive up to 9 channels. Leds can be controlled directly via 12LP5523 can drive up to 9 channels. Leds can be controlled directly via
13the led class control interface. Channels have generic names: 13the led class control interface.
14lp5523:channelx where x is 0...8 14The name of each channel is configurable in the platform data - name and label.
15There are three options to make the channel name.
16
17a) Define the 'name' in the platform data
18To make specific channel name, then use 'name' platform data.
19/sys/class/leds/R1 (name: 'R1')
20/sys/class/leds/B1 (name: 'B1')
21
22b) Use the 'label' with no 'name' field
23For one device name with channel number, then use 'label'.
24/sys/class/leds/RGB:channelN (label: 'RGB', N: 0 ~ 8)
25
26c) Default
27If both fields are NULL, 'lp5523' is used by default.
28/sys/class/leds/lp5523:channelN (N: 0 ~ 8)
15 29
16The chip provides 3 engines. Each engine can control channels without 30The chip provides 3 engines. Each engine can control channels without
17interaction from the main CPU. Details of the micro engine code can be found 31interaction from the main CPU. Details of the micro engine code can be found
@@ -46,12 +60,13 @@ Note - chan_nr can have values between 0 and 8.
46 60
47static struct lp5523_led_config lp5523_led_config[] = { 61static struct lp5523_led_config lp5523_led_config[] = {
48 { 62 {
63 .name = "D1",
49 .chan_nr = 0, 64 .chan_nr = 0,
50 .led_current = 50, 65 .led_current = 50,
51 .max_current = 130, 66 .max_current = 130,
52 }, 67 },
53... 68...
54 }, { 69 {
55 .chan_nr = 8, 70 .chan_nr = 8,
56 .led_current = 50, 71 .led_current = 50,
57 .max_current = 130, 72 .max_current = 130,
diff --git a/Documentation/percpu-rw-semaphore.txt b/Documentation/percpu-rw-semaphore.txt
new file mode 100644
index 000000000000..7d3c82431909
--- /dev/null
+++ b/Documentation/percpu-rw-semaphore.txt
@@ -0,0 +1,27 @@
1Percpu rw semaphores
2--------------------
3
4Percpu rw semaphores is a new read-write semaphore design that is
5optimized for locking for reading.
6
7The problem with traditional read-write semaphores is that when multiple
8cores take the lock for reading, the cache line containing the semaphore
9is bouncing between L1 caches of the cores, causing performance
10degradation.
11
12Locking for reading is very fast, it uses RCU and it avoids any atomic
13instruction in the lock and unlock path. On the other hand, locking for
14writing is very expensive, it calls synchronize_rcu() that can take
15hundreds of milliseconds.
16
17The lock is declared with "struct percpu_rw_semaphore" type.
18The lock is initialized percpu_init_rwsem, it returns 0 on success and
19-ENOMEM on allocation failure.
20The lock must be freed with percpu_free_rwsem to avoid memory leak.
21
22The lock is locked for read with percpu_down_read, percpu_up_read and
23for write with percpu_down_write, percpu_up_write.
24
25The idea of using RCU for optimized rw-lock was introduced by
26Eric Dumazet <eric.dumazet@gmail.com>.
27The code was written by Mikulas Patocka <mpatocka@redhat.com>
diff --git a/Documentation/pwm.txt b/Documentation/pwm.txt
index 554290ebab94..7d2b4c9b544b 100644
--- a/Documentation/pwm.txt
+++ b/Documentation/pwm.txt
@@ -36,7 +36,8 @@ Legacy users can request a PWM device using pwm_request() and free it
36after usage with pwm_free(). 36after usage with pwm_free().
37 37
38New users should use the pwm_get() function and pass to it the consumer 38New users should use the pwm_get() function and pass to it the consumer
39device or a consumer name. pwm_put() is used to free the PWM device. 39device or a consumer name. pwm_put() is used to free the PWM device. Managed
40variants of these functions, devm_pwm_get() and devm_pwm_put(), also exist.
40 41
41After being requested a PWM has to be configured using: 42After being requested a PWM has to be configured using:
42 43
diff --git a/Documentation/target/tcm_mod_builder.py b/Documentation/target/tcm_mod_builder.py
index a78879b01f09..3fe0d812dcec 100755
--- a/Documentation/target/tcm_mod_builder.py
+++ b/Documentation/target/tcm_mod_builder.py
@@ -402,8 +402,6 @@ def tcm_mod_build_configfs(proto_ident, fabric_mod_dir_var, fabric_mod_name):
402 buf += " .queue_data_in = " + fabric_mod_name + "_queue_data_in,\n" 402 buf += " .queue_data_in = " + fabric_mod_name + "_queue_data_in,\n"
403 buf += " .queue_status = " + fabric_mod_name + "_queue_status,\n" 403 buf += " .queue_status = " + fabric_mod_name + "_queue_status,\n"
404 buf += " .queue_tm_rsp = " + fabric_mod_name + "_queue_tm_rsp,\n" 404 buf += " .queue_tm_rsp = " + fabric_mod_name + "_queue_tm_rsp,\n"
405 buf += " .get_fabric_sense_len = " + fabric_mod_name + "_get_fabric_sense_len,\n"
406 buf += " .set_fabric_sense_len = " + fabric_mod_name + "_set_fabric_sense_len,\n"
407 buf += " .is_state_remove = " + fabric_mod_name + "_is_state_remove,\n" 405 buf += " .is_state_remove = " + fabric_mod_name + "_is_state_remove,\n"
408 buf += " /*\n" 406 buf += " /*\n"
409 buf += " * Setup function pointers for generic logic in target_core_fabric_configfs.c\n" 407 buf += " * Setup function pointers for generic logic in target_core_fabric_configfs.c\n"
@@ -906,20 +904,6 @@ def tcm_mod_dump_fabric_ops(proto_ident, fabric_mod_dir_var, fabric_mod_name):
906 buf += "}\n\n" 904 buf += "}\n\n"
907 bufi += "int " + fabric_mod_name + "_queue_tm_rsp(struct se_cmd *);\n" 905 bufi += "int " + fabric_mod_name + "_queue_tm_rsp(struct se_cmd *);\n"
908 906
909 if re.search('get_fabric_sense_len\)\(', fo):
910 buf += "u16 " + fabric_mod_name + "_get_fabric_sense_len(void)\n"
911 buf += "{\n"
912 buf += " return 0;\n"
913 buf += "}\n\n"
914 bufi += "u16 " + fabric_mod_name + "_get_fabric_sense_len(void);\n"
915
916 if re.search('set_fabric_sense_len\)\(', fo):
917 buf += "u16 " + fabric_mod_name + "_set_fabric_sense_len(struct se_cmd *se_cmd, u32 sense_length)\n"
918 buf += "{\n"
919 buf += " return 0;\n"
920 buf += "}\n\n"
921 bufi += "u16 " + fabric_mod_name + "_set_fabric_sense_len(struct se_cmd *, u32);\n"
922
923 if re.search('is_state_remove\)\(', fo): 907 if re.search('is_state_remove\)\(', fo):
924 buf += "int " + fabric_mod_name + "_is_state_remove(struct se_cmd *se_cmd)\n" 908 buf += "int " + fabric_mod_name + "_is_state_remove(struct se_cmd *se_cmd)\n"
925 buf += "{\n" 909 buf += "{\n"
diff --git a/Documentation/video4linux/v4l2-controls.txt b/Documentation/video4linux/v4l2-controls.txt
index 54270df99d5c..cfe52c798d74 100644
--- a/Documentation/video4linux/v4l2-controls.txt
+++ b/Documentation/video4linux/v4l2-controls.txt
@@ -136,11 +136,25 @@ Or alternatively for integer menu controls, by calling v4l2_ctrl_new_int_menu:
136 const struct v4l2_ctrl_ops *ops, 136 const struct v4l2_ctrl_ops *ops,
137 u32 id, s32 max, s32 def, const s64 *qmenu_int); 137 u32 id, s32 max, s32 def, const s64 *qmenu_int);
138 138
139Standard menu controls with a driver specific menu are added by calling
140v4l2_ctrl_new_std_menu_items:
141
142 struct v4l2_ctrl *v4l2_ctrl_new_std_menu_items(
143 struct v4l2_ctrl_handler *hdl,
144 const struct v4l2_ctrl_ops *ops, u32 id, s32 max,
145 s32 skip_mask, s32 def, const char * const *qmenu);
146
139These functions are typically called right after the v4l2_ctrl_handler_init: 147These functions are typically called right after the v4l2_ctrl_handler_init:
140 148
141 static const s64 exp_bias_qmenu[] = { 149 static const s64 exp_bias_qmenu[] = {
142 -2, -1, 0, 1, 2 150 -2, -1, 0, 1, 2
143 }; 151 };
152 static const char * const test_pattern[] = {
153 "Disabled",
154 "Vertical Bars",
155 "Solid Black",
156 "Solid White",
157 };
144 158
145 v4l2_ctrl_handler_init(&foo->ctrl_handler, nr_of_controls); 159 v4l2_ctrl_handler_init(&foo->ctrl_handler, nr_of_controls);
146 v4l2_ctrl_new_std(&foo->ctrl_handler, &foo_ctrl_ops, 160 v4l2_ctrl_new_std(&foo->ctrl_handler, &foo_ctrl_ops,
@@ -156,6 +170,9 @@ These functions are typically called right after the v4l2_ctrl_handler_init:
156 ARRAY_SIZE(exp_bias_qmenu) - 1, 170 ARRAY_SIZE(exp_bias_qmenu) - 1,
157 ARRAY_SIZE(exp_bias_qmenu) / 2 - 1, 171 ARRAY_SIZE(exp_bias_qmenu) / 2 - 1,
158 exp_bias_qmenu); 172 exp_bias_qmenu);
173 v4l2_ctrl_new_std_menu_items(&foo->ctrl_handler, &foo_ctrl_ops,
174 V4L2_CID_TEST_PATTERN, ARRAY_SIZE(test_pattern) - 1, 0,
175 0, test_pattern);
159 ... 176 ...
160 if (foo->ctrl_handler.error) { 177 if (foo->ctrl_handler.error) {
161 int err = foo->ctrl_handler.error; 178 int err = foo->ctrl_handler.error;
@@ -185,6 +202,13 @@ v4l2_ctrl_new_std_menu in that it doesn't have the mask argument and takes
185as the last argument an array of signed 64-bit integers that form an exact 202as the last argument an array of signed 64-bit integers that form an exact
186menu item list. 203menu item list.
187 204
205The v4l2_ctrl_new_std_menu_items function is very similar to
206v4l2_ctrl_new_std_menu but takes an extra parameter qmenu, which is the driver
207specific menu for an otherwise standard menu control. A good example for this
208control is the test pattern control for capture/display/sensors devices that
209have the capability to generate test patterns. These test patterns are hardware
210specific, so the contents of the menu will vary from device to device.
211
188Note that if something fails, the function will return NULL or an error and 212Note that if something fails, the function will return NULL or an error and
189set ctrl_handler->error to the error code. If ctrl_handler->error was already 213set ctrl_handler->error to the error code. If ctrl_handler->error was already
190set, then it will just return and do nothing. This is also true for 214set, then it will just return and do nothing. This is also true for
diff --git a/Documentation/virtual/uml/UserModeLinux-HOWTO.txt b/Documentation/virtual/uml/UserModeLinux-HOWTO.txt
index 77dfecf4e2d6..a5f8436753e7 100644
--- a/Documentation/virtual/uml/UserModeLinux-HOWTO.txt
+++ b/Documentation/virtual/uml/UserModeLinux-HOWTO.txt
@@ -3591,7 +3591,7 @@
3591 3591
3592 3592
3593 Looking at the source shows that the fault happened during a call to 3593 Looking at the source shows that the fault happened during a call to
3594 copy_to_user to copy the data into the kernel: 3594 copy_from_user to copy the data into the kernel:
3595 3595
3596 3596
3597 107 count -= chars; 3597 107 count -= chars;