<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/base/Makefile, branch v3.12.10</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/base/Makefile?h=v3.12.10</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/base/Makefile?h=v3.12.10'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2013-08-28T22:41:59Z</updated>
<entry>
<title>Merge remote-tracking branch 'origin/next' into kvm-ppc-next</title>
<updated>2013-08-28T22:41:59Z</updated>
<author>
<name>Alexander Graf</name>
<email>agraf@suse.de</email>
</author>
<published>2013-08-28T22:41:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bf550fc93d9855872a95e69e4002256110d89858'/>
<id>urn:sha1:bf550fc93d9855872a95e69e4002256110d89858</id>
<content type='text'>
Conflicts:
	mm/Kconfig

CMA DMA split and ZSWAP introduction were conflicting, fix up manually.
</content>
</entry>
<entry>
<title>mm/cma: Move dma contiguous changes into a seperate config</title>
<updated>2013-07-02T08:08:22Z</updated>
<author>
<name>Aneesh Kumar K.V</name>
<email>aneesh.kumar@linux.vnet.ibm.com</email>
</author>
<published>2013-07-02T05:45:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f825c736e75b11adb59ec52a4a1096efddd2ec97'/>
<id>urn:sha1:f825c736e75b11adb59ec52a4a1096efddd2ec97</id>
<content type='text'>
We want to use CMA for allocating hash page table and real mode area for
PPC64. Hence move DMA contiguous related changes into a seperate config
so that ppc64 can enable CMA without requiring DMA contiguous.

Acked-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Acked-by: Paul Mackerras &lt;paulus@samba.org&gt;
Signed-off-by: Aneesh Kumar K.V &lt;aneesh.kumar@linux.vnet.ibm.com&gt;
[removed defconfig changes]
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
</content>
</entry>
<entry>
<title>reservation: cross-device reservation support, v4</title>
<updated>2013-06-28T02:02:15Z</updated>
<author>
<name>Maarten Lankhorst</name>
<email>m.b.lankhorst@gmail.com</email>
</author>
<published>2013-06-27T11:48:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=786d7257e537da0674c02e16e3b30a44665d1cee'/>
<id>urn:sha1:786d7257e537da0674c02e16e3b30a44665d1cee</id>
<content type='text'>
This adds support for a generic reservations framework that can be
hooked up to ttm and dma-buf and allows easy sharing of reservations
across devices.

The idea is that a dma-buf and ttm object both will get a pointer
to a struct reservation_object, which has to be reserved before
anything is done with the contents of the dma-buf.

Changes since v1:
 - Fix locking issue in ticket_reserve, which could cause mutex_unlock
   to be called too many times.
Changes since v2:
 - All fence related calls and members have been taken out for now,
   what's left is the bare minimum to be useful for ttm locking conversion.
Changes since v3:
 - Removed helper functions too. The documentation has an example
   implementation for locking. With the move to ww_mutex there is no
   need to have much logic any more.

Signed-off-by: Maarten Lankhorst &lt;maarten.lankhorst@canonical.com&gt;
Reviewed-by: Jerome Glisse &lt;jglisse@redhat.com&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>drivers/pinctrl: grab default handles from device core</title>
<updated>2013-01-23T15:39:51Z</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2013-01-22T17:56:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ab78029ecc347debbd737f06688d788bd9d60c1d'/>
<id>urn:sha1:ab78029ecc347debbd737f06688d788bd9d60c1d</id>
<content type='text'>
This makes the device core auto-grab the pinctrl handle and set
the "default" (PINCTRL_STATE_DEFAULT) state for every device
that is present in the device model right before probe. This will
account for the lion's share of embedded silicon devcies.

A modification of the semantics for pinctrl_get() is also done:
previously if the pinctrl handle for a certain device was already
taken, the pinctrl core would return an error. Now, since the
core may have already default-grabbed the handle and set its
state to "default", if the handle was already taken, this will
be disregarded and the located, previously instanitated handle
will be returned to the caller.

This way all code in drivers explicitly requesting their pinctrl
handlers will still be functional, and drivers that want to
explicitly retrieve and switch their handles can still do that.
But if the desired functionality is just boilerplate of this
type in the probe() function:

struct pinctrl  *p;

p = devm_pinctrl_get_select_default(&amp;dev);
if (IS_ERR(p)) {
   if (PTR_ERR(p) == -EPROBE_DEFER)
        return -EPROBE_DEFER;
        dev_warn(&amp;dev, "no pinctrl handle\n");
}

The discussion began with the addition of such boilerplate
to the omap4 keypad driver:
http://marc.info/?l=linux-input&amp;m=135091157719300&amp;w=2

A previous approach using notifiers was discussed:
http://marc.info/?l=linux-kernel&amp;m=135263661110528&amp;w=2
This failed because it could not handle deferred probes.

This patch alone does not solve the entire dilemma faced:
whether code should be distributed into the drivers or
if it should be centralized to e.g. a PM domain. But it
solves the immediate issue of the addition of boilerplate
to a lot of drivers that just want to grab the default
state. As mentioned, they can later explicitly retrieve
the handle and set different states, and this could as
well be done by e.g. PM domains as it is only related
to a certain struct device * pointer.

