<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/pinctrl/samsung, branch linux-5.11.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.11.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.11.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-05-19T08:29:31Z</updated>
<entry>
<title>pinctrl: samsung: use 'int' for register masks in Exynos</title>
<updated>2021-05-19T08:29:31Z</updated>
<author>
<name>Krzysztof Kozlowski</name>
</author>
<published>2021-04-08T19:50:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=74a27dad632bdb71fd92c71043fc2f32236f6aca'/>
<id>urn:sha1:74a27dad632bdb71fd92c71043fc2f32236f6aca</id>
<content type='text'>
[ Upstream commit fa0c10a5f3a49130dd11281aa27e7e1c8654abc7 ]

The Special Function Registers on all Exynos SoC, including ARM64, are
32-bit wide, so entire driver uses matching functions like readl() or
writel().  On 64-bit ARM using unsigned long for register masks:
1. makes little sense as immediately after bitwise operation it will be
   cast to 32-bit value when calling writel(),
2. is actually error-prone because it might promote other operands to
   64-bit.

Addresses-Coverity: Unintentional integer overflow
Signed-off-by: Krzysztof Kozlowski &lt;krzysztof.kozlowski@canonical.com&gt;
Reviewed-by: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Link: https://lore.kernel.org/r/20210408195029.69974-1-krzysztof.kozlowski@canonical.com
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: s3c24xx: remove unneeded break</title>
<updated>2020-10-26T19:23:29Z</updated>
<author>
<name>Tom Rix</name>
</author>
<published>2020-10-20T13:15:20Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5564a50d99019f3c713fa306d5feecc3e909b10'/>
<id>urn:sha1:c5564a50d99019f3c713fa306d5feecc3e909b10</id>
<content type='text'>
A break is not needed if it is preceded by a return.

Signed-off-by: Tom Rix &lt;trix@redhat.com&gt;
Link: https://lore.kernel.org/r/20201020131520.29117-1-trix@redhat.com
Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: Use bank name as irqchip name</title>
<updated>2020-08-03T23:29:10Z</updated>
<author>
<name>Marek Szyprowski</name>
</author>
<published>2020-07-20T14:54:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=85745c870a757c21f880b7e73d2b6fd1e5113a03'/>
<id>urn:sha1:85745c870a757c21f880b7e73d2b6fd1e5113a03</id>
<content type='text'>
Use the bank name as the irqchip name. This name is later visible in
/proc/interrupts, what makes it possible to easily identify each
GPIO interrupt.

/proc/interrupts before this patch:
143:    0     exynos4210_wkup_irq_chip   7 Edge      hdmi
144:    0     exynos4210_wkup_irq_chip   6 Level     wm8994
145:    1     exynos4210_wkup_irq_chip   7 Edge      max77686-pmic, max77686-rtc
146:    1     exynos_gpio_irq_chip   3 Edge      3-0048

/proc/interrupts after this patch:
143:    0     gpx3   7 Edge      hdmi
144:    0     gpx3   6 Level     wm8994
145:    1     gpx0   7 Edge      max77686-pmic, max77686-rtc
146:    1     gpm2   3 Edge      3-0048

Handling of the eint_wake_mask_value has been reworked, because each bank
has now its own exynos_irq_chip structure allocated.

Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
Link: https://lore.kernel.org/r/20200720145412.24221-1-krzk@kernel.org
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: pinctrl-s3c64xx: Fix formatting issues</title>
<updated>2020-07-16T13:12:38Z</updated>
<author>
<name>Lee Jones</name>
</author>
<published>2020-07-13T14:49:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0dc0bdf069784704c6bc798d9f7ed1bafe221c7a'/>
<id>urn:sha1:0dc0bdf069784704c6bc798d9f7ed1bafe221c7a</id>
<content type='text'>
Kerneldoc struct titles must be followed by whitespace else the
checker gets confused.

Fixes the following W=1 kernel build warning(s):

 drivers/pinctrl/samsung/pinctrl-s3c64xx.c:212: warning: cannot understand function prototype: 'struct s3c64xx_eint0_domain_data '

Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Cc: Tomasz Figa &lt;tomasz.figa@gmail.com&gt;
Cc: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
Cc: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Cc: linux-samsung-soc@vger.kernel.org
Link: https://lore.kernel.org/r/20200713144930.1034632-9-lee.jones@linaro.org
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: pinctrl-s3c24xx: Fix formatting issues</title>
<updated>2020-07-16T13:12:38Z</updated>
<author>
<name>Lee Jones</name>
</author>
<published>2020-07-13T14:49:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=26b72162e10b51e2b2be04ea7ea58f91a782dfc5'/>
<id>urn:sha1:26b72162e10b51e2b2be04ea7ea58f91a782dfc5</id>
<content type='text'>
Kerneldoc struct titles must be followed by whitespace.  Also attributes
need to be in the format '@.*: ' else the checker gets confused.

Fixes the following W=1 kernel build warning(s):

 drivers/pinctrl/samsung/pinctrl-s3c24xx.c:100: warning: cannot understand function prototype: 'struct s3c24xx_eint_domain_data '

Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Reviewed-by: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: Kukjin Kim &lt;kgene@kernel.org&gt;
Cc: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
Cc: Tomasz Figa &lt;tomasz.figa@gmail.com&gt;
Cc: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Cc: Heiko Stuebner &lt;heiko@sntech.de&gt;
Cc: linux-samsung-soc@vger.kernel.org
Link: https://lore.kernel.org/r/20200713144930.1034632-8-lee.jones@linaro.org
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: pinctrl-samsung: Demote obvious misuse of kerneldoc to standard comment blocks</title>
<updated>2020-07-16T13:12:38Z</updated>
<author>
<name>Lee Jones</name>
</author>
<published>2020-07-13T14:49:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=84a3fce5e914742e7f243bffdbbc90055c737ef7'/>
<id>urn:sha1:84a3fce5e914742e7f243bffdbbc90055c737ef7</id>
<content type='text'>
No attempt has been made to document either of the demoted functions here.

