<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/pinctrl/intel, branch v4.8-rc1</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>Merge tag 'pinctrl-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl</title>
<updated>2016-07-29T00:06:51+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2016-07-29T00:06:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d94ba9e7d8d5c821d0442f13b30b0140c1109c38'/>
<id>d94ba9e7d8d5c821d0442f13b30b0140c1109c38</id>
<content type='text'>
Pull pin control updates from Linus Walleij:
 "This is the bulk of pin control changes for the v4.8 kernel cycle.

  Nothing stands out as especially exiting: new drivers, new subdrivers,
  lots of cleanups and incremental features.

  Business as usual.

  New drivers:

   - New driver for Oxnas pin control and GPIO.  This ARM-based chipset
     is used in a few storage (NAS) type devices.

   - New driver for the MAX77620/MAX20024 pin controller portions.

   - New driver for the Intel Merrifield pin controller.

  New subdrivers:

   - New subdriver for the Qualcomm MDM9615

   - New subdriver for the STM32F746 MCU

   - New subdriver for the Broadcom NSP SoC.

  Cleanups:

   - Demodularization of bool compiled-in drivers.

  Apart from this there is just regular incremental improvements to a
  lot of drivers, especially Uniphier and PFC"

* tag 'pinctrl-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (131 commits)
  pinctrl: fix pincontrol definition for marvell
  pinctrl: xway: fix typo
  Revert "pinctrl: amd: make it explicitly non-modular"
  pinctrl: iproc: Add NSP and Stingray GPIO support
  pinctrl: Update iProc GPIO DT bindings
  pinctrl: bcm: add OF dependencies
  pinctrl: ns2: remove redundant dev_err call in ns2_pinmux_probe()
  pinctrl: Add STM32F746 MCU support
  pinctrl: intel: Protect set wake flow by spin lock
  pinctrl: nsp: remove redundant dev_err call in nsp_pinmux_probe()
  pinctrl: uniphier: add Ethernet pin-mux settings
  sh-pfc: Use PTR_ERR_OR_ZERO() to simplify the code
  pinctrl: ns2: fix return value check in ns2_pinmux_probe()
  pinctrl: qcom: update DT bindings with ebi2 groups
  pinctrl: qcom: establish proper EBI2 pin groups
  pinctrl: imx21: Remove the MODULE_DEVICE_TABLE() macro
  Documentation: dt: Add new compatible to STM32 pinctrl driver bindings
  includes: dt-bindings: Add STM32F746 pinctrl DT bindings
  pinctrl: sunxi: fix nand0 function name for sun8i
  pinctrl: uniphier: remove pointless pin-mux settings for PH1-LD11
  ...
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pull pin control updates from Linus Walleij:
 "This is the bulk of pin control changes for the v4.8 kernel cycle.

  Nothing stands out as especially exiting: new drivers, new subdrivers,
  lots of cleanups and incremental features.

  Business as usual.

  New drivers:

   - New driver for Oxnas pin control and GPIO.  This ARM-based chipset
     is used in a few storage (NAS) type devices.

   - New driver for the MAX77620/MAX20024 pin controller portions.

   - New driver for the Intel Merrifield pin controller.

  New subdrivers:

   - New subdriver for the Qualcomm MDM9615

   - New subdriver for the STM32F746 MCU

   - New subdriver for the Broadcom NSP SoC.

  Cleanups:

   - Demodularization of bool compiled-in drivers.

  Apart from this there is just regular incremental improvements to a
  lot of drivers, especially Uniphier and PFC"