ChangeLog v4-&gt;v5 (Stephen):
- Simplified the devicecore grab code.
- Deleted a piece of documentation recommending that pins
  be mapped to a device rather than hogged.
ChangeLog v3-&gt;v4 (Linus):
- Drop overzealous NULL checks.
- Move kref initialization to pinctrl_create().
- Seeking Tested-by from Stephen Warren so we do not disturb
  the Tegra platform.
- Seeking ACK on this from Greg (and others who like it) so I
  can merge it through the pinctrl subsystem.
ChangeLog v2-&gt;v3 (Linus):
- Abstain from using IS_ERR_OR_NULL() in the driver core,
  Russell recently sent a patch to remove it. Handle the
  NULL case explicitly even though it's a bogus case.
- Make sure we handle probe deferral correctly in the device
  core file. devm_kfree() the container on error so we don't
  waste memory for devices without pinctrl handles.
- Introduce reference counting into the pinctrl core using
  &lt;linux/kref.h&gt; so that we don't release pinctrl handles
  that have been obtained for two or more places.
ChangeLog v1-&gt;v2 (Linus):
- Only store a pointer in the device struct, and only allocate
  this if it's really used by the device.

Cc: Felipe Balbi &lt;balbi@ti.com&gt;
Cc: Benoit Cousson &lt;b-cousson@ti.com&gt;
Cc: Dmitry Torokhov &lt;dmitry.torokhov@gmail.com&gt;
Cc: Thomas Petazzoni &lt;thomas.petazzoni@free-electrons.com&gt;
Cc: Mitch Bradley &lt;wmb@firmworks.com&gt;
Cc: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
Cc: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Cc: Jean-Christophe PLAGNIOL-VILLARD &lt;plagnioj@jcrosoft.com&gt;
Cc: Rickard Andersson &lt;rickard.andersson@stericsson.com&gt;
Cc: Russell King &lt;linux@arm.linux.org.uk&gt;
Reviewed-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Acked-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
[swarren: fixed and simplified error-handling in pinctrl_bind_pins(), to
correctly handle deferred probe. Removed admonition from docs not to use
pinctrl hogs for devices]
Signed-off-by: Stephen Warren &lt;swarren@nvidia.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>drivers: add Contiguous Memory Allocator</title>
<updated>2012-05-21T13:09:37Z</updated>
<author>
<name>Marek Szyprowski</name>
<email>m.szyprowski@samsung.com</email>
</author>
<published>2011-12-29T12:09:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c64be2bb1c6eb43c838b2c6d57b074078be208dd'/>
<id>urn:sha1:c64be2bb1c6eb43c838b2c6d57b074078be208dd</id>
<content type='text'>
The Contiguous Memory Allocator is a set of helper functions for DMA
mapping framework that improves allocations of contiguous memory chunks.

CMA grabs memory on system boot, marks it with MIGRATE_CMA migrate type
and gives back to the system. Kernel is allowed to allocate only movable
pages within CMA's managed memory so that it can be used for example for
page cache when DMA mapping do not use it. On
dma_alloc_from_contiguous() request such pages are migrated out of CMA
area to free required contiguous block and fulfill the request. This
allows to allocate large contiguous chunks of memory at any time
assuming that there is enough free memory available in the system.

This code is heavily based on earlier works by Michal Nazarewicz.

Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Signed-off-by: Michal Nazarewicz &lt;mina86@mina86.com&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Tested-by: Rob Clark &lt;rob.clark@linaro.org&gt;
Tested-by: Ohad Ben-Cohen &lt;ohad@wizery.com&gt;
Tested-by: Benjamin Gaignard &lt;benjamin.gaignard@linaro.org&gt;
Tested-by: Robert Nelson &lt;robertcnelson@gmail.com&gt;
Tested-by: Barry Song &lt;Baohua.Song@csr.com&gt;
</content>
</entry>
<entry>
<title>drivers/base: add bus for System-on-Chip devices</title>
<updated>2012-02-10T19:42:25Z</updated>
<author>
<name>Lee Jones</name>
<email>lee.jones@linaro.org</email>
</author>
<published>2012-02-06T19:22:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=74d1d82cdaaec727f5072eb1c9f49b7e920e076f'/>
<id>urn:sha1:74d1d82cdaaec727f5072eb1c9f49b7e920e076f</id>
<content type='text'>
Traditionally, any System-on-Chip based platform creates a flat list
of platform_devices directly under /sys/devices/platform.

In order to give these some better structure, this introduces a new
bus type for soc_devices that are registered with the new
soc_device_register() function.  All devices that are on the same
chip should then be registered as child devices of the soc device.

