Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1642796 > unrolled thread

[PATCH 0/2] pinctrl: samsung: Split per ARMv7/v8 arch

Started byKrzysztof Kozlowski <krzk@kernel.org>
First post2017-05-16 22:10 +0200
Last post2017-05-24 18:50 +0200
Articles 6 — 3 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH 0/2] pinctrl: samsung: Split per ARMv7/v8 arch Krzysztof Kozlowski <krzk@kernel.org> - 2017-05-16 22:10 +0200
    [PATCH 1/2] pinctrl: samsung: Add include guard to local header Krzysztof Kozlowski <krzk@kernel.org> - 2017-05-16 22:10 +0200
    Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7  and ARMv8 Krzysztof Kozlowski <krzk@kernel.org> - 2017-05-17 17:50 +0200
    Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7  and ARMv8 Krzysztof Kozlowski <krzk@kernel.org> - 2017-05-20 19:20 +0200
    Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7  and ARMv8 Linus Walleij <linus.walleij@linaro.org> - 2017-05-20 19:20 +0200
    Re: [PATCH 0/2] pinctrl: samsung: Split per ARMv7/v8 arch Alim Akhtar <alim.akhtar@gmail.com> - 2017-05-24 18:50 +0200

#1642796 — [PATCH 0/2] pinctrl: samsung: Split per ARMv7/v8 arch

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2017-05-16 22:10 +0200
Subject[PATCH 0/2] pinctrl: samsung: Split per ARMv7/v8 arch
Message-ID<tHQX8-1J7-21@gated-at.bofh.it>
Hi,

There will not be a shared image between ARMv7 and ARMv8 so there is no need to
combine all of this into one driver.

Splitting the data allows to make it more granular (e.g. code related to
ARMv8 Exynos is self-contained), slightly speed up the compilation and
reduce the effective size of compiled kernel.

Diff of second patch is not nice... but it is the best I created.
Experimenting with -B and -M resulted in detection of copy/rename but end
diff was 60% bigger in lines of patch.

Tests on ARMv8 would be much appreciated.


Best regards,
Krzysztof


Krzysztof Kozlowski (2):
  pinctrl: samsung: Add include guard to local header
  pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8

 drivers/pinctrl/samsung/Kconfig                |   10 +
 drivers/pinctrl/samsung/Makefile               |    2 +
 drivers/pinctrl/samsung/pinctrl-exynos-arm.c   |  815 +++++++++++++++++
 drivers/pinctrl/samsung/pinctrl-exynos-arm64.c |  399 ++++++++
 drivers/pinctrl/samsung/pinctrl-exynos.c       | 1163 +-----------------------
 drivers/pinctrl/samsung/pinctrl-exynos.h       |   13 +
 drivers/pinctrl/samsung/pinctrl-samsung.c      |    8 +-
 7 files changed, 1250 insertions(+), 1160 deletions(-)
 create mode 100644 drivers/pinctrl/samsung/pinctrl-exynos-arm.c
 create mode 100644 drivers/pinctrl/samsung/pinctrl-exynos-arm64.c

-- 
2.9.3

[toc] | [next] | [standalone]


#1642798 — [PATCH 1/2] pinctrl: samsung: Add include guard to local header

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2017-05-16 22:10 +0200
Subject[PATCH 1/2] pinctrl: samsung: Add include guard to local header
Message-ID<tHQX9-1J7-33@gated-at.bofh.it>
In reply to#1642796
The pinctrl-exynos.h header is included only once so till now it did not
require an include guard.  However adding such is harmless and makes
code prepared for more inclusions.

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 drivers/pinctrl/samsung/pinctrl-exynos.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/pinctrl/samsung/pinctrl-exynos.h b/drivers/pinctrl/samsung/pinctrl-exynos.h
index cd046eb7d705..ffad70458129 100644
--- a/drivers/pinctrl/samsung/pinctrl-exynos.h
+++ b/drivers/pinctrl/samsung/pinctrl-exynos.h
@@ -17,6 +17,9 @@
  * (at your option) any later version.
  */
 
+#ifndef __PINCTRL_SAMSUNG_EXYNOS_H
+#define __PINCTRL_SAMSUNG_EXYNOS_H
+
 /* External GPIO and wakeup interrupt related definitions */
 #define EXYNOS_GPIO_ECON_OFFSET		0x700
 #define EXYNOS_GPIO_EFLTCON_OFFSET	0x800
@@ -131,3 +134,5 @@ struct exynos_muxed_weint_data {
 	unsigned int nr_banks;
 	struct samsung_pin_bank *banks[];
 };
+
+#endif /* __PINCTRL_SAMSUNG_EXYNOS_H */
-- 
2.9.3

[toc] | [prev] | [next] | [standalone]


#1643478 — Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2017-05-17 17:50 +0200
SubjectRe: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8
Message-ID<tI9n3-4Ud-7@gated-at.bofh.it>
In reply to#1642796
On Wed, May 17, 2017 at 07:43:51AM +0200, Marek Szyprowski wrote:
> Hi Krzysztof,
> 
> On 2017-05-16 22:06, Krzysztof Kozlowski wrote:
> > Exynos pinctrl drivers contain pretty big per-SoC data structures.  The
> > pinctrl-exynos object file contained code and data for both ARMv7 and
> > ARMv8 SoCs thus it grew big.  There will not be a shared image between
> > ARMv7 and ARMv8 so there is no need to combine all of this into one
> > driver.
> > 
> > Splitting the data allows to make it more granular (e.g. code related to
> > ARMv8 Exynos is self-contained), slightly speed up the compilation and
> > reduce the effective size of compiled kernel.
> > 
> > The common data structures and functions reside still in existing
> > pinctrl-exynos.c.  Only the SoC-specific parts were moved out to new
> > files.  Except marking few functions non-static and adding them to
> > header, there were no functional changes in the code.
> > 
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > ---
> > 
> > Not tested on ARMv8 (Exynos5433, Exynos7).
> 
> Works fine on TM2 (Exynos5433).
> 
> Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>