* tag 'pinctrl-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (131 commits)
  pinctrl: fix pincontrol definition for marvell
  pinctrl: xway: fix typo
  Revert "pinctrl: amd: make it explicitly non-modular"
  pinctrl: iproc: Add NSP and Stingray GPIO support
  pinctrl: Update iProc GPIO DT bindings
  pinctrl: bcm: add OF dependencies
  pinctrl: ns2: remove redundant dev_err call in ns2_pinmux_probe()
  pinctrl: Add STM32F746 MCU support
  pinctrl: intel: Protect set wake flow by spin lock
  pinctrl: nsp: remove redundant dev_err call in nsp_pinmux_probe()
  pinctrl: uniphier: add Ethernet pin-mux settings
  sh-pfc: Use PTR_ERR_OR_ZERO() to simplify the code
  pinctrl: ns2: fix return value check in ns2_pinmux_probe()
  pinctrl: qcom: update DT bindings with ebi2 groups
  pinctrl: qcom: establish proper EBI2 pin groups
  pinctrl: imx21: Remove the MODULE_DEVICE_TABLE() macro
  Documentation: dt: Add new compatible to STM32 pinctrl driver bindings
  includes: dt-bindings: Add STM32F746 pinctrl DT bindings
  pinctrl: sunxi: fix nand0 function name for sun8i
  pinctrl: uniphier: remove pointless pin-mux settings for PH1-LD11
  ...
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: intel: Protect set wake flow by spin lock</title>
<updated>2016-07-11T09:15:33+00:00</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2016-07-08T11:30:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9a520fd99f2c3feb178d6d05e347beb9017dc07b'/>
<id>9a520fd99f2c3feb178d6d05e347beb9017dc07b</id>
<content type='text'>
It seems intel_gpio_irq_wake() misses lock protection against I/O flow.
Use spin lock here as well.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It seems intel_gpio_irq_wake() misses lock protection against I/O flow.
Use spin lock here as well.

Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: intel: Add Intel Merrifield pin controller support</title>
<updated>2016-06-29T07:59:35+00:00</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2016-06-23T10:49:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4e80c8f505741cbdef3e10862ea36057e8d85e7c'/>
<id>4e80c8f505741cbdef3e10862ea36057e8d85e7c</id>
<content type='text'>
This driver adds pinctrl support for Intel Merrifield. The IP block which is
called Family-Level Interface Shim is a separate entity in SoC. The GPIO driver
(gpio-intel-mid.c) will be updated accordingly to support pinctrl interface.

Reviewed-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This driver adds pinctrl support for Intel Merrifield. The IP block which is
called Family-Level Interface Shim is a separate entity in SoC. The GPIO driver
(gpio-intel-mid.c) will be updated accordingly to support pinctrl interface.

Reviewed-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: baytrail: Fix mingled clock pins</title>
<updated>2016-06-23T09:05:04+00:00</updated>
<author>
<name>Cristina Ciocan</name>
<email>cristina.ciocan@intel.com</email>
</author>
<published>2016-06-22T11:17:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=b41aa4f8476545e2b663b1549759a8c3a66f47b0'/>
<id>b41aa4f8476545e2b663b1549759a8c3a66f47b0</id>
<content type='text'>
Fix plt clock 3, 4 and 5 pins, which were not in the proper order.

Signed-off-by: Cristina Ciocan &lt;cristina.ciocan@intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix plt clock 3, 4 and 5 pins, which were not in the proper order.

