<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/of, branch v2.6.37</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.37</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.37'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2010-12-24T08:28:54Z</updated>
<entry>
<title>of/i2c: Fix request module by alias</title>
<updated>2010-12-24T08:28:54Z</updated>
<author>
<name>David Daney</name>
<email>ddaney@caviumnetworks.com</email>
</author>
<published>2010-11-16T22:42:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=020862648445d7c1b12ea213c152f27def703f3b'/>
<id>urn:sha1:020862648445d7c1b12ea213c152f27def703f3b</id>
<content type='text'>
If we are registering an i2c device that has a device tree node like
this real-world example:

      rtc@68 {
        compatible = "dallas,ds1337";
        reg = &lt;0x68&gt;;
      };

of_i2c_register_devices() will try to load a module called ds1337.ko.
There is no such module, so it will fail.  If we look in modules.alias
we will find entries like these:

.
.
.
alias i2c:ds1339 rtc_ds1307
alias i2c:ds1338 rtc_ds1307
alias i2c:ds1337 rtc_ds1307
alias i2c:ds1307 rtc_ds1307
alias i2c:ds1374 rtc_ds1374
.
.
.

The module we want is really called rtc_ds1307.ko.  If we request a
module called "i2c:ds1337", the userspace module loader will do the
right thing (unless it is busybox) and load rtc_ds1307.ko.  So we add
the I2C_MODULE_PREFIX to the request_module() string.

Signed-off-by: David Daney &lt;ddaney@caviumnetworks.com&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/mips: Cleanup some include directives/files.</title>
<updated>2010-10-21T17:10:11Z</updated>
<author>
<name>David Daney</name>
<email>ddaney@caviumnetworks.com</email>
</author>
<published>2010-10-19T22:50:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=4c60071c1ea3e204b9dc25c7519f7beef355d47f'/>
<id>urn:sha1:4c60071c1ea3e204b9dc25c7519f7beef355d47f</id>
<content type='text'>
The __init directives should go on the definitions of things, not the
declaration, also __init is meaningless for inline functions, so
remove it from prom.h.  This allows us to get rid of a useless
#include, but most of the rest of them are useless too, so kill them
as well.

If of_i2c.c needs irq definitions, it should include linux/irq.h
directly, not assume indirect inclusion via asm/prom.h.

Signed-off-by: David Daney &lt;ddaney@caviumnetworks.com&gt;
Acked-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/flattree: Eliminate need to provide early_init_dt_scan_chosen_arch</title>
<updated>2010-10-21T17:10:10Z</updated>
<author>
<name>Grant Likely</name>
<email>grant.likely@secretlab.ca</email>
</author>
<published>2010-10-20T17:45:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=32c97689c46b272302053778f1a6c2facb0e220c'/>
<id>urn:sha1:32c97689c46b272302053778f1a6c2facb0e220c</id>
<content type='text'>
This patch refactors the early init parsing of the chosen node so that
architectures aren't forced to provide an empty implementation of
early_init_dt_scan_chosen_arch.  Instead, if an architecture wants to
do something different, it can either use a wrapper function around
early_init_dt_scan_chosen(), or it can replace it altogether.

This patch was written in preparation to adding device tree support to
both x86 ad MIPS.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Tested-by: David Daney &lt;ddaney@caviumnetworks.com&gt;
</content>
</entry>
<entry>
<title>of/device: Rework to use common platform_device_alloc() for allocating devices</title>
<updated>2010-10-21T17:10:10Z</updated>
<author>
<name>Grant Likely</name>
<email>grant.likely@secretlab.ca</email>
</author>
<published>2010-10-20T17:45:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=7096d0422153ffcc2264eef652fc3a7bca3e6d3c'/>
<id>urn:sha1:7096d0422153ffcc2264eef652fc3a7bca3e6d3c</id>
<content type='text'>
The current code allocates and manages platform_devices created from
the device tree manually.  It also uses an unsafe shortcut for
allocating the platform_device and the resource table at the same
time. (which I added in the last rework; sorry).

