Skip to content

Commit f1bbbb6

Browse files
author
Jiri Kosina
committed
Merge branch 'master' into for-next
2 parents fd0961f + 7e27d6e commit f1bbbb6

File tree

3,859 files changed

+293114
-105562
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,859 files changed

+293114
-105562
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ modules.builtin
2828
*.gz
2929
*.bz2
3030
*.lzma
31+
*.lzo
3132
*.patch
3233
*.gcno
3334

Documentation/.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
filesystems/dnotify_test
2+
laptops/dslm
3+
timers/hpet_example
4+
vm/hugepage-mmap
5+
vm/hugepage-shm
6+
vm/map_hugetlb
7+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
What: /sys/class/power/ds2760-battery.*/charge_now
2+
Date: May 2010
3+
KernelVersion: 2.6.35
4+
Contact: Daniel Mack <daniel@caiaq.de>
5+
Description:
6+
This file is writeable and can be used to set the current
7+
coloumb counter value inside the battery monitor chip. This
8+
is needed for unavoidable corrections of aging batteries.
9+
A userspace daemon can monitor the battery charging logic
10+
and once the counter drops out of considerable bounds, take
11+
appropriate action.
12+
13+
What: /sys/class/power/ds2760-battery.*/charge_full
14+
Date: May 2010
15+
KernelVersion: 2.6.35
16+
Contact: Daniel Mack <daniel@caiaq.de>
17+
Description:
18+
This file is writeable and can be used to set the assumed
19+
battery 'full level'. As batteries age, this value has to be
20+
amended over time.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
What: /sys/devices/system/node/nodeX/compact
2+
Date: February 2010
3+
Contact: Mel Gorman <mel@csn.ul.ie>
4+
Description:
5+
When this file is written to, all memory within that node
6+
will be compacted. When it completes, memory will be freed
7+
into blocks which have as many contiguous pages as possible
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
What: /sys/firmware/sfi/tables/
2+
Date: May 2010
3+
Contact: Len Brown <lenb@kernel.org>
4+
Description:
5+
SFI defines a number of small static memory tables
6+
so the kernel can get platform information from firmware.
7+
8+
The tables are defined in the latest SFI specification:
9+
http://simplefirmware.org/documentation
10+
11+
While the tables are used by the kernel, user-space
12+
can observe them this way:
13+
14+
# cd /sys/firmware/sfi/tables
15+
# cat $TABLENAME > $TABLENAME.bin

Documentation/DMA-API-HOWTO.txt

Lines changed: 49 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -639,6 +639,36 @@ is planned to completely remove virt_to_bus() and bus_to_virt() as
639639
they are entirely deprecated. Some ports already do not provide these
640640
as it is impossible to correctly support them.
641641

642+
Handling Errors
643+
644+
DMA address space is limited on some architectures and an allocation
645+
failure can be determined by:
646+
647+
- checking if dma_alloc_coherent returns NULL or dma_map_sg returns 0
648+
649+
- checking the returned dma_addr_t of dma_map_single and dma_map_page
650+
by using dma_mapping_error():
651+
652+
dma_addr_t dma_handle;
653+
654+
dma_handle = dma_map_single(dev, addr, size, direction);
655+
if (dma_mapping_error(dev, dma_handle)) {
656+
/*
657+
* reduce current DMA mapping usage,
658+
* delay and try again later or
659+
* reset driver.
660+
*/
661+
}
662+
663+
Networking drivers must call dev_kfree_skb to free the socket buffer
664+
and return NETDEV_TX_OK if the DMA mapping fails on the transmit hook
665+
(ndo_start_xmit). This means that the socket buffer is just dropped in
666+
the failure case.
667+
668+
SCSI drivers must return SCSI_MLQUEUE_HOST_BUSY if the DMA mapping
669+
fails in the queuecommand hook. This means that the SCSI subsystem
670+
passes the command to the driver again later.
671+
642672
Optimizing Unmap State Space Consumption
643673

644674
On many platforms, dma_unmap_{single,page}() is simply a nop.
@@ -703,42 +733,25 @@ to "Closing".
703733

704734
1) Struct scatterlist requirements.
705735