Signed-off-by: Cristina Ciocan &lt;cristina.ciocan@intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: intel: Prevent force threading of the interrupt handler</title>
<updated>2016-06-18T08:35:47+00:00</updated>
<author>
<name>Mika Westerberg</name>
<email>mika.westerberg@linux.intel.com</email>
</author>
<published>2016-06-16T08:25:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1a7d1cb81eb2519de1359d35cbcade4da41b638d'/>
<id>1a7d1cb81eb2519de1359d35cbcade4da41b638d</id>
<content type='text'>
The pinctrl-intel needs to use request_irq() instead of chained interrupt
handling because it shares the interrupt with multiple GPIO host
controllers found on Intel CPUs. In -rt all such interrupts are forced to
run in thread context which triggers following warning:

 WARNING: CPU: 0 PID: 530 at kernel/irq/handle.c:151 handle_irq_event_percpu+0x23d/0x240
 irq 348 handler irq_default_primary_handler+0x0/0x10 enabled interrupts
 Modules linked in:
 CPU: 0 PID: 530 Comm: irq/14-INT3452: Not tainted 4.6.2-rt5 #1060
  0000000000000000 ffff88007a257c98 ffffffff812d8494 ffff88007a257ce8
  0000000000000000 ffff88007a257cd8 ffffffff8105e554 000000977a257d90
  ffff88007a37a380 000000000000015c 0000000000000002 0000000000000000
 Call Trace:
  [&lt;ffffffff812d8494&gt;] dump_stack+0x4f/0x6b
  [&lt;ffffffff8105e554&gt;] __warn+0xe4/0x100
  [&lt;ffffffff8105e5bf&gt;] warn_slowpath_fmt+0x4f/0x60
  [&lt;ffffffff810b18f0&gt;] ? __synchronize_hardirq+0x60/0x60
  [&lt;ffffffff810b17fd&gt;] handle_irq_event_percpu+0x23d/0x240
  [&lt;ffffffff810b1862&gt;] handle_irq_event+0x62/0x90
  [&lt;ffffffff810b4e1f&gt;] handle_edge_irq+0x8f/0x190
  [&lt;ffffffff810b0d82&gt;] generic_handle_irq+0x22/0x30
  [&lt;ffffffff81307abc&gt;] intel_gpio_irq+0xdc/0x150
  [&lt;ffffffff810b2293&gt;] irq_forced_thread_fn+0x23/0x70
  [&lt;ffffffff810b250b&gt;] irq_thread+0x13b/0x1d0
  [&lt;ffffffff8167b844&gt;] ? __schedule+0x2e4/0x5a0
  [&lt;ffffffff810b2270&gt;] ? irq_finalize_oneshot.part.37+0xd0/0xd0
  [&lt;ffffffff810b25a0&gt;] ? irq_thread+0x1d0/0x1d0
  [&lt;ffffffff810b23d0&gt;] ? wake_threads_waitq+0x30/0x30
  [&lt;ffffffff8107e624&gt;] kthread+0xd4/0xf0
  [&lt;ffffffff8167ec27&gt;] ? _raw_spin_unlock_irq+0x17/0x40
  [&lt;ffffffff8167f592&gt;] ret_from_fork+0x22/0x40
  [&lt;ffffffff8107e550&gt;] ? kthread_worker_fn+0x190/0x190

The handle_irq_event_* functions (and I suppose generic_handle_irq()) is
expected to be called with interrupts disabled and they rightfully complain
here because we run in thread context with interrupts enabled.

Fix this by adding IRQF_NO_THREAD flag when the master interrupt is
requested. This prevents forced threading of the interrupt used by the GPIO
host controllers.