Fixes the following W=1 kernel build warning(s):

 drivers/pinctrl/samsung/pinctrl-samsung.c:1149: warning: Function parameter or member 'dev' not described in 'samsung_pinctrl_suspend'
 drivers/pinctrl/samsung/pinctrl-samsung.c:1199: warning: Function parameter or member 'dev' not described in 'samsung_pinctrl_resume'

Signed-off-by: Lee Jones &lt;lee.jones@linaro.org&gt;
Cc: Tomasz Figa &lt;tomasz.figa@gmail.com&gt;
Cc: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
Cc: Sylwester Nawrocki &lt;s.nawrocki@samsung.com&gt;
Cc: Thomas Abraham &lt;thomas.ab@samsung.com&gt;
Cc: linux-samsung-soc@vger.kernel.org
Link: https://lore.kernel.org/r/20200713144930.1034632-7-lee.jones@linaro.org
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: Save/restore eint_mask over suspend for EINT_TYPE GPIOs</title>
<updated>2020-04-28T09:38:11Z</updated>
<author>
<name>Jonathan Bakker</name>
</author>
<published>2020-04-25T23:10:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f354157a7d184db430c1a564c506434e33b1bec5'/>
<id>urn:sha1:f354157a7d184db430c1a564c506434e33b1bec5</id>
<content type='text'>
Currently, for EINT_TYPE GPIOs, the CON and FLTCON registers
are saved and restored over a suspend/resume cycle.  However, the
EINT_MASK registers are not.

On S5PV210 at the very least, these registers are not retained over
suspend, leading to the interrupts remaining masked upon resume and
therefore no interrupts being triggered for the device.  There should
be no effect on any SoCs that do retain these registers as theoretically
we would just be re-writing what was already there.

Fixes: 7ccbc60cd9c2 ("pinctrl: exynos: Handle suspend/resume of GPIO EINT registers")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Jonathan Bakker &lt;xc-racer2@live.ca&gt;
Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: Correct setting of eint wakeup mask on s5pv210</title>
<updated>2020-04-13T10:10:30Z</updated>
<author>
<name>Jonathan Bakker</name>
</author>
<published>2020-04-04T17:08:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b577a279914085c6b657c33e9f39ef56d96a3302'/>
<id>urn:sha1:b577a279914085c6b657c33e9f39ef56d96a3302</id>
<content type='text'>
Commit a8be2af0218c ("pinctrl: samsung: Write external wakeup interrupt
mask") started writing the eint wakeup mask from the pinctrl driver.
Unfortunately, it made the assumption that the private retention data
was always a regmap while in the case of s5pv210 it is a raw pointer
to the clock base (as the eint wakeup mask not in the PMU as with newer
Exynos platforms).

Fixes: a8be2af0218c ("pinctrl: samsung: Write external wakeup interrupt mask")
Cc: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Jonathan Bakker &lt;xc-racer2@live.ca&gt;
Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: Fix missing OF and GPIOLIB dependency on S3C24xx and S3C64xx</title>
<updated>2019-12-15T11:47:52Z</updated>
<author>
<name>Krzysztof Kozlowski</name>
</author>
<published>2019-12-13T07:24:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=225a2ec19aac426ef29f0e4accfc890c87d38bdc'/>
<id>urn:sha1:225a2ec19aac426ef29f0e4accfc890c87d38bdc</id>
<content type='text'>
All Samsung pinctrl drivers select common part - PINCTRL_SAMSUNG which uses
both OF and GPIOLIB inside.  However only Exynos drivers depend on these,
therefore after enabling COMPILE_TEST, on x86_64 build of S3C64xx driver
failed:

    drivers/pinctrl/samsung/pinctrl-samsung.c: In function ‘samsung_gpiolib_register’:
    drivers/pinctrl/samsung/pinctrl-samsung.c:969:5: error: ‘struct gpio_chip’ has no member named ‘of_node’
       gc-&gt;of_node = bank-&gt;of_node;
         ^

Rework the dependencies so all Samsung drivers and common
PINCTRL_SAMSUNG part depend on OF_GPIO (which is default yes if GPIOLIB
and OF are enabled).

Reported-by: Chen Zhou &lt;chenzhou10@huawei.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
</content>
</entry>
<entry>
<title>pinctrl: samsung: Clarify the option titles/names</title>
<updated>2019-12-11T18:29:25Z</updated>
<author>
<name>Krzysztof Kozlowski</name>
</author>
<published>2019-12-09T16:39:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=56d9625e8cc6d2fb6f59a3829d1c258944535609'/>
<id>urn:sha1:56d9625e8cc6d2fb6f59a3829d1c258944535609</id>
<content type='text'>
The config options toggle Samsung Exynos SoCs pinctrl drivers, not the
driver data.  Clarify this in the option title/name and also make it
consistent with other Samsung entries.  No functional change.

Signed-off-by: Krzysztof Kozlowski &lt;krzk@kernel.org&gt;
</content>
</entry>
</feed>
