<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/sh, branch v3.6</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/sh?h=v3.6</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/sh?h=v3.6'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-09-25T02:51:05Z</updated>
<entry>
<title>sh: pfc: Fix up GPIO mux type reconfig case.</title>
<updated>2012-09-25T02:51:05Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-09-25T02:51:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=16d74ebeb1b056dfc80e69b44cc3a26515db1925'/>
<id>urn:sha1:16d74ebeb1b056dfc80e69b44cc3a26515db1925</id>
<content type='text'>
Some drivers need to switch pin states between GPIO and pin function at
runtime, which was inadvertently broken in the pinctrl driver for GPIOs
being bound to a specific direction.

This fixes up the request path to ensure that previously configured GPIOs
don't cause us to inadvertently error out with an unsupported mux on
reconfig, which in practice is primarily aimed at trapping pull-up/down
users that have yet to be implemented under the new API.

Fixes up regressions in the TPU PWM driver, amongst others.

Reported-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Tested-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: pfc: Release spinlock in sh_pfc_gpio_request_enable() error path</title>
<updated>2012-09-18T07:54:46Z</updated>
<author>
<name>Laurent Pinchart</name>
<email>laurent.pinchart@ideasonboard.com</email>
</author>
<published>2012-09-14T18:25:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=077664a2644ff6fa0fb1a0c15be96fed359d09f4'/>
<id>urn:sha1:077664a2644ff6fa0fb1a0c15be96fed359d09f4</id>
<content type='text'>
The sh_pfc_gpio_request_enable() function acquires a spinlock but fails
to release it before returning if the requested mux type is not
supported. Fix this.

Signed-off-by: Laurent Pinchart &lt;laurent.pinchart@ideasonboard.com&gt;
Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: intc: Fix up multi-evt irq association.</title>
<updated>2012-08-20T05:51:50Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-08-20T05:51:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d4b7c5db429fbfd3c79120b27ccf66d583606b57'/>
<id>urn:sha1:d4b7c5db429fbfd3c79120b27ccf66d583606b57</id>
<content type='text'>
In the multi-evt case we were accidentally associating the parent IRQ,
fix this up.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: intc: Handle domain association for sparseirq pre-allocated vectors.</title>
<updated>2012-08-09T04:21:05Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-08-09T03:59:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1026023705b0baa2b37df2a0d1da0022fc7b985e'/>
<id>urn:sha1:1026023705b0baa2b37df2a0d1da0022fc7b985e</id>
<content type='text'>
Presently it's assumed that the irqdomain code handles the irq_desc
allocation for us, but this isn't necessarily the case when we've
pre-allocated IRQs via sparseirq. Previously we had a -EEXIST check in
the code that attempted to trap these cases and simply update them
in-place, but this behaviour was inadvertently lost in the transition to
irqdomains.

This simply restores the previous behaviour, first attempting to let the
irqdomain core fetch the allocation for us, and falling back to an
in-place domain association in the extant IRQ case. Fixes up regressions
on platforms that pre-allocate legacy IRQs (specifically ARM-based
SH-Mobile platforms, as SH stopped pre-allocating vectors some time ago).

Reported-by: Kuninori Morimoto &lt;kuninori.morimoto.gx@renesas.com&gt;
Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'common/irqdomain' into sh-latest</title>
<updated>2012-08-01T08:14:52Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-08-01T08:14:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f38770477a30d03b6296570071ca2fcd6d3a5f11'/>
<id>urn:sha1:f38770477a30d03b6296570071ca2fcd6d3a5f11</id>
<content type='text'>
</content>
</entry>
<entry>
<title>sh: intc: initial irqdomain support.</title>
<updated>2012-08-01T08:13:46Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-08-01T08:13:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1d6a21b0a672fb29b01ccf397d478e0541e17716'/>
<id>urn:sha1:1d6a21b0a672fb29b01ccf397d478e0541e17716</id>
<content type='text'>
Trivial support for irq domains, using either a linear map or radix tree
depending on the vector layout.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: pfc: Fix up init ordering mess.</title>
<updated>2012-08-01T07:27:38Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-08-01T07:27:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1e32dfe323d156d5d7b25b9feffe015d19713db2'/>
<id>urn:sha1:1e32dfe323d156d5d7b25b9feffe015d19713db2</id>
<content type='text'>
Commit ca5481c68e9fbcea62bb3c78ae6cccf99ca8fb73 ("sh: pfc: Rudimentary
pinctrl-backed GPIO support.") introduced a regression for platforms that
were doing early GPIO API calls (from arch_initcall() or earlier),
leading to a situation where our two-stage registration logic would trip
itself up and we'd -ENODEV out of the pinctrl registration path,
resulting in endless -EPROBE_DEFER errors. Further lack of checking any
sort of errors from gpio_request() resulted in boot time warnings,
tripping on the FLAG_REQUESTED test-and-set in gpio_ensure_requested().

As it turns out there's no particular need to bother with the two-stage
registration, as the platform bus is already available at the point that
we have to start caring. As such, it's easiest to simply fold these
together in to a single init path, the ordering of which is ensured
through the platform's mux registration, as usual.

Reported-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Reported-by: Kuninori Morimoto &lt;kuninori.morimoto.gx@renesas.com&gt;
Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>sh: pfc: Build fix for pinctrl_remove_gpio_range() changes.</title>
<updated>2012-07-25T04:10:11Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-07-25T04:10:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=92f53a85db3730ae088aaeb7900f85909fd1eda6'/>
<id>urn:sha1:92f53a85db3730ae088aaeb7900f85909fd1eda6</id>
<content type='text'>
pinctrl_remove_gpio_range() is now handled by the pinctrl core in the
unreg path for some reason, so use that instead.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'common/pinctrl' into sh-latest</title>
<updated>2012-07-20T07:42:59Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-07-20T07:42:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9ff561fdf73493d757bbc74aa58627e1381650fb'/>
<id>urn:sha1:9ff561fdf73493d757bbc74aa58627e1381650fb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>sh: pfc: pin config get/set support.</title>
<updated>2012-07-20T07:39:09Z</updated>
<author>
<name>Paul Mundt</name>
<email>lethal@linux-sh.org</email>
</author>
<published>2012-07-20T07:39:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fdd85ec3eb8cc1b663678a3efa16ee59a32e0277'/>
<id>urn:sha1:fdd85ec3eb8cc1b663678a3efa16ee59a32e0277</id>
<content type='text'>
This implements simple support for adjusting the pin config value via the
pinctrl API. The pinconf-generic code is abandoned for now until we've
got a chance to revamp the pinmux_type state tracking that's needed by
legacy code.

Signed-off-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
</content>
</entry>
</feed>