Reported-by: Kim Tatt Chuah &lt;kim.tatt.chuah@intel.com&gt;
Signed-off-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The pinctrl-intel needs to use request_irq() instead of chained interrupt
handling because it shares the interrupt with multiple GPIO host
controllers found on Intel CPUs. In -rt all such interrupts are forced to
run in thread context which triggers following warning:

 WARNING: CPU: 0 PID: 530 at kernel/irq/handle.c:151 handle_irq_event_percpu+0x23d/0x240
 irq 348 handler irq_default_primary_handler+0x0/0x10 enabled interrupts
 Modules linked in:
 CPU: 0 PID: 530 Comm: irq/14-INT3452: Not tainted 4.6.2-rt5 #1060
  0000000000000000 ffff88007a257c98 ffffffff812d8494 ffff88007a257ce8
  0000000000000000 ffff88007a257cd8 ffffffff8105e554 000000977a257d90
  ffff88007a37a380 000000000000015c 0000000000000002 0000000000000000
 Call Trace:
  [&lt;ffffffff812d8494&gt;] dump_stack+0x4f/0x6b
  [&lt;ffffffff8105e554&gt;] __warn+0xe4/0x100
  [&lt;ffffffff8105e5bf&gt;] warn_slowpath_fmt+0x4f/0x60
  [&lt;ffffffff810b18f0&gt;] ? __synchronize_hardirq+0x60/0x60
  [&lt;ffffffff810b17fd&gt;] handle_irq_event_percpu+0x23d/0x240
  [&lt;ffffffff810b1862&gt;] handle_irq_event+0x62/0x90
  [&lt;ffffffff810b4e1f&gt;] handle_edge_irq+0x8f/0x190
  [&lt;ffffffff810b0d82&gt;] generic_handle_irq+0x22/0x30
  [&lt;ffffffff81307abc&gt;] intel_gpio_irq+0xdc/0x150
  [&lt;ffffffff810b2293&gt;] irq_forced_thread_fn+0x23/0x70
  [&lt;ffffffff810b250b&gt;] irq_thread+0x13b/0x1d0
  [&lt;ffffffff8167b844&gt;] ? __schedule+0x2e4/0x5a0
  [&lt;ffffffff810b2270&gt;] ? irq_finalize_oneshot.part.37+0xd0/0xd0
  [&lt;ffffffff810b25a0&gt;] ? irq_thread+0x1d0/0x1d0
  [&lt;ffffffff810b23d0&gt;] ? wake_threads_waitq+0x30/0x30
  [&lt;ffffffff8107e624&gt;] kthread+0xd4/0xf0
  [&lt;ffffffff8167ec27&gt;] ? _raw_spin_unlock_irq+0x17/0x40
  [&lt;ffffffff8167f592&gt;] ret_from_fork+0x22/0x40
  [&lt;ffffffff8107e550&gt;] ? kthread_worker_fn+0x190/0x190

The handle_irq_event_* functions (and I suppose generic_handle_irq()) is
expected to be called with interrupts disabled and they rightfully complain
here because we run in thread context with interrupts enabled.

Fix this by adding IRQF_NO_THREAD flag when the master interrupt is
requested. This prevents forced threading of the interrupt used by the GPIO
host controllers.

Reported-by: Kim Tatt Chuah &lt;kim.tatt.chuah@intel.com&gt;
Signed-off-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: intel: Use raw_spinlock for locking</title>
<updated>2016-06-18T08:35:44+00:00</updated>
<author>
<name>Mika Westerberg</name>
<email>mika.westerberg@linux.intel.com</email>
</author>
<published>2016-06-16T08:25:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=27d9098cff6e7491617890d0e93632181a532ff3'/>
<id>27d9098cff6e7491617890d0e93632181a532ff3</id>
<content type='text'>
When running -rt kernel and GPIO interrupt happens we get following

 BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:931
 in_atomic(): 1, irqs_disabled(): 0, pid: 530, name: irq/14-INT3452:
 Preemption disabled at:[&lt;ffffffff810b4dab&gt;] handle_edge_irq+0x1b/0x190

 CPU: 0 PID: 530 Comm: irq/14-INT3452: Not tainted 4.6.2-rt5 #1060
  0000000000000000 ffff88007a257d58 ffffffff812d8494 0000000000000000
  ffff88017a330000 ffff88007a257d78 ffffffff81083a11 ffff88007a252430
  ffff88007a252430 ffff88007a257d90 ffffffff8167ef20 000000000000001a
 Call Trace:
  [&lt;ffffffff812d8494&gt;] dump_stack+0x4f/0x6b
  [&lt;ffffffff81083a11&gt;] ___might_sleep+0xe1/0x160
  [&lt;ffffffff8167ef20&gt;] rt_spin_lock+0x20/0x50
  [&lt;ffffffff81308c6d&gt;] intel_gpio_irq_ack+0x2d/0x80
  [&lt;ffffffff810b4e0b&gt;] handle_edge_irq+0x7b/0x190
  [&lt;ffffffff810b0d82&gt;] generic_handle_irq+0x22/0x30
  [&lt;ffffffff81307abc&gt;] intel_gpio_irq+0xdc/0x150
  [&lt;ffffffff810b2293&gt;] irq_forced_thread_fn+0x23/0x70
  [&lt;ffffffff810b250b&gt;] irq_thread+0x13b/0x1d0
  [&lt;ffffffff8167b844&gt;] ? __schedule+0x2e4/0x5a0
  [&lt;ffffffff810b2270&gt;] ? irq_finalize_oneshot.part.37+0xd0/0xd0
  [&lt;ffffffff810b25a0&gt;] ? irq_thread+0x1d0/0x1d0
  [&lt;ffffffff810b23d0&gt;] ? wake_threads_waitq+0x30/0x30
  [&lt;ffffffff8107e624&gt;] kthread+0xd4/0xf0
  [&lt;ffffffff8167ec27&gt;] ? _raw_spin_unlock_irq+0x17/0x40
  [&lt;ffffffff8167f592&gt;] ret_from_fork+0x22/0x40
  [&lt;ffffffff8107e550&gt;] ? kthread_worker_fn+0x190/0x190