706-
Struct scatterlist must contain, at a minimum, the following
707-
members:
708-
709-
struct page *page;
710-
unsigned int offset;
711-
unsigned int length;
712-
713-
The base address is specified by a "page+offset" pair.
714-
715-
Previous versions of struct scatterlist contained a "void *address"
716-
field that was sometimes used instead of page+offset. As of Linux
717-
2.5., page+offset is always used, and the "address" field has been
718-
deleted.
719-
720-
2) More to come...
721-
722-
Handling Errors
723-
724-
DMA address space is limited on some architectures and an allocation
725-
failure can be determined by:
726-
727-
- checking if dma_alloc_coherent returns NULL or dma_map_sg returns 0
728-
729-
- checking the returned dma_addr_t of dma_map_single and dma_map_page
730-
by using dma_mapping_error():
731-
732-
dma_addr_t dma_handle;
733-
734-
dma_handle = dma_map_single(dev, addr, size, direction);
735-
if (dma_mapping_error(dev, dma_handle)) {
736-
/*
737-
* reduce current DMA mapping usage,
738-
* delay and try again later or
739-
* reset driver.
740-
*/
741-
}
736+
Don't invent the architecture specific struct scatterlist; just use
737+
<asm-generic/scatterlist.h>. You need to enable
738+
CONFIG_NEED_SG_DMA_LENGTH if the architecture supports IOMMUs
739+
(including software IOMMU).
740+
741+
2) ARCH_KMALLOC_MINALIGN
742+
743+
Architectures must ensure that kmalloc'ed buffer is
744+
DMA-safe. Drivers and subsystems depend on it. If an architecture
745+
isn't fully DMA-coherent (i.e. hardware doesn't ensure that data in
746+
the CPU cache is identical to data in main memory),
747+
ARCH_KMALLOC_MINALIGN must be set so that the memory allocator
748+
makes sure that kmalloc'ed buffer doesn't share a cache line with
749+
the others. See arch/arm/include/asm/cache.h as an example.
750+
751+
Note that ARCH_KMALLOC_MINALIGN is about DMA memory alignment
752+
constraints. You don't need to worry about the architecture data
753+
alignment constraints (e.g. the alignment constraints about 64-bit
754+
objects).
742755

743756
Closing
744757

Documentation/DocBook/drm.tmpl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -389,7 +389,7 @@
389389
</para>
390390
<para>
391391
If your driver supports memory management (it should!), you'll
392-
need to set that up at load time as well. How you intialize
392+
need to set that up at load time as well. How you initialize
393393
it depends on which memory manager you're using, TTM or GEM.
394394
</para>
395395
<sect3>
@@ -399,7 +399,7 @@
399399
aperture space for graphics devices. TTM supports both UMA devices
400400
and devices with dedicated video RAM (VRAM), i.e. most discrete
401401
graphics devices. If your device has dedicated RAM, supporting
402-
TTM is desireable. TTM also integrates tightly with your
402+
TTM is desirable. TTM also integrates tightly with your
403403
driver specific buffer execution function. See the radeon
404404
driver for examples.
405405
</para>
@@ -443,7 +443,7 @@
443443
likely eventually calling ttm_bo_global_init and
444444
ttm_bo_global_release, respectively. Also like the previous
445445
object, ttm_global_item_ref is used to create an initial reference
446-
count for the TTM, which will call your initalization function.
446+
count for the TTM, which will call your initialization function.
447447
</para>
448448
</sect3>
449449
<sect3>
@@ -557,7 +557,7 @@ void intel_crt_init(struct drm_device *dev)
557557
CRT connector and encoder combination is created. A device
558558
specific i2c bus is also created, for fetching EDID data and
559559
performing monitor detection. Once the process is complete,
560-
the new connector is regsitered with sysfs, to make its
560+
the new connector is registered with sysfs, to make its
561561
properties available to applications.
562562
</para>
563563
<sect4>
@@ -581,12 +581,12 @@ void intel_crt_init(struct drm_device *dev)
581581
<para>
582582
For each encoder, CRTC and connector, several functions must
583583
be provided, depending on the object type. Encoder objects
584-
need should provide a DPMS (basically on/off) function, mode fixup
584+
need to provide a DPMS (basically on/off) function, mode fixup
585585
(for converting requested modes into native hardware timings),
586586
and prepare, set and commit functions for use by the core DRM
587587
helper functions. Connector helpers need to provide mode fetch and
588588
validity functions as well as an encoder matching function for
589-
returing an ideal encoder for a given connector. The core
589+
returning an ideal encoder for a given connector. The core
590590
connector functions include a DPMS callback, (deprecated)
591591
save/restore routines, detection, mode probing, property handling,
592592
and cleanup functions.

Documentation/DocBook/mtdnand.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,7 @@ static void board_hwcontrol(struct mtd_info *mtd, int cmd)
269269
information about the device.
270270
</para>
271271
<programlisting>
272-
int __init board_init (void)
272+
static int __init board_init (void)
273273
{
274274
struct nand_chip *this;
275275
int err = 0;

Documentation/DocBook/v4l/v4l2.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ MPEG stream embedded, sliced VBI data format in this specification.
5858
</contrib>
5959
<affiliation>
6060
<address>
61-
<email>awalls@radix.net</email>
61+
<email>awalls@md.metrocast.net</email>
6262
</address>
6363
</affiliation>
6464
</author>

Documentation/DocBook/v4l/vidioc-query-dv-preset.xml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,10 @@ input</refpurpose>
5353
automatically, similar to sensing the video standard. To do so, applications
5454
call <constant> VIDIOC_QUERY_DV_PRESET</constant> with a pointer to a
5555
&v4l2-dv-preset; type. Once the hardware detects a preset, that preset is
56-
returned in the preset field of &v4l2-dv-preset;. When detection is not
57-
possible or fails, the value V4L2_DV_INVALID is returned.</para>
56+
returned in the preset field of &v4l2-dv-preset;. If the preset could not be
57+
detected because there was no signal, or the signal was unreliable, or the
58+
signal did not map to a supported preset, then the value V4L2_DV_INVALID is
59+
returned.</para>
5860
</refsect1>
5961

6062
<refsect1>

0 commit comments

Comments
 (0)