The soc bus also exports a few standardised device attributes which
allow user space to query the specific type of soc.

Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>driver core: remove drivers/base/sys.c and include/linux/sysdev.h</title>
<updated>2012-01-22T21:31:15Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
<email>gregkh@suse.de</email>
</author>
<published>2012-01-22T21:31:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e9c688a3272fd4b659228f3880de8109a94540e2'/>
<id>urn:sha1:e9c688a3272fd4b659228f3880de8109a94540e2</id>
<content type='text'>
Now that all users of 'struct sysdev' are removed from the kernel, we
can safely remove the .h and .c files for this code, to ensure that no
one accidentally starts to use it again.

Many thanks for Kay who did all the hard work here on making this
happen.

Cc: Kay Sievers &lt;kay.sievers@vrfy.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>Merge branch 'dma-buf-merge' of git://people.freedesktop.org/~airlied/linux</title>
<updated>2012-01-08T22:05:09Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-01-08T22:05:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8e369672af8700299ab372bad9397f230b1d591a'/>
<id>urn:sha1:8e369672af8700299ab372bad9397f230b1d591a</id>
<content type='text'>
* 'dma-buf-merge' of git://people.freedesktop.org/~airlied/linux:
  dma-buf: mark EXPERIMENTAL for 1st release.
  dma-buf: Documentation for buffer sharing framework
  dma-buf: Introduce dma buffer sharing mechanism
</content>
</entry>
<entry>
<title>dma-buf: Introduce dma buffer sharing mechanism</title>
<updated>2012-01-06T10:20:21Z</updated>
<author>
<name>Sumit Semwal</name>
<email>sumit.semwal@ti.com</email>
</author>
<published>2011-12-26T09:23:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d15bd7ee445d0702ad801fdaece348fdb79e6581'/>
<id>urn:sha1:d15bd7ee445d0702ad801fdaece348fdb79e6581</id>
<content type='text'>
This is the first step in defining a dma buffer sharing mechanism.

A new buffer object dma_buf is added, with operations and API to allow easy
sharing of this buffer object across devices.

The framework allows:
- creation of a buffer object, its association with a file pointer, and
   associated allocator-defined operations on that buffer. This operation is
   called the 'export' operation.
- different devices to 'attach' themselves to this exported buffer object, to
  facilitate backing storage negotiation, using dma_buf_attach() API.
- the exported buffer object to be shared with the other entity by asking for
   its 'file-descriptor (fd)', and sharing the fd across.
- a received fd to get the buffer object back, where it can be accessed using
   the associated exporter-defined operations.
- the exporter and user to share the scatterlist associated with this buffer
   object using map_dma_buf and unmap_dma_buf operations.

Atleast one 'attach()' call is required to be made prior to calling the
map_dma_buf() operation.

Couple of building blocks in map_dma_buf() are added to ease introduction
of sync'ing across exporter and users, and late allocation by the exporter.

For this first version, this framework will work with certain conditions:
- *ONLY* exporter will be allowed to mmap to userspace (outside of this
   framework - mmap is not a buffer object operation),
- currently, *ONLY* users that do not need CPU access to the buffer are
   allowed.

More details are there in the documentation patch.

This is based on design suggestions from many people at the mini-summits[1],
most notably from Arnd Bergmann &lt;arnd@arndb.de&gt;, Rob Clark &lt;rob@ti.com&gt; and
Daniel Vetter &lt;daniel@ffwll.ch&gt;.

The implementation is inspired from proof-of-concept patch-set from
Tomasz Stanislawski &lt;t.stanislaws@samsung.com&gt;, who demonstrated buffer sharing
between two v4l2 devices. [2]

[1]: https://wiki.linaro.org/OfficeofCTO/MemoryManagement
[2]: http://lwn.net/Articles/454389

Signed-off-by: Sumit Semwal &lt;sumit.semwal@linaro.org&gt;
Signed-off-by: Sumit Semwal &lt;sumit.semwal@ti.com&gt;
Reviewed-by: Daniel Vetter &lt;daniel.vetter@ffwll.ch&gt;
Reviewed-by: Dave Airlie &lt;airlied@redhat.com&gt;
Reviewed-and-Tested-by: Rob Clark &lt;rob.clark@linaro.org&gt;
Signed-off-by: Dave Airlie &lt;airlied@redhat.com&gt;
</content>
</entry>
<entry>
<title>topology: Provide CPU topology in sysfs in !SMP configurations</title>
<updated>2011-11-27T04:12:47Z</updated>
<author>
<name>Ben Hutchings</name>
<email>ben@decadent.org.uk</email>
</author>
<published>2011-11-24T07:04:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ccbc60d3e19a1b6ae66ca0d89b3da02dde62088b'/>
<id>urn:sha1:ccbc60d3e19a1b6ae66ca0d89b3da02dde62088b</id>
<content type='text'>
We should provide topology information to userland even if it's not
very interesting.  The current code appears to work properly for !SMP
(tested on i386).

Reference: http://bugs.debian.org/649216
Reported-by: Marcus Osdoba &lt;marcus.osdoba@googlemail.com&gt;
Signed-off-by: Ben Hutchings &lt;ben@decadent.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
</feed>