The reason why this happens is because intel_gpio_irq_ack() is called with
desc-&gt;lock raw_spinlock locked which cannot sleep but our normal spinlock
(which is converted to rtmutex in -rt) is allowed to sleep. This causes
might_sleep() to trigger.

Fix this by converting the normal spinlock to a raw_spinlock.

Reported-by: Kim Tatt Chuah &lt;kim.tatt.chuah@intel.com&gt;
Signed-off-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When running -rt kernel and GPIO interrupt happens we get following

 BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:931
 in_atomic(): 1, irqs_disabled(): 0, pid: 530, name: irq/14-INT3452:
 Preemption disabled at:[&lt;ffffffff810b4dab&gt;] handle_edge_irq+0x1b/0x190

 CPU: 0 PID: 530 Comm: irq/14-INT3452: Not tainted 4.6.2-rt5 #1060
  0000000000000000 ffff88007a257d58 ffffffff812d8494 0000000000000000
  ffff88017a330000 ffff88007a257d78 ffffffff81083a11 ffff88007a252430
  ffff88007a252430 ffff88007a257d90 ffffffff8167ef20 000000000000001a
 Call Trace:
  [&lt;ffffffff812d8494&gt;] dump_stack+0x4f/0x6b
  [&lt;ffffffff81083a11&gt;] ___might_sleep+0xe1/0x160
  [&lt;ffffffff8167ef20&gt;] rt_spin_lock+0x20/0x50
  [&lt;ffffffff81308c6d&gt;] intel_gpio_irq_ack+0x2d/0x80
  [&lt;ffffffff810b4e0b&gt;] handle_edge_irq+0x7b/0x190
  [&lt;ffffffff810b0d82&gt;] generic_handle_irq+0x22/0x30
  [&lt;ffffffff81307abc&gt;] intel_gpio_irq+0xdc/0x150
  [&lt;ffffffff810b2293&gt;] irq_forced_thread_fn+0x23/0x70
  [&lt;ffffffff810b250b&gt;] irq_thread+0x13b/0x1d0
  [&lt;ffffffff8167b844&gt;] ? __schedule+0x2e4/0x5a0
  [&lt;ffffffff810b2270&gt;] ? irq_finalize_oneshot.part.37+0xd0/0xd0
  [&lt;ffffffff810b25a0&gt;] ? irq_thread+0x1d0/0x1d0
  [&lt;ffffffff810b23d0&gt;] ? wake_threads_waitq+0x30/0x30
  [&lt;ffffffff8107e624&gt;] kthread+0xd4/0xf0
  [&lt;ffffffff8167ec27&gt;] ? _raw_spin_unlock_irq+0x17/0x40
  [&lt;ffffffff8167f592&gt;] ret_from_fork+0x22/0x40
  [&lt;ffffffff8107e550&gt;] ? kthread_worker_fn+0x190/0x190

The reason why this happens is because intel_gpio_irq_ack() is called with
desc-&gt;lock raw_spinlock locked which cannot sleep but our normal spinlock
(which is converted to rtmutex in -rt) is allowed to sleep. This causes
might_sleep() to trigger.

Fix this by converting the normal spinlock to a raw_spinlock.