This patch refactors the code to use platform_device_alloc() for
allocating new devices.  This reduces the amount of custom code
implemented by of_platform, eliminates the unsafe alloc trick, and has
the side benefit of letting the platform_bus code manage freeing the
device data and resources when the device is freed.

Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Cc: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Cc: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
Cc: "David S. Miller" &lt;davem@davemloft.net&gt;
Cc: Michal Simek &lt;monstr@monstr.eu&gt;
</content>
</entry>
<entry>
<title>of: use __be32 types for big-endian device tree data</title>
<updated>2010-10-13T03:58:42Z</updated>
<author>
<name>Jeremy Kerr</name>
<email>jeremy.kerr@canonical.com</email>
</author>
<published>2010-10-11T03:24:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a9fadeefdc869ff792591f57a9e33d8790d63292'/>
<id>urn:sha1:a9fadeefdc869ff792591f57a9e33d8790d63292</id>
<content type='text'>
Use the sparse annotations so we can keep track of endianness.

Signed-off-by: Jeremy Kerr &lt;jeremy.kerr@canonical.com&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/irq: remove references to NO_IRQ in drivers/of/platform.c</title>
<updated>2010-10-13T03:58:27Z</updated>
<author>
<name>Andres Salomon</name>
<email>dilinger@queued.net</email>
</author>
<published>2010-10-11T03:35:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=52f6537cb2f0b461a9ce3457c01a6cfa2ae0bb22'/>
<id>urn:sha1:52f6537cb2f0b461a9ce3457c01a6cfa2ae0bb22</id>
<content type='text'>
Instead of referencing NO_IRQ in platform.c, define some helper functions
in irq.c to call instead from platform.c.  Keep NO_IRQ usage local to
irq.c, and define NO_IRQ if not defined in headers.

Signed-off-by: Andres Salomon &lt;dilinger@queued.net&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/promtree: add package-to-path support to pdt</title>
<updated>2010-10-13T03:58:08Z</updated>
<author>
<name>Andres Salomon</name>
<email>dilinger@queued.net</email>
</author>
<published>2010-10-11T03:52:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=e2f2a93b6384cfe0face0be595bfbda1475d864b'/>
<id>urn:sha1:e2f2a93b6384cfe0face0be595bfbda1475d864b</id>
<content type='text'>
package-to-path is a PROM function which tells us the real (full) name of the
node.  This provides a hook for that in the prom ops struct, and makes use
of it in the pdt code when attempting to determine a node's name.  If the
hook is available, try using it (falling back to looking at the "name"
property if it fails).

Signed-off-by: Andres Salomon &lt;dilinger@queued.net&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/promtree: add of_pdt namespace to pdt code</title>
<updated>2010-10-13T03:58:00Z</updated>
<author>
<name>Andres Salomon</name>
<email>dilinger@queued.net</email>
</author>
<published>2010-10-11T03:51:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ed41850298f7a55519de0b8573e217ed8a45c199'/>
<id>urn:sha1:ed41850298f7a55519de0b8573e217ed8a45c199</id>
<content type='text'>
For symbols still lacking namespace qualifiers, add an of_pdt_ prefix.

Signed-off-by: Andres Salomon &lt;dilinger@queued.net&gt;
Acked-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/promtree: no longer call prom_ functions directly; use an ops structure</title>
<updated>2010-10-13T03:57:53Z</updated>
<author>
<name>Andres Salomon</name>
<email>dilinger@queued.net</email>
</author>
<published>2010-10-11T03:49:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f90c34bd658d240cb5ebc5fe0a17796e590c6ec8'/>
<id>urn:sha1:f90c34bd658d240cb5ebc5fe0a17796e590c6ec8</id>
<content type='text'>
Rather than assuming an architecture defines prom_getchild and friends,
define an ops struct with hooks for the various prom functions that
pdt.c needs.  This ops struct is filled in by the
arch-(and sometimes firmware-)specific code, and passed to
of_pdt_build_devicetree.

Update sparc code to define the ops struct as well.

Signed-off-by: Andres Salomon &lt;dilinger@queued.net&gt;
Acked-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>of/promtree: make drivers/of/pdt.c no longer sparc-only</title>
<updated>2010-10-11T03:53:30Z</updated>
<author>
<name>Andres Salomon</name>
<email>dilinger@queued.net</email>
</author>
<published>2010-10-11T03:42:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=3cfc535c5df8122af1258ae05aaf2770c033425d'/>
<id>urn:sha1:3cfc535c5df8122af1258ae05aaf2770c033425d</id>
<content type='text'>
Clean up pdt.c:
 - make build dependent upon config OF_PROMTREE
 - #ifdef out the sparc-specific stuff
 - create pdt-specific header

Signed-off-by: Andres Salomon &lt;dilinger@queued.net&gt;
Acked-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
</feed>