Great, thanks! Much appreciated.

Best regards,
Krzysztof

[toc] | [prev] | [next] | [standalone]


#1646165 — Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2017-05-20 19:20 +0200
SubjectRe: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8
Message-ID<tJgcN-4kL-5@gated-at.bofh.it>
In reply to#1642796
On Sat, May 20, 2017 at 07:12:13PM +0200, Linus Walleij wrote:
> On Tue, May 16, 2017 at 10:06 PM, Krzysztof Kozlowski <krzk@kernel.org> wrote:
> 
> > Exynos pinctrl drivers contain pretty big per-SoC data structures.  The
> > pinctrl-exynos object file contained code and data for both ARMv7 and
> > ARMv8 SoCs thus it grew big.  There will not be a shared image between
> > ARMv7 and ARMv8 so there is no need to combine all of this into one
> > driver.
> >
> > Splitting the data allows to make it more granular (e.g. code related to
> > ARMv8 Exynos is self-contained), slightly speed up the compilation and
> > reduce the effective size of compiled kernel.
> >
> > The common data structures and functions reside still in existing
> > pinctrl-exynos.c.  Only the SoC-specific parts were moved out to new
> > files.  Except marking few functions non-static and adding them to
> > header, there were no functional changes in the code.
> >
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> 
> Acked-by: Linus Walleij <linus.walleij@linaro.org>
> I guess I will get this from you with a pull request?

Yes, I'll send it to you with pull request.

Best regards,
Krzysztof

[toc] | [prev] | [next] | [standalone]


#1646166 — Re: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8

FromLinus Walleij <linus.walleij@linaro.org>
Date2017-05-20 19:20 +0200
SubjectRe: [PATCH-RFT 2/2] pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8
Message-ID<tJgcN-4kL-7@gated-at.bofh.it>
In reply to#1642796
On Tue, May 16, 2017 at 10:06 PM, Krzysztof Kozlowski <krzk@kernel.org> wrote:

> Exynos pinctrl drivers contain pretty big per-SoC data structures.  The
> pinctrl-exynos object file contained code and data for both ARMv7 and
> ARMv8 SoCs thus it grew big.  There will not be a shared image between
> ARMv7 and ARMv8 so there is no need to combine all of this into one
> driver.
>
> Splitting the data allows to make it more granular (e.g. code related to
> ARMv8 Exynos is self-contained), slightly speed up the compilation and
> reduce the effective size of compiled kernel.
>
> The common data structures and functions reside still in existing
> pinctrl-exynos.c.  Only the SoC-specific parts were moved out to new
> files.  Except marking few functions non-static and adding them to
> header, there were no functional changes in the code.
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>
I guess I will get this from you with a pull request?

Yours,
Linus Walleij

[toc] | [prev] | [next] | [standalone]


#1649763

FromAlim Akhtar <alim.akhtar@gmail.com>
Date2017-05-24 18:50 +0200
Message-ID<tKHDY-4Jq-25@gated-at.bofh.it>
In reply to#1642796
Hi Krzysztof,

On Wed, May 17, 2017 at 1:36 AM, Krzysztof Kozlowski <krzk@kernel.org> wrote:
> Hi,
>
> There will not be a shared image between ARMv7 and ARMv8 so there is no need to
> combine all of this into one driver.
>
> Splitting the data allows to make it more granular (e.g. code related to
> ARMv8 Exynos is self-contained), slightly speed up the compilation and
> reduce the effective size of compiled kernel.
>
> Diff of second patch is not nice... but it is the best I created.
> Experimenting with -B and -M resulted in detection of copy/rename but end
> diff was 60% bigger in lines of patch.
>
> Tests on ARMv8 would be much appreciated.
>
>
> Best regards,
> Krzysztof
>
>
> Krzysztof Kozlowski (2):
>   pinctrl: samsung: Add include guard to local header
>   pinctrl: samsung: Split Exynos drivers per ARMv7 and ARMv8
>
Patch: 2/2 was not applying cleanly on 4.12-rc1. Sorry if I am missing
any dependent patches.
Anyway with a minor conflict fix for 4.12-rc1, I am able to test this
series on exynos7 espresso board.
Looks good to me.
Feel free to add
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>

As this works on exynos7, tested SD/eMMC card detection which depends
on pinctrl configs. So
Tested-by: Alim Akhtar <alim.akhtar@samsung.com>


>  drivers/pinctrl/samsung/Kconfig                |   10 +
>  drivers/pinctrl/samsung/Makefile               |    2 +
>  drivers/pinctrl/samsung/pinctrl-exynos-arm.c   |  815 +++++++++++++++++
>  drivers/pinctrl/samsung/pinctrl-exynos-arm64.c |  399 ++++++++
>  drivers/pinctrl/samsung/pinctrl-exynos.c       | 1163 +-----------------------
>  drivers/pinctrl/samsung/pinctrl-exynos.h       |   13 +
>  drivers/pinctrl/samsung/pinctrl-samsung.c      |    8 +-
>  7 files changed, 1250 insertions(+), 1160 deletions(-)
>  create mode 100644 drivers/pinctrl/samsung/pinctrl-exynos-arm.c
>  create mode 100644 drivers/pinctrl/samsung/pinctrl-exynos-arm64.c
>
> --
> 2.9.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Regards,
Alim

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web