Reported-by: Kim Tatt Chuah &lt;kim.tatt.chuah@intel.com&gt;
Signed-off-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl/broxton: enable platform device in the absence of ACPI enumeration</title>
<updated>2016-06-15T06:37:42+00:00</updated>
<author>
<name>Tan Jui Nee</name>
<email>jui.nee.tan@intel.com</email>
</author>
<published>2016-06-07T06:55:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0c3013bbe1d80035dc58336c4c7fdb18a32931df'/>
<id>0c3013bbe1d80035dc58336c4c7fdb18a32931df</id>
<content type='text'>
This is to cater the need for non-ACPI system whereby
a platform device has to be created in order to bind
with the Apollo Lake Pinctrl GPIO platform driver.

Signed-off-by: Tan Jui Nee &lt;jui.nee.tan@intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is to cater the need for non-ACPI system whereby
a platform device has to be created in order to bind
with the Apollo Lake Pinctrl GPIO platform driver.

Signed-off-by: Tan Jui Nee &lt;jui.nee.tan@intel.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: cherryview: add handlers for pin_config_group_get/set</title>
<updated>2016-06-15T06:37:40+00:00</updated>
<author>
<name>Dan O'Donovan</name>
<email>dan@emutex.com</email>
</author>
<published>2016-06-10T12:23:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=77401d7fdfcdcb233864f7a6edc1e15b4f5d56d9'/>
<id>77401d7fdfcdcb233864f7a6edc1e15b4f5d56d9</id>
<content type='text'>
Pin config get/set handlers for pin groups were previously not
implemented by this driver.  The pin_config_group_set is
particularly useful for applying a common config setting to all
pins in a specified group with a single call, without the caller
needing to reference each individual pin by name.

Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Pin config get/set handlers for pin groups were previously not
implemented by this driver.  The pin_config_group_set is
particularly useful for applying a common config setting to all
pins in a specified group with a single call, without the caller
needing to reference each individual pin by name.

Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: cherryview: add option to set open-drain pin config</title>
<updated>2016-06-15T06:37:39+00:00</updated>
<author>
<name>Dan O'Donovan</name>
<email>dan@emutex.com</email>
</author>
<published>2016-06-10T12:23:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ccdf81d08dbe059885d77a82adea33d0599b6421'/>
<id>ccdf81d08dbe059885d77a82adea33d0599b6421</id>
<content type='text'>
On some CHV platforms, we need an option to configure the
open-drain setting for these pins.  This adds support for the
PIN_CONFIG_DRIVE_PUSH_PULL and PIN_CONFIG_DRIVE_OPEN_DRAIN to
disable/enable open-drain mode for a specific pin.

Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
On some CHV platforms, we need an option to configure the
open-drain setting for these pins.  This adds support for the
PIN_CONFIG_DRIVE_PUSH_PULL and PIN_CONFIG_DRIVE_OPEN_DRAIN to
disable/enable open-drain mode for a specific pin.

Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>pinctrl: cherryview: prevent concurrent access to GPIO controllers</title>
<updated>2016-06-15T06:37:39+00:00</updated>
<author>
<name>Dan O'Donovan</name>
<email>dan@emutex.com</email>
</author>
<published>2016-06-10T12:23:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0bd50d719b004110e791800450ad204399100a86'/>
<id>0bd50d719b004110e791800450ad204399100a86</id>
<content type='text'>
Due to a silicon issue on the Atom X5-Z8000 "Cherry Trail" processor
series, a common lock must be used to prevent concurrent accesses
across the 4 GPIO controllers managed by this driver.

See Intel Atom Z8000 Processor Series Specification Update
(Rev. 005), errata #CHT34, for further information.

Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Due to a silicon issue on the Atom X5-Z8000 "Cherry Trail" processor
series, a common lock must be used to prevent concurrent accesses
across the 4 GPIO controllers managed by this driver.

See Intel Atom Z8000 Processor Series Specification Update
(Rev. 005), errata #CHT34, for further information.

Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Dan O'Donovan &lt;dan@emutex.com&gt;
Acked-by: Mika Westerberg &lt;mika.westerberg@linux.intel.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
