Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1552796 > unrolled thread
| Started by | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| First post | 2017-01-06 14:50 +0100 |
| Last post | 2017-01-06 22:30 +0100 |
| Articles | 19 — 6 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH v5 0/5] Add touch key driver support for TM2 Andi Shyti <andi.shyti@samsung.com> - 2017-01-06 14:50 +0100
[PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Andi Shyti <andi.shyti@samsung.com> - 2017-01-06 14:50 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Krzysztof Kozlowski <krzk@kernel.org> - 2017-01-06 15:10 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-06 22:40 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-06 23:20 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Andi Shyti <andi@etezian.org> - 2017-01-07 13:50 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-08 06:20 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Andi Shyti <andi@etezian.org> - 2017-01-08 06:50 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-08 07:10 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Andi Shyti <andi@smida.it> - 2017-01-08 07:20 +0100
Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-06 23:20 +0100
[PATCH v5 1/5] arm64: dts: exynos5433: TM2/E: Fix wrong values for ldo23 and ldo25 Andi Shyti <andi.shyti@samsung.com> - 2017-01-06 14:50 +0100
Re: [PATCH v5 1/5] arm64: dts: exynos5433: TM2/E: Fix wrong values for ldo23 and ldo25 Krzysztof Kozlowski <krzk@kernel.org> - 2017-01-06 15:10 +0100
[PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Andi Shyti <andi.shyti@samsung.com> - 2017-01-06 14:50 +0100
Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Andi Shyti <andi.shyti@samsung.com> - 2017-01-06 15:00 +0100
Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Krzysztof Kozlowski <krzk@kernel.org> - 2017-01-06 15:20 +0100
Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Krzysztof Kozlowski <krzk@kernel.org> - 2017-01-06 15:00 +0100
Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Javier Martinez Canillas <javier@osg.samsung.com> - 2017-01-06 15:20 +0100
Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other Chanwoo Choi <cwchoi00@gmail.com> - 2017-01-06 22:30 +0100
| From | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| Date | 2017-01-06 14:50 +0100 |
| Subject | [PATCH v5 0/5] Add touch key driver support for TM2 |
| Message-ID | <sWD45-2DX-3@gated-at.bofh.it> |
Hi,
I'll send this patch on behalf of Jaechul Lee
<jcsing.lee@samsung.com> becasue I don't want to block
anyone who wants to make changes to the exynos5433-tm2*dts*
files.
This patches are based on Krzysztof's branch for-next [1] and
this was the original Jaechul's mail:
"This patchset adds support for the tm2 touchkey device.
The driver has been ported from Tizen Kernel,
originally written
by Beomho. I ported it to the latest mainline Kernel."
Thanks and hopefully I got it right :)
Andi
[1] https://git.kernel.org/cgit/linux/kernel/git/krzk/linux.git/log/?h=for-next
Changes in v5:
- patch 1: removed a spurious regulator-always-off inherited from
a different patch. Thanks Krzysztof.
- patch 2: fixed a slip on the model, thanks Javier (this patch
confuses me quite a lot, this was all right some patches ago
and re appeared on this one).
- patch 2: removed 'regulator' label and used the original ldo3x
labels. Krzysztof: it looks better indeed.
- added Javier's reviews and Krzysztof's acks on the related
patches.
Changes in v4:
- patch 1 has been rebased on top of 7c294e002641 (arm64: dts:
exynos: Remove unsupported regulator-always-off property from
TM2E)
- patch 2 has been generated with -B50% diff option using git
2.11
Changes in v3:
- Changed the commit ordering, the tm2-touchkey related patches
are the last 3.
- Added Chanwoo's patch which fixes the wrong voltage of ldo23
and ldo25.
- Andi (patch 3) moves the ldo31 and ldo38 in the tm2 and tm2e
files as they have different values.
Changes in v2:
- fixed reviews from Javier, Dmitry
- refactored power enable/disable functions.
- reordered signed-offs in patch 2, while patch 4 is left as it
was as Andi copy pasted the node to the new tm2.dts file
- added Jarvier's (patch 1,2,4) and Krzysztof's (patch 4)
reviews
and Rob's Ack
- patch 3 diff has been generated with -B50%
Andi Shyti (1):
arm64: dts: exynos: make tm2 and tm2e independent from each other
Andi Shyti (1):
arm64: dts: exynos: make tm2 and tm2e independent from each other
Chanwoo Choi (1):
arm64: dts: exynos5433: TM2/E: Fix wrong values for ldo23 and ldo25
Jaechul Lee (3):
input: Add support for the tm2 touchkey device driver
input: tm2-touchkey: Add touchkey driver support for TM2
arm64: dts: exynos: Add tm2 touchkey node
.../bindings/input/samsung,tm2-touchkey.txt | 27 +
...ynos5433-tm2.dts => exynos5433-tm2-common.dtsi} | 27 +-
arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 1163 +-------------------
arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 11 +-
drivers/input/keyboard/Kconfig | 11 +
drivers/input/keyboard/Makefile | 1 +
drivers/input/keyboard/tm2-touchkey.c | 280 +++++
7 files changed, 377 insertions(+), 1143 deletions(-)
create mode 100644 Documentation/devicetree/bindings/input/samsung,tm2-touchkey.txt
copy arch/arm64/boot/dts/exynos/{exynos5433-tm2.dts => exynos5433-tm2-common.dtsi} (97%)
rewrite arch/arm64/boot/dts/exynos/exynos5433-tm2.dts (97%)
create mode 100644 drivers/input/keyboard/tm2-touchkey.c
--
2.11.0
[toc] | [next] | [standalone]
| From | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| Date | 2017-01-06 14:50 +0100 |
| Subject | [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWD46-2DX-29@gated-at.bofh.it> |
| In reply to | #1552796 |
From: Jaechul Lee <jcsing.lee@samsung.com>
Add DT node support for TM2 touchkey device.
Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
---
arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
index 2449266b268f..92fcc4ec8319 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
@@ -18,6 +18,19 @@
compatible = "samsung,tm2", "samsung,exynos5433";
};
+&hsi2c_9 {
+ status = "okay";
+
+ touchkey@20 {
+ compatible = "samsung,tm2-touchkey";
+ reg = <0x20>;
+ interrupt-parent = <&gpa3>;
+ interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
+ vcc-supply = <&ldo32_reg>;
+ vdd-supply = <&ldo33_reg>;
+ };
+};
+
&ldo31_reg {
regulator-name = "TSP_VDD_1.85V_AP";
regulator-min-microvolt = <1850000>;
--
2.11.0
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <krzk@kernel.org> |
|---|---|
| Date | 2017-01-06 15:10 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWDns-31z-1@gated-at.bofh.it> |
| In reply to | #1552798 |
On Fri, Jan 06, 2017 at 10:43:50PM +0900, Andi Shyti wrote: > From: Jaechul Lee <jcsing.lee@samsung.com> > > Add DT node support for TM2 touchkey device. > > Signed-off-by: Beomho Seo <beomho.seo@samsung.com> > Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com> > Signed-off-by: Andi Shyti <andi.shyti@samsung.com> > Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com> > --- > arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > Looks good, but I will wait with this one till the bindings and driver got accepted. Best regards, Krzysztof
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-06 22:40 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWKoV-7NO-31@gated-at.bofh.it> |
| In reply to | #1552798 |
Hi,
2017-01-06 22:43 GMT+09:00 Andi Shyti <andi.shyti@samsung.com>:
> From: Jaechul Lee <jcsing.lee@samsung.com>
>
> Add DT node support for TM2 touchkey device.
>
> Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
> Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> index 2449266b268f..92fcc4ec8319 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> @@ -18,6 +18,19 @@
> compatible = "samsung,tm2", "samsung,exynos5433";
> };
>
> +&hsi2c_9 {
> + status = "okay";
> +
> + touchkey@20 {
> + compatible = "samsung,tm2-touchkey";
> + reg = <0x20>;
> + interrupt-parent = <&gpa3>;
> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
> + vcc-supply = <&ldo32_reg>;
> + vdd-supply = <&ldo33_reg>;
> + };
> +};
> +
> &ldo31_reg {
> regulator-name = "TSP_VDD_1.85V_AP";
> regulator-min-microvolt = <1850000>;
Looks good to me.
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
--
Best Regards,
Chanwoo Choi
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-06 23:20 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWL1D-8lb-11@gated-at.bofh.it> |
| In reply to | #1553150 |
Hi,
2017-01-07 7:09 GMT+09:00 Chanwoo Choi <cwchoi00@gmail.com>:
> Hi,
>
> 2017-01-07 6:31 GMT+09:00 Chanwoo Choi <cwchoi00@gmail.com>:
>> Hi,
>>
>> 2017-01-06 22:43 GMT+09:00 Andi Shyti <andi.shyti@samsung.com>:
>>> From: Jaechul Lee <jcsing.lee@samsung.com>
>>>
>>> Add DT node support for TM2 touchkey device.
>>>
>>> Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
>>> Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
>>> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
>>> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
>>> ---
>>> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++
>>> 1 file changed, 13 insertions(+)
>>>
>>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>>> index 2449266b268f..92fcc4ec8319 100644
>>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>>> @@ -18,6 +18,19 @@
>>> compatible = "samsung,tm2", "samsung,exynos5433";
>>> };
>>>
>>> +&hsi2c_9 {
>>> + status = "okay";
>>> +
>>> + touchkey@20 {
>>> + compatible = "samsung,tm2-touchkey";
>>> + reg = <0x20>;
>>> + interrupt-parent = <&gpa3>;
>>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
>>> + vcc-supply = <&ldo32_reg>;
>>> + vdd-supply = <&ldo33_reg>;
>>> + };
>>> +};
>>> +
>>> &ldo31_reg {
>>> regulator-name = "TSP_VDD_1.85V_AP";
>>> regulator-min-microvolt = <1850000>;
>>
>> Looks good to me.
>> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
I'm sorry to send the empty mail without any content.
I repiled the touchkey driver against compatible name.
Usually, when developing the device driver, we use the specific h/w name
but in this patch, the touckey dt node uses the h/w board name instead of
original touckhey name.
If this touckey device is used on other h/w board, I think the current
compatible name
is not proper.
So. please drop the my reviewed-by tag until completing the discussion.
I'm sorry to make the confusion.
--
Best Regards,
Chanwoo Choi
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi@etezian.org> |
|---|---|
| Date | 2017-01-07 13:50 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWYBA-rV-21@gated-at.bofh.it> |
| In reply to | #1553281 |
Hi Chanwoo,
> >>> + touchkey@20 {
> >>> + compatible = "samsung,tm2-touchkey";
> >>> + reg = <0x20>;
> >>> + interrupt-parent = <&gpa3>;
> >>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
> >>> + vcc-supply = <&ldo32_reg>;
> >>> + vdd-supply = <&ldo33_reg>;
> >>> + };
> >>> +};
> >>> +
> >>> &ldo31_reg {
> >>> regulator-name = "TSP_VDD_1.85V_AP";
> >>> regulator-min-microvolt = <1850000>;
>
> I repiled the touchkey driver against compatible name.
> Usually, when developing the device driver, we use the specific h/w name
> but in this patch, the touckey dt node uses the h/w board name instead of
> original touckhey name.
this should be a device specifically done for the tm2 and we are
not sure who is the manufacturer of the device. In order to not
assign the device to the wrong manufacturer, we preferred calling
it Samsung as it is in a Samsung device.
Andi
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-08 06:20 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sXe3D-203-5@gated-at.bofh.it> |
| In reply to | #1553653 |
Hi Andi,
2017-01-07 21:40 GMT+09:00 Andi Shyti <andi@etezian.org>:
> Hi Chanwoo,
>
>> >>> + touchkey@20 {
>> >>> + compatible = "samsung,tm2-touchkey";
>> >>> + reg = <0x20>;
>> >>> + interrupt-parent = <&gpa3>;
>> >>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
>> >>> + vcc-supply = <&ldo32_reg>;
>> >>> + vdd-supply = <&ldo33_reg>;
>> >>> + };
>> >>> +};
>> >>> +
>> >>> &ldo31_reg {
>> >>> regulator-name = "TSP_VDD_1.85V_AP";
>> >>> regulator-min-microvolt = <1850000>;
>>
>> I repiled the touchkey driver against compatible name.
>> Usually, when developing the device driver, we use the specific h/w name
>> but in this patch, the touckey dt node uses the h/w board name instead of
>> original touckhey name.
>
> this should be a device specifically done for the tm2 and we are
> not sure who is the manufacturer of the device. In order to not
As I knew, this touchkey was made by Cypress semiconductor.
But, for more correct information, you may try to find it.
> assign the device to the wrong manufacturer, we preferred calling
> it Samsung as it is in a Samsung device.
As you mentioned, Samsung made not this touchkey device. It is
certainly wrong manufacturer. I have not seen to use the h/w board
name as the peripheral device name.
I don't prefer to use the inaccurate manufacturer and device name.
--
Best Regards,
Chanwoo Choi
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi@etezian.org> |
|---|---|
| Date | 2017-01-08 06:50 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sXewG-2e3-11@gated-at.bofh.it> |
| In reply to | #1553791 |
Hi Chanwoo,
> >> >>> + touchkey@20 {
> >> >>> + compatible = "samsung,tm2-touchkey";
> >> >>> + reg = <0x20>;
> >> >>> + interrupt-parent = <&gpa3>;
> >> >>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
> >> >>> + vcc-supply = <&ldo32_reg>;
> >> >>> + vdd-supply = <&ldo33_reg>;
> >> >>> + };
> >> >>> +};
> >> >>> +
> >> >>> &ldo31_reg {
> >> >>> regulator-name = "TSP_VDD_1.85V_AP";
> >> >>> regulator-min-microvolt = <1850000>;
> >>
> >> I repiled the touchkey driver against compatible name.
> >> Usually, when developing the device driver, we use the specific h/w name
> >> but in this patch, the touckey dt node uses the h/w board name instead of
> >> original touckhey name.
> >
> > this should be a device specifically done for the tm2 and we are
> > not sure who is the manufacturer of the device. In order to not
>
> As I knew, this touchkey was made by Cypress semiconductor.
> But, for more correct information, you may try to find it.
The Android Kernel says that this is the cy8cmbr3xxx. I
downloaded the datasheets, but it doesn't have any similarity
with the device. Which means that on tm2 we don't the
cy8cmbr3xxx bot something else that I even doubt comes from
cypress, but I strongly believe it's a dedicated hardware.
Now we have two choices:
1. drop support because we are not 100% sure on the device and
supplier.
2. call it Samsung and provide support anyway as, at the end, it
is a samsung hardware.
With Jaechul we chose option 2.
> > assign the device to the wrong manufacturer, we preferred calling
> > it Samsung as it is in a Samsung device.
>
> As you mentioned, Samsung made not this touchkey device. It is
> certainly wrong manufacturer. I have not seen to use the h/w board
> name as the peripheral device name.
>
> I don't prefer to use the inaccurate manufacturer and device name.
Eventually, Jaechul can assign the device to cypress, but the
name has to remain tm2-touchkey. Something like this:
compatible = "cypress,tm2-touchkey";
What do you think?
Andi
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-08 07:10 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sXeQ2-2Ap-3@gated-at.bofh.it> |
| In reply to | #1553792 |
Hi Andi,
2017-01-08 14:45 GMT+09:00 Andi Shyti <andi@etezian.org>:
> Hi Chanwoo,
>
>> >> >>> + touchkey@20 {
>> >> >>> + compatible = "samsung,tm2-touchkey";
>> >> >>> + reg = <0x20>;
>> >> >>> + interrupt-parent = <&gpa3>;
>> >> >>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
>> >> >>> + vcc-supply = <&ldo32_reg>;
>> >> >>> + vdd-supply = <&ldo33_reg>;
>> >> >>> + };
>> >> >>> +};
>> >> >>> +
>> >> >>> &ldo31_reg {
>> >> >>> regulator-name = "TSP_VDD_1.85V_AP";
>> >> >>> regulator-min-microvolt = <1850000>;
>> >>
>> >> I repiled the touchkey driver against compatible name.
>> >> Usually, when developing the device driver, we use the specific h/w name
>> >> but in this patch, the touckey dt node uses the h/w board name instead of
>> >> original touckhey name.
>> >
>> > this should be a device specifically done for the tm2 and we are
>> > not sure who is the manufacturer of the device. In order to not
>>
>> As I knew, this touchkey was made by Cypress semiconductor.
>> But, for more correct information, you may try to find it.
>
> The Android Kernel says that this is the cy8cmbr3xxx. I
> downloaded the datasheets, but it doesn't have any similarity
> with the device. Which means that on tm2 we don't the
> cy8cmbr3xxx bot something else that I even doubt comes from
> cypress, but I strongly believe it's a dedicated hardware.
Although this device is a dedicated h/w, you should keep the principal.
Did you check the schematic document of TM2? The schematic document
might include the specific device name.
Sometimes, the downloaded datasheet does not include the
all of information of device because of confidential information.
But, I’m not sure. Just it is guess as my experience.
I want to check the manufacturer and name of device with you
on next Monday.
>
> Now we have two choices:
>
> 1. drop support because we are not 100% sure on the device and
> supplier.
>
> 2. call it Samsung and provide support anyway as, at the end, it
> is a samsung hardware.
>
> With Jaechul we chose option 2.
>
>> > assign the device to the wrong manufacturer, we preferred calling
>> > it Samsung as it is in a Samsung device.
>>
>> As you mentioned, Samsung made not this touchkey device. It is
>> certainly wrong manufacturer. I have not seen to use the h/w board
>> name as the peripheral device name.
>>
>> I don't prefer to use the inaccurate manufacturer and device name.
>
> Eventually, Jaechul can assign the device to cypress, but the
> name has to remain tm2-touchkey. Something like this:
>
> compatible = "cypress,tm2-touchkey";
>
> What do you think?
If we never to find the correct device name, we might use your suggestion.
As I already said, I’d like to check it again with you.
--
Best Regards,
Chanwoo Choi
Samsung Electronics
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi@smida.it> |
|---|---|
| Date | 2017-01-08 07:20 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sXeZH-2FM-3@gated-at.bofh.it> |
| In reply to | #1553794 |
Hi Chanwoo,
> >> >> >>> + touchkey@20 {
> >> >> >>> + compatible = "samsung,tm2-touchkey";
> >> >> >>> + reg = <0x20>;
> >> >> >>> + interrupt-parent = <&gpa3>;
> >> >> >>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
> >> >> >>> + vcc-supply = <&ldo32_reg>;
> >> >> >>> + vdd-supply = <&ldo33_reg>;
> >> >> >>> + };
> >> >> >>> +};
> >> >> >>> +
> >> >> >>> &ldo31_reg {
> >> >> >>> regulator-name = "TSP_VDD_1.85V_AP";
> >> >> >>> regulator-min-microvolt = <1850000>;
> >> >>
> >> >> I repiled the touchkey driver against compatible name.
> >> >> Usually, when developing the device driver, we use the specific h/w name
> >> >> but in this patch, the touckey dt node uses the h/w board name instead of
> >> >> original touckhey name.
> >> >
> >> > this should be a device specifically done for the tm2 and we are
> >> > not sure who is the manufacturer of the device. In order to not
> >>
> >> As I knew, this touchkey was made by Cypress semiconductor.
> >> But, for more correct information, you may try to find it.
> >
> > The Android Kernel says that this is the cy8cmbr3xxx. I
> > downloaded the datasheets, but it doesn't have any similarity
> > with the device. Which means that on tm2 we don't the
> > cy8cmbr3xxx bot something else that I even doubt comes from
> > cypress, but I strongly believe it's a dedicated hardware.
>
> Although this device is a dedicated h/w, you should keep the principal.
> Did you check the schematic document of TM2? The schematic document
> might include the specific device name.
>
> Sometimes, the downloaded datasheet does not include the
> all of information of device because of confidential information.
> But, I’m not sure. Just it is guess as my experience.
>
> I want to check the manufacturer and name of device with you
> on next Monday.
Yes, I checked everything, but didn't find the exact device name.
Anyway, let's take this discussion offline and find the correct
way.
Andi
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-06 23:20 +0100 |
| Subject | Re: [PATCH v5 5/5] arm64: dts: exynos: Add tm2 touchkey node |
| Message-ID | <sWL1D-8lb-13@gated-at.bofh.it> |
| In reply to | #1553150 |
Hi,
2017-01-07 6:31 GMT+09:00 Chanwoo Choi <cwchoi00@gmail.com>:
> Hi,
>
> 2017-01-06 22:43 GMT+09:00 Andi Shyti <andi.shyti@samsung.com>:
>> From: Jaechul Lee <jcsing.lee@samsung.com>
>>
>> Add DT node support for TM2 touchkey device.
>>
>> Signed-off-by: Beomho Seo <beomho.seo@samsung.com>
>> Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
>> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
>> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
>> ---
>> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 13 +++++++++++++
>> 1 file changed, 13 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>> index 2449266b268f..92fcc4ec8319 100644
>> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
>> @@ -18,6 +18,19 @@
>> compatible = "samsung,tm2", "samsung,exynos5433";
>> };
>>
>> +&hsi2c_9 {
>> + status = "okay";
>> +
>> + touchkey@20 {
>> + compatible = "samsung,tm2-touchkey";
>> + reg = <0x20>;
>> + interrupt-parent = <&gpa3>;
>> + interrupts = <2 IRQ_TYPE_EDGE_FALLING>;
>> + vcc-supply = <&ldo32_reg>;
>> + vdd-supply = <&ldo33_reg>;
>> + };
>> +};
>> +
>> &ldo31_reg {
>> regulator-name = "TSP_VDD_1.85V_AP";
>> regulator-min-microvolt = <1850000>;
>
> Looks good to me.
> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
>
> --
> Best Regards,
> Chanwoo Choi
--
Best Regards,
Chanwoo Choi
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| Date | 2017-01-06 14:50 +0100 |
| Subject | [PATCH v5 1/5] arm64: dts: exynos5433: TM2/E: Fix wrong values for ldo23 and ldo25 |
| Message-ID | <sWD46-2DX-33@gated-at.bofh.it> |
| In reply to | #1552796 |
From: Chanwoo Choi <cw00.choi@samsung.com>
This patch fixes wrong values assigned to ldo23 and ldo25 on both TM2 and TM2E.
Fixes: 01e5d2352152 ("arm64: dts: exynos: Add dts file for Exynos5433-based TM2 board")
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
---
arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 6 +++---
arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 9 ---------
2 files changed, 3 insertions(+), 12 deletions(-)
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
index 3b5215c40fcd..640e4b9910ae 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
@@ -504,9 +504,9 @@
};
ldo23_reg: LDO23 {
- regulator-name = "CAM_SEN_CORE_1.2V_AP";
+ regulator-name = "CAM_SEN_CORE_1.05V_AP";
regulator-min-microvolt = <1050000>;
- regulator-max-microvolt = <1200000>;
+ regulator-max-microvolt = <1050000>;
};
ldo24_reg: LDO24 {
@@ -516,7 +516,7 @@
};
ldo25_reg: LDO25 {
- regulator-name = "CAM_SEN_A2.8V_AP";
+ regulator-name = "UNUSED_LDO25";
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <2800000>;
};
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
index 398f5e092b02..854c583092d5 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
@@ -18,15 +18,6 @@
compatible = "samsung,tm2e", "samsung,exynos5433";
};
-&ldo23_reg {
- regulator-name = "CAM_SEN_CORE_1.025V_AP";
- regulator-max-microvolt = <1050000>;
-};
-
-&ldo25_reg {
- regulator-name = "UNUSED_LDO25";
-};
-
&ldo31_reg {
regulator-name = "TSP_VDD_1.8V_AP";
regulator-min-microvolt = <1800000>;
--
2.11.0
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <krzk@kernel.org> |
|---|---|
| Date | 2017-01-06 15:10 +0100 |
| Subject | Re: [PATCH v5 1/5] arm64: dts: exynos5433: TM2/E: Fix wrong values for ldo23 and ldo25 |
| Message-ID | <sWDns-31z-13@gated-at.bofh.it> |
| In reply to | #1552800 |
On Fri, Jan 06, 2017 at 10:43:46PM +0900, Andi Shyti wrote:
> From: Chanwoo Choi <cw00.choi@samsung.com>
>
> This patch fixes wrong values assigned to ldo23 and ldo25 on both TM2 and TM2E.
>
> Fixes: 01e5d2352152 ("arm64: dts: exynos: Add dts file for Exynos5433-based TM2 board")
> Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 6 +++---
> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 9 ---------
> 2 files changed, 3 insertions(+), 12 deletions(-)
>
Thanks, applied.
Best regards,
Krzysztof
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| Date | 2017-01-06 14:50 +0100 |
| Subject | [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWD46-2DX-37@gated-at.bofh.it> |
| In reply to | #1552796 |
Currently tm2e dts includes tm2 but there are some differences
between the two boards and tm2 has some properties that tm2e
doesn't have.
That's why it's important to keep the two dts files independent
and put all the commonalities in a tm2-common.dtsi file.
At the current status the only two differences between the two
dts files (besides the board name) are ldo31 and ldo38.
Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
---
...ynos5433-tm2.dts => exynos5433-tm2-common.dtsi} | 21 +-
arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 1150 +-------------------
arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 2 +-
3 files changed, 42 insertions(+), 1131 deletions(-)
copy arch/arm64/boot/dts/exynos/{exynos5433-tm2.dts => exynos5433-tm2-common.dtsi} (98%)
rewrite arch/arm64/boot/dts/exynos/exynos5433-tm2.dts (98%)
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
similarity index 98%
copy from arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
copy to arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
index 640e4b9910ae..cc6701b3bce4 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
@@ -3,8 +3,8 @@
*
* Copyright (c) 2016 Samsung Electronics Co., Ltd.
*
- * Device tree source file for Samsung's TM2 board which is based on
- * Samsung Exynos5433 SoC.
+ * Common device tree source file for Samsung's TM2 and TM2E boards
+ * which are based on Samsung Exynos5433 SoC.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@@ -19,9 +19,6 @@
#include <dt-bindings/interrupt-controller/irq.h>
/ {
- model = "Samsung TM2 board";
- compatible = "samsung,tm2", "samsung,exynos5433";
-
aliases {
gsc0 = &gsc_0;
gsc1 = &gsc_1;
@@ -552,9 +549,10 @@
};
ldo31_reg: LDO31 {
- regulator-name = "TSP_VDD_1.85V_AP";
- regulator-min-microvolt = <1850000>;
- regulator-max-microvolt = <1850000>;
+ /*
+ * LDO31 differs from target to target,
+ * its definition is in the .dts
+ */
};
ldo32_reg: LDO32 {
@@ -595,9 +593,10 @@
};
ldo38_reg: LDO38 {
- regulator-name = "VCC_3.0V_MOTOR_AP";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
+ /*
+ * LDO38 differs from target to target,
+ * its definition is in the .dts
+ */
};
ldo39_reg: LDO39 {
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
dissimilarity index 98%
index 640e4b9910ae..2449266b268f 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
@@ -1,1119 +1,31 @@
-/*
- * SAMSUNG Exynos5433 TM2 board device tree source
- *
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Device tree source file for Samsung's TM2 board which is based on
- * Samsung Exynos5433 SoC.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
-
-/dts-v1/;
-#include "exynos5433.dtsi"
-#include <dt-bindings/clock/samsung,s2mps11.h>
-#include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/input/input.h>
-#include <dt-bindings/interrupt-controller/irq.h>
-
-/ {
- model = "Samsung TM2 board";
- compatible = "samsung,tm2", "samsung,exynos5433";
-
- aliases {
- gsc0 = &gsc_0;
- gsc1 = &gsc_1;
- gsc2 = &gsc_2;
- pinctrl0 = &pinctrl_alive;
- pinctrl1 = &pinctrl_aud;
- pinctrl2 = &pinctrl_cpif;
- pinctrl3 = &pinctrl_ese;
- pinctrl4 = &pinctrl_finger;
- pinctrl5 = &pinctrl_fsys;
- pinctrl6 = &pinctrl_imem;
- pinctrl7 = &pinctrl_nfc;
- pinctrl8 = &pinctrl_peric;
- pinctrl9 = &pinctrl_touch;
- serial0 = &serial_0;
- serial1 = &serial_1;
- serial2 = &serial_2;
- serial3 = &serial_3;
- spi0 = &spi_0;
- spi1 = &spi_1;
- spi2 = &spi_2;
- spi3 = &spi_3;
- spi4 = &spi_4;
- mshc0 = &mshc_0;
- mshc2 = &mshc_2;
- };
-
- chosen {
- stdout-path = &serial_1;
- };
-
- memory@20000000 {
- device_type = "memory";
- reg = <0x0 0x20000000 0x0 0xc0000000>;
- };
-
- gpio-keys {
- compatible = "gpio-keys";
-
- power-key {
- gpios = <&gpa2 7 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_POWER>;
- label = "power key";
- debounce-interval = <10>;
- };
-
- volume-up-key {
- gpios = <&gpa2 0 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_VOLUMEUP>;
- label = "volume-up key";
- debounce-interval = <10>;
- };
-
- volume-down-key {
- gpios = <&gpa2 1 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_VOLUMEDOWN>;
- label = "volume-down key";
- debounce-interval = <10>;
- };
-
- homepage-key {
- gpios = <&gpa0 3 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_MENU>;
- label = "homepage key";
- debounce-interval = <10>;
- };
- };
-
- i2c_max98504: i2c-gpio-0 {
- compatible = "i2c-gpio";
- gpios = <&gpd0 1 GPIO_ACTIVE_HIGH /* SPK_AMP_SDA */
- &gpd0 0 GPIO_ACTIVE_HIGH /* SPK_AMP_SCL */ >;
- i2c-gpio,delay-us = <2>;
- #address-cells = <1>;
- #size-cells = <0>;
- status = "okay";
-
- max98504: max98504@31 {
- compatible = "maxim,max98504";
- reg = <0x31>;
- maxim,rx-path = <1>;
- maxim,tx-path = <1>;
- maxim,tx-channel-mask = <3>;
- maxim,tx-channel-source = <2>;
- };
- };
-
- sound {
- compatible = "samsung,tm2-audio";
- audio-codec = <&wm5110>;
- i2s-controller = <&i2s0>;
- audio-amplifier = <&max98504>;
- mic-bias-gpios = <&gpr3 2 GPIO_ACTIVE_HIGH>;
- model = "wm5110";
- samsung,audio-routing =
- /* Headphone */
- "HP", "HPOUT1L",
- "HP", "HPOUT1R",
-
- /* Speaker */
- "SPK", "SPKOUT",
- "SPKOUT", "HPOUT2L",
- "SPKOUT", "HPOUT2R",
-
- /* Receiver */
- "RCV", "HPOUT3L",
- "RCV", "HPOUT3R";
- status = "okay";
- };
-};
-
-&adc {
- vdd-supply = <&ldo3_reg>;
- status = "okay";
-
- thermistor-ap {
- compatible = "murata,ncp03wf104";
- pullup-uv = <1800000>;
- pullup-ohm = <100000>;
- pulldown-ohm = <0>;
- io-channels = <&adc 0>;
- };
-
- thermistor-battery {
- compatible = "murata,ncp03wf104";
- pullup-uv = <1800000>;
- pullup-ohm = <100000>;
- pulldown-ohm = <0>;
- io-channels = <&adc 1>;
- #thermal-sensor-cells = <0>;
- };
-
- thermistor-charger {
- compatible = "murata,ncp03wf104";
- pullup-uv = <1800000>;
- pullup-ohm = <100000>;
- pulldown-ohm = <0>;
- io-channels = <&adc 2>;
- };
-};
-
-&bus_g2d_400 {
- devfreq-events = <&ppmu_event0_d0_general>, <&ppmu_event0_d1_general>;
- vdd-supply = <&buck4_reg>;
- exynos,saturation-ratio = <10>;
- status = "okay";
-};
-
-&bus_g2d_266 {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_gscl {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_hevc {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_jpeg {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_mfc {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_mscl {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_noc0 {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_noc1 {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&bus_noc2 {
- devfreq = <&bus_g2d_400>;
- status = "okay";
-};
-
-&cmu_aud {
- assigned-clocks = <&cmu_aud CLK_MOUT_AUD_PLL_USER>;
- assigned-clock-parents = <&cmu_top CLK_FOUT_AUD_PLL>;
-};
-
-&cmu_fsys {
- assigned-clocks = <&cmu_top CLK_MOUT_SCLK_USBDRD30>,
- <&cmu_top CLK_MOUT_SCLK_USBHOST30>,
- <&cmu_fsys CLK_MOUT_SCLK_USBDRD30_USER>,
- <&cmu_fsys CLK_MOUT_SCLK_USBHOST30_USER>,
- <&cmu_fsys CLK_MOUT_PHYCLK_USBDRD30_UDRD30_PIPE_PCLK_USER>,
- <&cmu_fsys CLK_MOUT_PHYCLK_USBHOST30_UHOST30_PIPE_PCLK_USER>,
- <&cmu_fsys CLK_MOUT_PHYCLK_USBDRD30_UDRD30_PHYCLOCK_USER>,
- <&cmu_fsys CLK_MOUT_PHYCLK_USBHOST30_UHOST30_PHYCLOCK_USER>,
- <&cmu_top CLK_DIV_SCLK_USBDRD30>,
- <&cmu_top CLK_DIV_SCLK_USBHOST30>;
- assigned-clock-parents = <&cmu_top CLK_MOUT_BUS_PLL_USER>,
- <&cmu_top CLK_MOUT_BUS_PLL_USER>,
- <&cmu_top CLK_SCLK_USBDRD30_FSYS>,
- <&cmu_top CLK_SCLK_USBHOST30_FSYS>,
- <&cmu_fsys CLK_PHYCLK_USBDRD30_UDRD30_PIPE_PCLK_PHY>,
- <&cmu_fsys CLK_PHYCLK_USBHOST30_UHOST30_PIPE_PCLK_PHY>,
- <&cmu_fsys CLK_PHYCLK_USBDRD30_UDRD30_PHYCLOCK_PHY>,
- <&cmu_fsys CLK_PHYCLK_USBHOST30_UHOST30_PHYCLOCK_PHY>;
- assigned-clock-rates = <0>, <0>, <0>, <0>, <0>, <0>, <0>, <0>,
- <66700000>, <66700000>;
-};
-
-&cmu_gscl {
- assigned-clocks = <&cmu_gscl CLK_MOUT_ACLK_GSCL_111_USER>,
- <&cmu_gscl CLK_MOUT_ACLK_GSCL_333_USER>;
- assigned-clock-parents = <&cmu_top CLK_ACLK_GSCL_111>,
- <&cmu_top CLK_ACLK_GSCL_333>;
-};
-
-&cmu_mfc {
- assigned-clocks = <&cmu_mfc CLK_MOUT_ACLK_MFC_400_USER>;
- assigned-clock-parents = <&cmu_top CLK_ACLK_MFC_400>;
-};
-
-&cmu_mscl {
- assigned-clocks = <&cmu_mscl CLK_MOUT_ACLK_MSCL_400_USER>,
- <&cmu_mscl CLK_MOUT_SCLK_JPEG_USER>,
- <&cmu_mscl CLK_MOUT_SCLK_JPEG>,
- <&cmu_top CLK_MOUT_SCLK_JPEG_A>;
- assigned-clock-parents = <&cmu_top CLK_ACLK_MSCL_400>,
- <&cmu_top CLK_SCLK_JPEG_MSCL>,
- <&cmu_mscl CLK_MOUT_SCLK_JPEG_USER>,
- <&cmu_top CLK_MOUT_BUS_PLL_USER>;
-};
-
-&cpu0 {
- cpu-supply = <&buck3_reg>;
-};
-
-&cpu4 {
- cpu-supply = <&buck2_reg>;
-};
-
-&decon {
- status = "okay";
-
- i80-if-timings {
- };
-};
-
-&dsi {
- status = "okay";
- vddcore-supply = <&ldo6_reg>;
- vddio-supply = <&ldo7_reg>;
- samsung,pll-clock-frequency = <24000000>;
- pinctrl-names = "default";
- pinctrl-0 = <&te_irq>;
-
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port@1 {
- reg = <1>;
-
- dsi_out: endpoint {
- samsung,burst-clock-frequency = <512000000>;
- samsung,esc-clock-frequency = <16000000>;
- };
- };
- };
-};
-
-&hsi2c_0 {
- status = "okay";
- clock-frequency = <2500000>;
-
- s2mps13-pmic@66 {
- compatible = "samsung,s2mps13-pmic";
- interrupt-parent = <&gpa0>;
- interrupts = <7 IRQ_TYPE_NONE>;
- reg = <0x66>;
- samsung,s2mps11-wrstbi-ground;
-
- s2mps13_osc: clocks {
- compatible = "samsung,s2mps13-clk";
- #clock-cells = <1>;
- clock-output-names = "s2mps13_ap", "s2mps13_cp",
- "s2mps13_bt";
- };
-
- regulators {
- ldo1_reg: LDO1 {
- regulator-name = "VDD_ALIVE_0.9V_AP";
- regulator-min-microvolt = <900000>;
- regulator-max-microvolt = <900000>;
- regulator-always-on;
- };
-
- ldo2_reg: LDO2 {
- regulator-name = "VDDQ_MMC2_2.8V_AP";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo3_reg: LDO3 {
- regulator-name = "VDD1_E_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo4_reg: LDO4 {
- regulator-name = "VDD10_MIF_PLL_1.0V_AP";
- regulator-min-microvolt = <1300000>;
- regulator-max-microvolt = <1300000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo5_reg: LDO5 {
- regulator-name = "VDD10_DPLL_1.0V_AP";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo6_reg: LDO6 {
- regulator-name = "VDD10_MIPI2L_1.0V_AP";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo7_reg: LDO7 {
- regulator-name = "VDD18_MIPI2L_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo8_reg: LDO8 {
- regulator-name = "VDD18_LLI_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo9_reg: LDO9 {
- regulator-name = "VDD18_ABB_ETC_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo10_reg: LDO10 {
- regulator-name = "VDD33_USB30_3.0V_AP";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo11_reg: LDO11 {
- regulator-name = "VDD_INT_M_1.0V_AP";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo12_reg: LDO12 {
- regulator-name = "VDD_KFC_M_1.1V_AP";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1350000>;
- regulator-always-on;
- };
-
- ldo13_reg: LDO13 {
- regulator-name = "VDD_G3D_M_0.95V_AP";
- regulator-min-microvolt = <950000>;
- regulator-max-microvolt = <950000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo14_reg: LDO14 {
- regulator-name = "VDDQ_M1_LDO_1.2V_AP";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo15_reg: LDO15 {
- regulator-name = "VDDQ_M2_LDO_1.2V_AP";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- ldo16_reg: LDO16 {
- regulator-name = "VDDQ_EFUSE";
- regulator-min-microvolt = <1400000>;
- regulator-max-microvolt = <3400000>;
- regulator-always-on;
- };
-
- ldo17_reg: LDO17 {
- regulator-name = "V_TFLASH_2.8V_AP";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- };
-
- ldo18_reg: LDO18 {
- regulator-name = "V_CODEC_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo19_reg: LDO19 {
- regulator-name = "VDDA_1.8V_COMP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- regulator-always-on;
- };
-
- ldo20_reg: LDO20 {
- regulator-name = "VCC_2.8V_AP";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- regulator-always-on;
- };
-
- ldo21_reg: LDO21 {
- regulator-name = "VT_CAM_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo22_reg: LDO22 {
- regulator-name = "CAM_IO_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo23_reg: LDO23 {
- regulator-name = "CAM_SEN_CORE_1.05V_AP";
- regulator-min-microvolt = <1050000>;
- regulator-max-microvolt = <1050000>;
- };
-
- ldo24_reg: LDO24 {
- regulator-name = "VT_CAM_1.2V";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- };
-
- ldo25_reg: LDO25 {
- regulator-name = "UNUSED_LDO25";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- };
-
- ldo26_reg: LDO26 {
- regulator-name = "CAM_AF_2.8V_AP";
- regulator-min-microvolt = <2800000>;
- regulator-max-microvolt = <2800000>;
- };
-
- ldo27_reg: LDO27 {
- regulator-name = "VCC_3.0V_LCD_AP";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- };
-
- ldo28_reg: LDO28 {
- regulator-name = "VCC_1.8V_LCD_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo29_reg: LDO29 {
- regulator-name = "VT_CAM_2.8V";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- };
-
- ldo30_reg: LDO30 {
- regulator-name = "TSP_AVDD_3.3V_AP";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- };
-
- ldo31_reg: LDO31 {
- regulator-name = "TSP_VDD_1.85V_AP";
- regulator-min-microvolt = <1850000>;
- regulator-max-microvolt = <1850000>;
- };
-
- ldo32_reg: LDO32 {
- regulator-name = "VTOUCH_1.8V_AP";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo33_reg: LDO33 {
- regulator-name = "VTOUCH_LED_3.3V";
- regulator-min-microvolt = <2500000>;
- regulator-max-microvolt = <3300000>;
- regulator-ramp-delay = <12500>;
- };
-
- ldo34_reg: LDO34 {
- regulator-name = "VCC_1.8V_MHL_AP";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <2100000>;
- };
-
- ldo35_reg: LDO35 {
- regulator-name = "OIS_VM_2.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <2800000>;
- };
-
- ldo36_reg: LDO36 {
- regulator-name = "VSIL_1.0V";
- regulator-min-microvolt = <1000000>;
- regulator-max-microvolt = <1000000>;
- };
-
- ldo37_reg: LDO37 {
- regulator-name = "VF_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo38_reg: LDO38 {
- regulator-name = "VCC_3.0V_MOTOR_AP";
- regulator-min-microvolt = <3000000>;
- regulator-max-microvolt = <3000000>;
- };
-
- ldo39_reg: LDO39 {
- regulator-name = "V_HRM_1.8V";
- regulator-min-microvolt = <1800000>;
- regulator-max-microvolt = <1800000>;
- };
-
- ldo40_reg: LDO40 {
- regulator-name = "V_HRM_3.3V";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <3300000>;
- };
-
- buck1_reg: BUCK1 {
- regulator-name = "VDD_MIF_0.9V_AP";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck2_reg: BUCK2 {
- regulator-name = "VDD_EGL_1.0V_AP";
- regulator-min-microvolt = <900000>;
- regulator-max-microvolt = <1300000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck3_reg: BUCK3 {
- regulator-name = "VDD_KFC_1.0V_AP";
- regulator-min-microvolt = <800000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck4_reg: BUCK4 {
- regulator-name = "VDD_INT_0.95V_AP";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck5_reg: BUCK5 {
- regulator-name = "VDD_DISP_CAM0_0.9V_AP";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck6_reg: BUCK6 {
- regulator-name = "VDD_G3D_0.9V_AP";
- regulator-min-microvolt = <600000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- regulator-state-mem {
- regulator-off-in-suspend;
- };
- };
-
- buck7_reg: BUCK7 {
- regulator-name = "VDD_MEM1_1.2V_AP";
- regulator-min-microvolt = <1200000>;
- regulator-max-microvolt = <1200000>;
- regulator-always-on;
- };
-
- buck8_reg: BUCK8 {
- regulator-name = "VDD_LLDO_1.35V_AP";
- regulator-min-microvolt = <1350000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- buck9_reg: BUCK9 {
- regulator-name = "VDD_MLDO_2.0V_AP";
- regulator-min-microvolt = <1350000>;
- regulator-max-microvolt = <3300000>;
- regulator-always-on;
- };
-
- buck10_reg: BUCK10 {
- regulator-name = "vdd_mem2";
- regulator-min-microvolt = <550000>;
- regulator-max-microvolt = <1500000>;
- regulator-always-on;
- };
- };
- };
-};
-
-&hsi2c_8 {
- status = "okay";
-
- max77843@66 {
- compatible = "maxim,max77843";
- interrupt-parent = <&gpa1>;
- interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
- reg = <0x66>;
-
- muic: max77843-muic {
- compatible = "maxim,max77843-muic";
- };
-
- regulators {
- compatible = "maxim,max77843-regulator";
- safeout1_reg: SAFEOUT1 {
- regulator-name = "SAFEOUT1";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <4950000>;
- };
-
- safeout2_reg: SAFEOUT2 {
- regulator-name = "SAFEOUT2";
- regulator-min-microvolt = <3300000>;
- regulator-max-microvolt = <4950000>;
- };
-
- charger_reg: CHARGER {
- regulator-name = "CHARGER";
- regulator-min-microamp = <100000>;
- regulator-max-microamp = <3150000>;
- };
- };
-
- haptic: max77843-haptic {
- compatible = "maxim,max77843-haptic";
- haptic-supply = <&ldo38_reg>;
- pwms = <&pwm 0 33670 0>;
- pwm-names = "haptic";
- };
- };
-};
-
-&i2s0 {
- status = "okay";
-};
-
-&mshc_0 {
- status = "okay";
- num-slots = <1>;
- mmc-hs200-1_8v;
- mmc-hs400-1_8v;
- cap-mmc-highspeed;
- non-removable;
- card-detect-delay = <200>;
- samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <0 4>;
- samsung,dw-mshc-ddr-timing = <0 2>;
- samsung,dw-mshc-hs400-timing = <0 3>;
- samsung,read-strobe-delay = <90>;
- fifo-depth = <0x80>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_qrdy &sd0_bus1 &sd0_bus4
- &sd0_bus8 &sd0_rdqs>;
- bus-width = <8>;
- assigned-clocks = <&cmu_top CLK_SCLK_MMC0_FSYS>;
- assigned-clock-rates = <800000000>;
-};
-
-&mshc_2 {
- status = "okay";
- num-slots = <1>;
- cap-sd-highspeed;
- disable-wp;
- cd-gpios = <&gpa2 4 GPIO_ACTIVE_HIGH>;
- cd-inverted;
- card-detect-delay = <200>;
- samsung,dw-mshc-ciu-div = <3>;
- samsung,dw-mshc-sdr-timing = <0 4>;
- samsung,dw-mshc-ddr-timing = <0 2>;
- fifo-depth = <0x80>;
- pinctrl-names = "default";
- pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus1 &sd2_bus4>;
- bus-width = <4>;
-};
-
-&ppmu_d0_general {
- status = "okay";
- events {
- ppmu_event0_d0_general: ppmu-event0-d0-general {
- event-name = "ppmu-event0-d0-general";
- };
- };
-};
-
-&ppmu_d1_general {
- status = "okay";
- events {
- ppmu_event0_d1_general: ppmu-event0-d1-general {
- event-name = "ppmu-event0-d1-general";
- };
- };
-};
-
-&pinctrl_alive {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_alive>;
-
- initial_alive: initial-state {
- PIN(INPUT, gpa0-0, DOWN, FAST_SR1);
- PIN(INPUT, gpa0-1, NONE, FAST_SR1);
- PIN(INPUT, gpa0-2, DOWN, FAST_SR1);
- PIN(INPUT, gpa0-3, NONE, FAST_SR1);
- PIN(INPUT, gpa0-4, NONE, FAST_SR1);
- PIN(INPUT, gpa0-5, DOWN, FAST_SR1);
- PIN(INPUT, gpa0-6, NONE, FAST_SR1);
- PIN(INPUT, gpa0-7, NONE, FAST_SR1);
-
- PIN(INPUT, gpa1-0, UP, FAST_SR1);
- PIN(INPUT, gpa1-1, NONE, FAST_SR1);
- PIN(INPUT, gpa1-2, NONE, FAST_SR1);
- PIN(INPUT, gpa1-3, DOWN, FAST_SR1);
- PIN(INPUT, gpa1-4, DOWN, FAST_SR1);
- PIN(INPUT, gpa1-5, NONE, FAST_SR1);
- PIN(INPUT, gpa1-6, NONE, FAST_SR1);
- PIN(INPUT, gpa1-7, NONE, FAST_SR1);
-
- PIN(INPUT, gpa2-0, NONE, FAST_SR1);
- PIN(INPUT, gpa2-1, NONE, FAST_SR1);
- PIN(INPUT, gpa2-2, NONE, FAST_SR1);
- PIN(INPUT, gpa2-3, DOWN, FAST_SR1);
- PIN(INPUT, gpa2-4, NONE, FAST_SR1);
- PIN(INPUT, gpa2-5, DOWN, FAST_SR1);
- PIN(INPUT, gpa2-6, DOWN, FAST_SR1);
- PIN(INPUT, gpa2-7, NONE, FAST_SR1);
-
- PIN(INPUT, gpa3-0, DOWN, FAST_SR1);
- PIN(INPUT, gpa3-1, DOWN, FAST_SR1);
- PIN(INPUT, gpa3-2, NONE, FAST_SR1);
- PIN(INPUT, gpa3-3, DOWN, FAST_SR1);
- PIN(INPUT, gpa3-4, NONE, FAST_SR1);
- PIN(INPUT, gpa3-5, DOWN, FAST_SR1);
- PIN(INPUT, gpa3-6, DOWN, FAST_SR1);
- PIN(INPUT, gpa3-7, DOWN, FAST_SR1);
-
- PIN(INPUT, gpf1-0, NONE, FAST_SR1);
- PIN(INPUT, gpf1-1, NONE, FAST_SR1);
- PIN(INPUT, gpf1-2, DOWN, FAST_SR1);
- PIN(INPUT, gpf1-4, UP, FAST_SR1);
- PIN(OUTPUT, gpf1-5, NONE, FAST_SR1);
- PIN(INPUT, gpf1-6, DOWN, FAST_SR1);
- PIN(INPUT, gpf1-7, DOWN, FAST_SR1);
-
- PIN(INPUT, gpf2-0, DOWN, FAST_SR1);
- PIN(INPUT, gpf2-1, DOWN, FAST_SR1);
- PIN(INPUT, gpf2-2, DOWN, FAST_SR1);
- PIN(INPUT, gpf2-3, DOWN, FAST_SR1);
-
- PIN(INPUT, gpf3-0, DOWN, FAST_SR1);
- PIN(INPUT, gpf3-1, DOWN, FAST_SR1);
- PIN(INPUT, gpf3-2, NONE, FAST_SR1);
- PIN(INPUT, gpf3-3, DOWN, FAST_SR1);
-
- PIN(INPUT, gpf4-0, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-1, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-2, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-3, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-4, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-5, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-6, DOWN, FAST_SR1);
- PIN(INPUT, gpf4-7, DOWN, FAST_SR1);
-
- PIN(INPUT, gpf5-0, DOWN, FAST_SR1);
- PIN(INPUT, gpf5-1, DOWN, FAST_SR1);
- PIN(INPUT, gpf5-2, DOWN, FAST_SR1);
- PIN(INPUT, gpf5-3, DOWN, FAST_SR1);
- PIN(OUTPUT, gpf5-4, NONE, FAST_SR1);
- PIN(INPUT, gpf5-5, DOWN, FAST_SR1);
- PIN(INPUT, gpf5-6, DOWN, FAST_SR1);
- PIN(INPUT, gpf5-7, DOWN, FAST_SR1);
- };
-
- te_irq: te_irq {
- samsung,pins = "gpf1-3";
- samsung,pin-function = <0xf>;
- };
-};
-
-&pinctrl_cpif {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_cpif>;
-
- initial_cpif: initial-state {
- PIN(INPUT, gpv6-0, DOWN, FAST_SR1);
- PIN(INPUT, gpv6-1, DOWN, FAST_SR1);
- };
-};
-
-&pinctrl_ese {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_ese>;
-
- initial_ese: initial-state {
- PIN(INPUT, gpj2-0, DOWN, FAST_SR1);
- PIN(INPUT, gpj2-1, DOWN, FAST_SR1);
- PIN(INPUT, gpj2-2, DOWN, FAST_SR1);
- };
-};
-
-&pinctrl_fsys {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_fsys>;
-
- initial_fsys: initial-state {
- PIN(INPUT, gpr3-0, NONE, FAST_SR1);
- PIN(INPUT, gpr3-1, DOWN, FAST_SR1);
- PIN(INPUT, gpr3-2, DOWN, FAST_SR1);
- PIN(INPUT, gpr3-3, DOWN, FAST_SR1);
- PIN(INPUT, gpr3-7, NONE, FAST_SR1);
- };
-};
-
-&pinctrl_imem {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_imem>;
-
- initial_imem: initial-state {
- PIN(INPUT, gpf0-0, UP, FAST_SR1);
- PIN(INPUT, gpf0-1, UP, FAST_SR1);
- PIN(INPUT, gpf0-2, DOWN, FAST_SR1);
- PIN(INPUT, gpf0-3, UP, FAST_SR1);
- PIN(INPUT, gpf0-4, DOWN, FAST_SR1);
- PIN(INPUT, gpf0-5, NONE, FAST_SR1);
- PIN(INPUT, gpf0-6, DOWN, FAST_SR1);
- PIN(INPUT, gpf0-7, UP, FAST_SR1);
- };
-};
-
-&pinctrl_nfc {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_nfc>;
-
- initial_nfc: initial-state {
- PIN(INPUT, gpj0-2, DOWN, FAST_SR1);
- };
-};
-
-&pinctrl_peric {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_peric>;
-
- initial_peric: initial-state {
- PIN(INPUT, gpv7-0, DOWN, FAST_SR1);
- PIN(INPUT, gpv7-1, DOWN, FAST_SR1);
- PIN(INPUT, gpv7-2, NONE, FAST_SR1);
- PIN(INPUT, gpv7-3, DOWN, FAST_SR1);
- PIN(INPUT, gpv7-4, DOWN, FAST_SR1);
- PIN(INPUT, gpv7-5, DOWN, FAST_SR1);
-
- PIN(INPUT, gpb0-4, DOWN, FAST_SR1);
-
- PIN(INPUT, gpc0-2, DOWN, FAST_SR1);
- PIN(INPUT, gpc0-5, DOWN, FAST_SR1);
- PIN(INPUT, gpc0-7, DOWN, FAST_SR1);
-
- PIN(INPUT, gpc1-1, DOWN, FAST_SR1);
-
- PIN(INPUT, gpc3-4, NONE, FAST_SR1);
- PIN(INPUT, gpc3-5, NONE, FAST_SR1);
- PIN(INPUT, gpc3-6, NONE, FAST_SR1);
- PIN(INPUT, gpc3-7, NONE, FAST_SR1);
-
- PIN(OUTPUT, gpg0-0, NONE, FAST_SR1);
- PIN(2, gpg0-1, DOWN, FAST_SR1);
-
- PIN(INPUT, gpd2-5, DOWN, FAST_SR1);
-
- PIN(INPUT, gpd4-0, NONE, FAST_SR1);
- PIN(INPUT, gpd4-1, DOWN, FAST_SR1);
- PIN(INPUT, gpd4-2, DOWN, FAST_SR1);
- PIN(INPUT, gpd4-3, DOWN, FAST_SR1);
- PIN(INPUT, gpd4-4, DOWN, FAST_SR1);
-
- PIN(INPUT, gpd6-3, DOWN, FAST_SR1);
-
- PIN(INPUT, gpd8-1, UP, FAST_SR1);
-
- PIN(INPUT, gpg1-0, DOWN, FAST_SR1);
- PIN(INPUT, gpg1-1, DOWN, FAST_SR1);
- PIN(INPUT, gpg1-2, DOWN, FAST_SR1);
- PIN(INPUT, gpg1-3, DOWN, FAST_SR1);
- PIN(INPUT, gpg1-4, DOWN, FAST_SR1);
-
- PIN(INPUT, gpg2-0, DOWN, FAST_SR1);
- PIN(INPUT, gpg2-1, DOWN, FAST_SR1);
-
- PIN(INPUT, gpg3-0, DOWN, FAST_SR1);
- PIN(INPUT, gpg3-1, DOWN, FAST_SR1);
- PIN(INPUT, gpg3-5, DOWN, FAST_SR1);
- PIN(INPUT, gpg3-7, DOWN, FAST_SR1);
- };
-};
-
-&pinctrl_touch {
- pinctrl-names = "default";
- pinctrl-0 = <&initial_touch>;
-
- initial_touch: initial-state {
- PIN(INPUT, gpj1-2, DOWN, FAST_SR1);
- };
-};
-
-&pwm {
- pinctrl-0 = <&pwm0_out>;
- pinctrl-names = "default";
- status = "okay";
-};
-
-&mic {
- status = "okay";
-
- i80-if-timings {
- };
-};
-
-&pmu_system_controller {
- assigned-clocks = <&pmu_system_controller 0>;
- assigned-clock-parents = <&xxti>;
-};
-
-&serial_1 {
- status = "okay";
-};
-
-&spi_1 {
- cs-gpios = <&gpd6 3 GPIO_ACTIVE_HIGH>;
- status = "okay";
-
- wm5110: wm5110-codec@0 {
- compatible = "wlf,wm5110";
- reg = <0x0>;
- spi-max-frequency = <20000000>;
- interrupt-parent = <&gpa0>;
- interrupts = <4 IRQ_TYPE_NONE>;
- clocks = <&pmu_system_controller 0>,
- <&s2mps13_osc S2MPS11_CLK_BT>;
- clock-names = "mclk1", "mclk2";
-
- gpio-controller;
- #gpio-cells = <2>;
-
- wlf,micd-detect-debounce = <300>;
- wlf,micd-bias-start-time = <0x1>;
- wlf,micd-rate = <0x7>;
- wlf,micd-dbtime = <0x1>;
- wlf,micd-force-micbias;
- wlf,micd-configs = <0x0 1 0>;
- wlf,hpdet-channel = <1>;
- wlf,gpsw = <0x1>;
- wlf,inmode = <2 0 2 0>;
-
- wlf,reset = <&gpc0 7 GPIO_ACTIVE_HIGH>;
- wlf,ldoena = <&gpf0 0 GPIO_ACTIVE_HIGH>;
-
- /* core supplies */
- AVDD-supply = <&ldo18_reg>;
- DBVDD1-supply = <&ldo18_reg>;
- CPVDD-supply = <&ldo18_reg>;
- DBVDD2-supply = <&ldo18_reg>;
- DBVDD3-supply = <&ldo18_reg>;
-
- controller-data {
- samsung,spi-feedback-delay = <0>;
- };
- };
-};
-
-&timer {
- clock-frequency = <24000000>;
-};
-
-&tmu_atlas0 {
- vtmu-supply = <&ldo3_reg>;
- status = "okay";
-};
-
-&tmu_apollo {
- vtmu-supply = <&ldo3_reg>;
- status = "okay";
-};
-
-&tmu_g3d {
- vtmu-supply = <&ldo3_reg>;
- status = "okay";
-};
-
-&usbdrd30 {
- vdd33-supply = <&ldo10_reg>;
- vdd10-supply = <&ldo6_reg>;
- status = "okay";
-};
-
-&usbdrd_dwc3_0 {
- dr_mode = "otg";
-};
-
-&usbdrd30_phy {
- vbus-supply = <&safeout1_reg>;
- status = "okay";
-};
-
-&xxti {
- clock-frequency = <24000000>;
-};
+/*
+ * SAMSUNG Exynos5433 TM2 board device tree source
+ *
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ *
+ * Device tree source file for Samsung's TM2 board which is based on
+ * Samsung Exynos5433 SoC.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include "exynos5433-tm2-common.dtsi"
+
+/ {
+ model = "Samsung TM2 board";
+ compatible = "samsung,tm2", "samsung,exynos5433";
+};
+
+&ldo31_reg {
+ regulator-name = "TSP_VDD_1.85V_AP";
+ regulator-min-microvolt = <1850000>;
+ regulator-max-microvolt = <1850000>;
+};
+
+&ldo38_reg {
+ regulator-name = "VCC_3.0V_MOTOR_AP";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+};
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
index 854c583092d5..2fbf3a860316 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
@@ -11,7 +11,7 @@
* published by the Free Software Foundation.
*/
-#include "exynos5433-tm2.dts"
+#include "exynos5433-tm2-common.dtsi"
/ {
model = "Samsung TM2E board";
--
2.11.0
[toc] | [prev] | [next] | [standalone]
| From | Andi Shyti <andi.shyti@samsung.com> |
|---|---|
| Date | 2017-01-06 15:00 +0100 |
| Subject | Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWDdL-2Hu-9@gated-at.bofh.it> |
| In reply to | #1552801 |
Hi Krzysztof,
> > -#include "exynos5433-tm2.dts"
> > +#include "exynos5433-tm2-common.dtsi"
> >
> > / {
> > model = "Samsung TM2E board";
>
> Where are the regulators?
No need, they were already overwriting the original property, so
with your suggestion they didn't change in tm2e. That's why I like
your suggestion.
Originally I added the 'regulator' label to not have empty nodes.
Andi
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <krzk@kernel.org> |
|---|---|
| Date | 2017-01-06 15:20 +0100 |
| Subject | Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWDx8-36h-5@gated-at.bofh.it> |
| In reply to | #1552803 |
On Fri, Jan 6, 2017 at 3:53 PM, Andi Shyti <andi.shyti@samsung.com> wrote:
> Hi Krzysztof,
>
>> > -#include "exynos5433-tm2.dts"
>> > +#include "exynos5433-tm2-common.dtsi"
>> >
>> > / {
>> > model = "Samsung TM2E board";
>>
>> Where are the regulators?
>
> No need, they were already overwriting the original property, so
> with your suggestion they didn't change in tm2e. That's why I like
> your suggestion.
>
> Originally I added the 'regulator' label to not have empty nodes.
Yes, I understand, I spotted it right now. Everything looks good, thanks.
Applied.
BR,
Krzysztof
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <krzk@kernel.org> |
|---|---|
| Date | 2017-01-06 15:00 +0100 |
| Subject | Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWDdL-2Hu-1@gated-at.bofh.it> |
| In reply to | #1552801 |
On Fri, Jan 06, 2017 at 10:43:47PM +0900, Andi Shyti wrote:
> Currently tm2e dts includes tm2 but there are some differences
> between the two boards and tm2 has some properties that tm2e
> doesn't have.
>
> That's why it's important to keep the two dts files independent
> and put all the commonalities in a tm2-common.dtsi file.
>
> At the current status the only two differences between the two
> dts files (besides the board name) are ldo31 and ldo38.
>
> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
> ---
> ...ynos5433-tm2.dts => exynos5433-tm2-common.dtsi} | 21 +-
> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 1150 +-------------------
> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 2 +-
> 3 files changed, 42 insertions(+), 1131 deletions(-)
> copy arch/arm64/boot/dts/exynos/{exynos5433-tm2.dts => exynos5433-tm2-common.dtsi} (98%)
> rewrite arch/arm64/boot/dts/exynos/exynos5433-tm2.dts (98%)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> similarity index 98%
> copy from arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> copy to arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> index 640e4b9910ae..cc6701b3bce4 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
> @@ -3,8 +3,8 @@
> *
> * Copyright (c) 2016 Samsung Electronics Co., Ltd.
> *
> - * Device tree source file for Samsung's TM2 board which is based on
> - * Samsung Exynos5433 SoC.
> + * Common device tree source file for Samsung's TM2 and TM2E boards
> + * which are based on Samsung Exynos5433 SoC.
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License version 2 as
> @@ -19,9 +19,6 @@
> #include <dt-bindings/interrupt-controller/irq.h>
>
> / {
> - model = "Samsung TM2 board";
> - compatible = "samsung,tm2", "samsung,exynos5433";
> -
> aliases {
> gsc0 = &gsc_0;
> gsc1 = &gsc_1;
> @@ -552,9 +549,10 @@
> };
>
> ldo31_reg: LDO31 {
> - regulator-name = "TSP_VDD_1.85V_AP";
> - regulator-min-microvolt = <1850000>;
> - regulator-max-microvolt = <1850000>;
> + /*
> + * LDO31 differs from target to target,
> + * its definition is in the .dts
> + */
> };
>
> ldo32_reg: LDO32 {
> @@ -595,9 +593,10 @@
> };
>
> ldo38_reg: LDO38 {
> - regulator-name = "VCC_3.0V_MOTOR_AP";
> - regulator-min-microvolt = <3000000>;
> - regulator-max-microvolt = <3000000>;
> + /*
> + * LDO38 differs from target to target,
> + * its definition is in the .dts
> + */
> };
>
> ldo39_reg: LDO39 {
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> dissimilarity index 98%
> index 640e4b9910ae..2449266b268f 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts
> @@ -1,1119 +1,31 @@
> -/*
> - * SAMSUNG Exynos5433 TM2 board device tree source
> - *
> - * Copyright (c) 2016 Samsung Electronics Co., Ltd.
> - *
> - * Device tree source file for Samsung's TM2 board which is based on
> - * Samsung Exynos5433 SoC.
> - *
> - * This program is free software; you can redistribute it and/or modify
> - * it under the terms of the GNU General Public License version 2 as
> - * published by the Free Software Foundation.
> - */
> -
> -/dts-v1/;
> -#include "exynos5433.dtsi"
> -#include <dt-bindings/clock/samsung,s2mps11.h>
> -#include <dt-bindings/gpio/gpio.h>
> -#include <dt-bindings/input/input.h>
> -#include <dt-bindings/interrupt-controller/irq.h>
> -
> -/ {
> - model = "Samsung TM2 board";
> - compatible = "samsung,tm2", "samsung,exynos5433";
> -
> - aliases {
> - gsc0 = &gsc_0;
> - gsc1 = &gsc_1;
> - gsc2 = &gsc_2;
> - pinctrl0 = &pinctrl_alive;
> - pinctrl1 = &pinctrl_aud;
> - pinctrl2 = &pinctrl_cpif;
> - pinctrl3 = &pinctrl_ese;
> - pinctrl4 = &pinctrl_finger;
> - pinctrl5 = &pinctrl_fsys;
> - pinctrl6 = &pinctrl_imem;
> - pinctrl7 = &pinctrl_nfc;
> - pinctrl8 = &pinctrl_peric;
> - pinctrl9 = &pinctrl_touch;
> - serial0 = &serial_0;
> - serial1 = &serial_1;
> - serial2 = &serial_2;
> - serial3 = &serial_3;
> - spi0 = &spi_0;
> - spi1 = &spi_1;
> - spi2 = &spi_2;
> - spi3 = &spi_3;
> - spi4 = &spi_4;
> - mshc0 = &mshc_0;
> - mshc2 = &mshc_2;
> - };
> -
> - chosen {
> - stdout-path = &serial_1;
> - };
> -
> - memory@20000000 {
> - device_type = "memory";
> - reg = <0x0 0x20000000 0x0 0xc0000000>;
> - };
> -
> - gpio-keys {
> - compatible = "gpio-keys";
> -
> - power-key {
> - gpios = <&gpa2 7 GPIO_ACTIVE_LOW>;
> - linux,code = <KEY_POWER>;
> - label = "power key";
> - debounce-interval = <10>;
> - };
> -
> - volume-up-key {
> - gpios = <&gpa2 0 GPIO_ACTIVE_LOW>;
> - linux,code = <KEY_VOLUMEUP>;
> - label = "volume-up key";
> - debounce-interval = <10>;
> - };
> -
> - volume-down-key {
> - gpios = <&gpa2 1 GPIO_ACTIVE_LOW>;
> - linux,code = <KEY_VOLUMEDOWN>;
> - label = "volume-down key";
> - debounce-interval = <10>;
> - };
> -
> - homepage-key {
> - gpios = <&gpa0 3 GPIO_ACTIVE_LOW>;
> - linux,code = <KEY_MENU>;
> - label = "homepage key";
> - debounce-interval = <10>;
> - };
> - };
> -
> - i2c_max98504: i2c-gpio-0 {
> - compatible = "i2c-gpio";
> - gpios = <&gpd0 1 GPIO_ACTIVE_HIGH /* SPK_AMP_SDA */
> - &gpd0 0 GPIO_ACTIVE_HIGH /* SPK_AMP_SCL */ >;
> - i2c-gpio,delay-us = <2>;
> - #address-cells = <1>;
> - #size-cells = <0>;
> - status = "okay";
> -
> - max98504: max98504@31 {
> - compatible = "maxim,max98504";
> - reg = <0x31>;
> - maxim,rx-path = <1>;
> - maxim,tx-path = <1>;
> - maxim,tx-channel-mask = <3>;
> - maxim,tx-channel-source = <2>;
> - };
> - };
> -
> - sound {
> - compatible = "samsung,tm2-audio";
> - audio-codec = <&wm5110>;
> - i2s-controller = <&i2s0>;
> - audio-amplifier = <&max98504>;
> - mic-bias-gpios = <&gpr3 2 GPIO_ACTIVE_HIGH>;
> - model = "wm5110";
> - samsung,audio-routing =
> - /* Headphone */
> - "HP", "HPOUT1L",
> - "HP", "HPOUT1R",
> -
> - /* Speaker */
> - "SPK", "SPKOUT",
> - "SPKOUT", "HPOUT2L",
> - "SPKOUT", "HPOUT2R",
> -
> - /* Receiver */
> - "RCV", "HPOUT3L",
> - "RCV", "HPOUT3R";
> - status = "okay";
> - };
> -};
> -
> -&adc {
> - vdd-supply = <&ldo3_reg>;
> - status = "okay";
> -
> - thermistor-ap {
> - compatible = "murata,ncp03wf104";
> - pullup-uv = <1800000>;
> - pullup-ohm = <100000>;
> - pulldown-ohm = <0>;
> - io-channels = <&adc 0>;
> - };
> -
> - thermistor-battery {
> - compatible = "murata,ncp03wf104";
> - pullup-uv = <1800000>;
> - pullup-ohm = <100000>;
> - pulldown-ohm = <0>;
> - io-channels = <&adc 1>;
> - #thermal-sensor-cells = <0>;
> - };
> -
> - thermistor-charger {
> - compatible = "murata,ncp03wf104";
> - pullup-uv = <1800000>;
> - pullup-ohm = <100000>;
> - pulldown-ohm = <0>;
> - io-channels = <&adc 2>;
> - };
> -};
> -
> -&bus_g2d_400 {
> - devfreq-events = <&ppmu_event0_d0_general>, <&ppmu_event0_d1_general>;
> - vdd-supply = <&buck4_reg>;
> - exynos,saturation-ratio = <10>;
> - status = "okay";
> -};
> -
> -&bus_g2d_266 {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_gscl {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_hevc {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_jpeg {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_mfc {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_mscl {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_noc0 {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_noc1 {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&bus_noc2 {
> - devfreq = <&bus_g2d_400>;
> - status = "okay";
> -};
> -
> -&cmu_aud {
> - assigned-clocks = <&cmu_aud CLK_MOUT_AUD_PLL_USER>;
> - assigned-clock-parents = <&cmu_top CLK_FOUT_AUD_PLL>;
> -};
> -
> -&cmu_fsys {
> - assigned-clocks = <&cmu_top CLK_MOUT_SCLK_USBDRD30>,
> - <&cmu_top CLK_MOUT_SCLK_USBHOST30>,
> - <&cmu_fsys CLK_MOUT_SCLK_USBDRD30_USER>,
> - <&cmu_fsys CLK_MOUT_SCLK_USBHOST30_USER>,
> - <&cmu_fsys CLK_MOUT_PHYCLK_USBDRD30_UDRD30_PIPE_PCLK_USER>,
> - <&cmu_fsys CLK_MOUT_PHYCLK_USBHOST30_UHOST30_PIPE_PCLK_USER>,
> - <&cmu_fsys CLK_MOUT_PHYCLK_USBDRD30_UDRD30_PHYCLOCK_USER>,
> - <&cmu_fsys CLK_MOUT_PHYCLK_USBHOST30_UHOST30_PHYCLOCK_USER>,
> - <&cmu_top CLK_DIV_SCLK_USBDRD30>,
> - <&cmu_top CLK_DIV_SCLK_USBHOST30>;
> - assigned-clock-parents = <&cmu_top CLK_MOUT_BUS_PLL_USER>,
> - <&cmu_top CLK_MOUT_BUS_PLL_USER>,
> - <&cmu_top CLK_SCLK_USBDRD30_FSYS>,
> - <&cmu_top CLK_SCLK_USBHOST30_FSYS>,
> - <&cmu_fsys CLK_PHYCLK_USBDRD30_UDRD30_PIPE_PCLK_PHY>,
> - <&cmu_fsys CLK_PHYCLK_USBHOST30_UHOST30_PIPE_PCLK_PHY>,
> - <&cmu_fsys CLK_PHYCLK_USBDRD30_UDRD30_PHYCLOCK_PHY>,
> - <&cmu_fsys CLK_PHYCLK_USBHOST30_UHOST30_PHYCLOCK_PHY>;
> - assigned-clock-rates = <0>, <0>, <0>, <0>, <0>, <0>, <0>, <0>,
> - <66700000>, <66700000>;
> -};
> -
> -&cmu_gscl {
> - assigned-clocks = <&cmu_gscl CLK_MOUT_ACLK_GSCL_111_USER>,
> - <&cmu_gscl CLK_MOUT_ACLK_GSCL_333_USER>;
> - assigned-clock-parents = <&cmu_top CLK_ACLK_GSCL_111>,
> - <&cmu_top CLK_ACLK_GSCL_333>;
> -};
> -
> -&cmu_mfc {
> - assigned-clocks = <&cmu_mfc CLK_MOUT_ACLK_MFC_400_USER>;
> - assigned-clock-parents = <&cmu_top CLK_ACLK_MFC_400>;
> -};
> -
> -&cmu_mscl {
> - assigned-clocks = <&cmu_mscl CLK_MOUT_ACLK_MSCL_400_USER>,
> - <&cmu_mscl CLK_MOUT_SCLK_JPEG_USER>,
> - <&cmu_mscl CLK_MOUT_SCLK_JPEG>,
> - <&cmu_top CLK_MOUT_SCLK_JPEG_A>;
> - assigned-clock-parents = <&cmu_top CLK_ACLK_MSCL_400>,
> - <&cmu_top CLK_SCLK_JPEG_MSCL>,
> - <&cmu_mscl CLK_MOUT_SCLK_JPEG_USER>,
> - <&cmu_top CLK_MOUT_BUS_PLL_USER>;
> -};
> -
> -&cpu0 {
> - cpu-supply = <&buck3_reg>;
> -};
> -
> -&cpu4 {
> - cpu-supply = <&buck2_reg>;
> -};
> -
> -&decon {
> - status = "okay";
> -
> - i80-if-timings {
> - };
> -};
> -
> -&dsi {
> - status = "okay";
> - vddcore-supply = <&ldo6_reg>;
> - vddio-supply = <&ldo7_reg>;
> - samsung,pll-clock-frequency = <24000000>;
> - pinctrl-names = "default";
> - pinctrl-0 = <&te_irq>;
> -
> - ports {
> - #address-cells = <1>;
> - #size-cells = <0>;
> -
> - port@1 {
> - reg = <1>;
> -
> - dsi_out: endpoint {
> - samsung,burst-clock-frequency = <512000000>;
> - samsung,esc-clock-frequency = <16000000>;
> - };
> - };
> - };
> -};
> -
> -&hsi2c_0 {
> - status = "okay";
> - clock-frequency = <2500000>;
> -
> - s2mps13-pmic@66 {
> - compatible = "samsung,s2mps13-pmic";
> - interrupt-parent = <&gpa0>;
> - interrupts = <7 IRQ_TYPE_NONE>;
> - reg = <0x66>;
> - samsung,s2mps11-wrstbi-ground;
> -
> - s2mps13_osc: clocks {
> - compatible = "samsung,s2mps13-clk";
> - #clock-cells = <1>;
> - clock-output-names = "s2mps13_ap", "s2mps13_cp",
> - "s2mps13_bt";
> - };
> -
> - regulators {
> - ldo1_reg: LDO1 {
> - regulator-name = "VDD_ALIVE_0.9V_AP";
> - regulator-min-microvolt = <900000>;
> - regulator-max-microvolt = <900000>;
> - regulator-always-on;
> - };
> -
> - ldo2_reg: LDO2 {
> - regulator-name = "VDDQ_MMC2_2.8V_AP";
> - regulator-min-microvolt = <2800000>;
> - regulator-max-microvolt = <2800000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo3_reg: LDO3 {
> - regulator-name = "VDD1_E_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - regulator-always-on;
> - };
> -
> - ldo4_reg: LDO4 {
> - regulator-name = "VDD10_MIF_PLL_1.0V_AP";
> - regulator-min-microvolt = <1300000>;
> - regulator-max-microvolt = <1300000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo5_reg: LDO5 {
> - regulator-name = "VDD10_DPLL_1.0V_AP";
> - regulator-min-microvolt = <1000000>;
> - regulator-max-microvolt = <1000000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo6_reg: LDO6 {
> - regulator-name = "VDD10_MIPI2L_1.0V_AP";
> - regulator-min-microvolt = <1000000>;
> - regulator-max-microvolt = <1000000>;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo7_reg: LDO7 {
> - regulator-name = "VDD18_MIPI2L_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo8_reg: LDO8 {
> - regulator-name = "VDD18_LLI_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo9_reg: LDO9 {
> - regulator-name = "VDD18_ABB_ETC_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo10_reg: LDO10 {
> - regulator-name = "VDD33_USB30_3.0V_AP";
> - regulator-min-microvolt = <3000000>;
> - regulator-max-microvolt = <3000000>;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo11_reg: LDO11 {
> - regulator-name = "VDD_INT_M_1.0V_AP";
> - regulator-min-microvolt = <1000000>;
> - regulator-max-microvolt = <1000000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo12_reg: LDO12 {
> - regulator-name = "VDD_KFC_M_1.1V_AP";
> - regulator-min-microvolt = <800000>;
> - regulator-max-microvolt = <1350000>;
> - regulator-always-on;
> - };
> -
> - ldo13_reg: LDO13 {
> - regulator-name = "VDD_G3D_M_0.95V_AP";
> - regulator-min-microvolt = <950000>;
> - regulator-max-microvolt = <950000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo14_reg: LDO14 {
> - regulator-name = "VDDQ_M1_LDO_1.2V_AP";
> - regulator-min-microvolt = <1200000>;
> - regulator-max-microvolt = <1200000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo15_reg: LDO15 {
> - regulator-name = "VDDQ_M2_LDO_1.2V_AP";
> - regulator-min-microvolt = <1200000>;
> - regulator-max-microvolt = <1200000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - ldo16_reg: LDO16 {
> - regulator-name = "VDDQ_EFUSE";
> - regulator-min-microvolt = <1400000>;
> - regulator-max-microvolt = <3400000>;
> - regulator-always-on;
> - };
> -
> - ldo17_reg: LDO17 {
> - regulator-name = "V_TFLASH_2.8V_AP";
> - regulator-min-microvolt = <2800000>;
> - regulator-max-microvolt = <2800000>;
> - };
> -
> - ldo18_reg: LDO18 {
> - regulator-name = "V_CODEC_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo19_reg: LDO19 {
> - regulator-name = "VDDA_1.8V_COMP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - regulator-always-on;
> - };
> -
> - ldo20_reg: LDO20 {
> - regulator-name = "VCC_2.8V_AP";
> - regulator-min-microvolt = <2800000>;
> - regulator-max-microvolt = <2800000>;
> - regulator-always-on;
> - };
> -
> - ldo21_reg: LDO21 {
> - regulator-name = "VT_CAM_1.8V";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo22_reg: LDO22 {
> - regulator-name = "CAM_IO_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo23_reg: LDO23 {
> - regulator-name = "CAM_SEN_CORE_1.05V_AP";
> - regulator-min-microvolt = <1050000>;
> - regulator-max-microvolt = <1050000>;
> - };
> -
> - ldo24_reg: LDO24 {
> - regulator-name = "VT_CAM_1.2V";
> - regulator-min-microvolt = <1200000>;
> - regulator-max-microvolt = <1200000>;
> - };
> -
> - ldo25_reg: LDO25 {
> - regulator-name = "UNUSED_LDO25";
> - regulator-min-microvolt = <2800000>;
> - regulator-max-microvolt = <2800000>;
> - };
> -
> - ldo26_reg: LDO26 {
> - regulator-name = "CAM_AF_2.8V_AP";
> - regulator-min-microvolt = <2800000>;
> - regulator-max-microvolt = <2800000>;
> - };
> -
> - ldo27_reg: LDO27 {
> - regulator-name = "VCC_3.0V_LCD_AP";
> - regulator-min-microvolt = <3000000>;
> - regulator-max-microvolt = <3000000>;
> - };
> -
> - ldo28_reg: LDO28 {
> - regulator-name = "VCC_1.8V_LCD_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo29_reg: LDO29 {
> - regulator-name = "VT_CAM_2.8V";
> - regulator-min-microvolt = <3000000>;
> - regulator-max-microvolt = <3000000>;
> - };
> -
> - ldo30_reg: LDO30 {
> - regulator-name = "TSP_AVDD_3.3V_AP";
> - regulator-min-microvolt = <3300000>;
> - regulator-max-microvolt = <3300000>;
> - };
> -
> - ldo31_reg: LDO31 {
> - regulator-name = "TSP_VDD_1.85V_AP";
> - regulator-min-microvolt = <1850000>;
> - regulator-max-microvolt = <1850000>;
> - };
> -
> - ldo32_reg: LDO32 {
> - regulator-name = "VTOUCH_1.8V_AP";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo33_reg: LDO33 {
> - regulator-name = "VTOUCH_LED_3.3V";
> - regulator-min-microvolt = <2500000>;
> - regulator-max-microvolt = <3300000>;
> - regulator-ramp-delay = <12500>;
> - };
> -
> - ldo34_reg: LDO34 {
> - regulator-name = "VCC_1.8V_MHL_AP";
> - regulator-min-microvolt = <1000000>;
> - regulator-max-microvolt = <2100000>;
> - };
> -
> - ldo35_reg: LDO35 {
> - regulator-name = "OIS_VM_2.8V";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <2800000>;
> - };
> -
> - ldo36_reg: LDO36 {
> - regulator-name = "VSIL_1.0V";
> - regulator-min-microvolt = <1000000>;
> - regulator-max-microvolt = <1000000>;
> - };
> -
> - ldo37_reg: LDO37 {
> - regulator-name = "VF_1.8V";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo38_reg: LDO38 {
> - regulator-name = "VCC_3.0V_MOTOR_AP";
> - regulator-min-microvolt = <3000000>;
> - regulator-max-microvolt = <3000000>;
> - };
> -
> - ldo39_reg: LDO39 {
> - regulator-name = "V_HRM_1.8V";
> - regulator-min-microvolt = <1800000>;
> - regulator-max-microvolt = <1800000>;
> - };
> -
> - ldo40_reg: LDO40 {
> - regulator-name = "V_HRM_3.3V";
> - regulator-min-microvolt = <3300000>;
> - regulator-max-microvolt = <3300000>;
> - };
> -
> - buck1_reg: BUCK1 {
> - regulator-name = "VDD_MIF_0.9V_AP";
> - regulator-min-microvolt = <600000>;
> - regulator-max-microvolt = <1500000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck2_reg: BUCK2 {
> - regulator-name = "VDD_EGL_1.0V_AP";
> - regulator-min-microvolt = <900000>;
> - regulator-max-microvolt = <1300000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck3_reg: BUCK3 {
> - regulator-name = "VDD_KFC_1.0V_AP";
> - regulator-min-microvolt = <800000>;
> - regulator-max-microvolt = <1200000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck4_reg: BUCK4 {
> - regulator-name = "VDD_INT_0.95V_AP";
> - regulator-min-microvolt = <600000>;
> - regulator-max-microvolt = <1500000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck5_reg: BUCK5 {
> - regulator-name = "VDD_DISP_CAM0_0.9V_AP";
> - regulator-min-microvolt = <600000>;
> - regulator-max-microvolt = <1500000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck6_reg: BUCK6 {
> - regulator-name = "VDD_G3D_0.9V_AP";
> - regulator-min-microvolt = <600000>;
> - regulator-max-microvolt = <1500000>;
> - regulator-always-on;
> - regulator-state-mem {
> - regulator-off-in-suspend;
> - };
> - };
> -
> - buck7_reg: BUCK7 {
> - regulator-name = "VDD_MEM1_1.2V_AP";
> - regulator-min-microvolt = <1200000>;
> - regulator-max-microvolt = <1200000>;
> - regulator-always-on;
> - };
> -
> - buck8_reg: BUCK8 {
> - regulator-name = "VDD_LLDO_1.35V_AP";
> - regulator-min-microvolt = <1350000>;
> - regulator-max-microvolt = <3300000>;
> - regulator-always-on;
> - };
> -
> - buck9_reg: BUCK9 {
> - regulator-name = "VDD_MLDO_2.0V_AP";
> - regulator-min-microvolt = <1350000>;
> - regulator-max-microvolt = <3300000>;
> - regulator-always-on;
> - };
> -
> - buck10_reg: BUCK10 {
> - regulator-name = "vdd_mem2";
> - regulator-min-microvolt = <550000>;
> - regulator-max-microvolt = <1500000>;
> - regulator-always-on;
> - };
> - };
> - };
> -};
> -
> -&hsi2c_8 {
> - status = "okay";
> -
> - max77843@66 {
> - compatible = "maxim,max77843";
> - interrupt-parent = <&gpa1>;
> - interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
> - reg = <0x66>;
> -
> - muic: max77843-muic {
> - compatible = "maxim,max77843-muic";
> - };
> -
> - regulators {
> - compatible = "maxim,max77843-regulator";
> - safeout1_reg: SAFEOUT1 {
> - regulator-name = "SAFEOUT1";
> - regulator-min-microvolt = <3300000>;
> - regulator-max-microvolt = <4950000>;
> - };
> -
> - safeout2_reg: SAFEOUT2 {
> - regulator-name = "SAFEOUT2";
> - regulator-min-microvolt = <3300000>;
> - regulator-max-microvolt = <4950000>;
> - };
> -
> - charger_reg: CHARGER {
> - regulator-name = "CHARGER";
> - regulator-min-microamp = <100000>;
> - regulator-max-microamp = <3150000>;
> - };
> - };
> -
> - haptic: max77843-haptic {
> - compatible = "maxim,max77843-haptic";
> - haptic-supply = <&ldo38_reg>;
> - pwms = <&pwm 0 33670 0>;
> - pwm-names = "haptic";
> - };
> - };
> -};
> -
> -&i2s0 {
> - status = "okay";
> -};
> -
> -&mshc_0 {
> - status = "okay";
> - num-slots = <1>;
> - mmc-hs200-1_8v;
> - mmc-hs400-1_8v;
> - cap-mmc-highspeed;
> - non-removable;
> - card-detect-delay = <200>;
> - samsung,dw-mshc-ciu-div = <3>;
> - samsung,dw-mshc-sdr-timing = <0 4>;
> - samsung,dw-mshc-ddr-timing = <0 2>;
> - samsung,dw-mshc-hs400-timing = <0 3>;
> - samsung,read-strobe-delay = <90>;
> - fifo-depth = <0x80>;
> - pinctrl-names = "default";
> - pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_qrdy &sd0_bus1 &sd0_bus4
> - &sd0_bus8 &sd0_rdqs>;
> - bus-width = <8>;
> - assigned-clocks = <&cmu_top CLK_SCLK_MMC0_FSYS>;
> - assigned-clock-rates = <800000000>;
> -};
> -
> -&mshc_2 {
> - status = "okay";
> - num-slots = <1>;
> - cap-sd-highspeed;
> - disable-wp;
> - cd-gpios = <&gpa2 4 GPIO_ACTIVE_HIGH>;
> - cd-inverted;
> - card-detect-delay = <200>;
> - samsung,dw-mshc-ciu-div = <3>;
> - samsung,dw-mshc-sdr-timing = <0 4>;
> - samsung,dw-mshc-ddr-timing = <0 2>;
> - fifo-depth = <0x80>;
> - pinctrl-names = "default";
> - pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus1 &sd2_bus4>;
> - bus-width = <4>;
> -};
> -
> -&ppmu_d0_general {
> - status = "okay";
> - events {
> - ppmu_event0_d0_general: ppmu-event0-d0-general {
> - event-name = "ppmu-event0-d0-general";
> - };
> - };
> -};
> -
> -&ppmu_d1_general {
> - status = "okay";
> - events {
> - ppmu_event0_d1_general: ppmu-event0-d1-general {
> - event-name = "ppmu-event0-d1-general";
> - };
> - };
> -};
> -
> -&pinctrl_alive {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_alive>;
> -
> - initial_alive: initial-state {
> - PIN(INPUT, gpa0-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpa0-1, NONE, FAST_SR1);
> - PIN(INPUT, gpa0-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpa0-3, NONE, FAST_SR1);
> - PIN(INPUT, gpa0-4, NONE, FAST_SR1);
> - PIN(INPUT, gpa0-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpa0-6, NONE, FAST_SR1);
> - PIN(INPUT, gpa0-7, NONE, FAST_SR1);
> -
> - PIN(INPUT, gpa1-0, UP, FAST_SR1);
> - PIN(INPUT, gpa1-1, NONE, FAST_SR1);
> - PIN(INPUT, gpa1-2, NONE, FAST_SR1);
> - PIN(INPUT, gpa1-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpa1-4, DOWN, FAST_SR1);
> - PIN(INPUT, gpa1-5, NONE, FAST_SR1);
> - PIN(INPUT, gpa1-6, NONE, FAST_SR1);
> - PIN(INPUT, gpa1-7, NONE, FAST_SR1);
> -
> - PIN(INPUT, gpa2-0, NONE, FAST_SR1);
> - PIN(INPUT, gpa2-1, NONE, FAST_SR1);
> - PIN(INPUT, gpa2-2, NONE, FAST_SR1);
> - PIN(INPUT, gpa2-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpa2-4, NONE, FAST_SR1);
> - PIN(INPUT, gpa2-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpa2-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpa2-7, NONE, FAST_SR1);
> -
> - PIN(INPUT, gpa3-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpa3-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpa3-2, NONE, FAST_SR1);
> - PIN(INPUT, gpa3-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpa3-4, NONE, FAST_SR1);
> - PIN(INPUT, gpa3-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpa3-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpa3-7, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpf1-0, NONE, FAST_SR1);
> - PIN(INPUT, gpf1-1, NONE, FAST_SR1);
> - PIN(INPUT, gpf1-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpf1-4, UP, FAST_SR1);
> - PIN(OUTPUT, gpf1-5, NONE, FAST_SR1);
> - PIN(INPUT, gpf1-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpf1-7, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpf2-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpf2-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpf2-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpf2-3, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpf3-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpf3-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpf3-2, NONE, FAST_SR1);
> - PIN(INPUT, gpf3-3, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpf4-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-4, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpf4-7, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpf5-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpf5-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpf5-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpf5-3, DOWN, FAST_SR1);
> - PIN(OUTPUT, gpf5-4, NONE, FAST_SR1);
> - PIN(INPUT, gpf5-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpf5-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpf5-7, DOWN, FAST_SR1);
> - };
> -
> - te_irq: te_irq {
> - samsung,pins = "gpf1-3";
> - samsung,pin-function = <0xf>;
> - };
> -};
> -
> -&pinctrl_cpif {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_cpif>;
> -
> - initial_cpif: initial-state {
> - PIN(INPUT, gpv6-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpv6-1, DOWN, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_ese {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_ese>;
> -
> - initial_ese: initial-state {
> - PIN(INPUT, gpj2-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpj2-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpj2-2, DOWN, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_fsys {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_fsys>;
> -
> - initial_fsys: initial-state {
> - PIN(INPUT, gpr3-0, NONE, FAST_SR1);
> - PIN(INPUT, gpr3-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpr3-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpr3-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpr3-7, NONE, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_imem {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_imem>;
> -
> - initial_imem: initial-state {
> - PIN(INPUT, gpf0-0, UP, FAST_SR1);
> - PIN(INPUT, gpf0-1, UP, FAST_SR1);
> - PIN(INPUT, gpf0-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpf0-3, UP, FAST_SR1);
> - PIN(INPUT, gpf0-4, DOWN, FAST_SR1);
> - PIN(INPUT, gpf0-5, NONE, FAST_SR1);
> - PIN(INPUT, gpf0-6, DOWN, FAST_SR1);
> - PIN(INPUT, gpf0-7, UP, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_nfc {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_nfc>;
> -
> - initial_nfc: initial-state {
> - PIN(INPUT, gpj0-2, DOWN, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_peric {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_peric>;
> -
> - initial_peric: initial-state {
> - PIN(INPUT, gpv7-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpv7-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpv7-2, NONE, FAST_SR1);
> - PIN(INPUT, gpv7-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpv7-4, DOWN, FAST_SR1);
> - PIN(INPUT, gpv7-5, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpb0-4, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpc0-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpc0-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpc0-7, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpc1-1, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpc3-4, NONE, FAST_SR1);
> - PIN(INPUT, gpc3-5, NONE, FAST_SR1);
> - PIN(INPUT, gpc3-6, NONE, FAST_SR1);
> - PIN(INPUT, gpc3-7, NONE, FAST_SR1);
> -
> - PIN(OUTPUT, gpg0-0, NONE, FAST_SR1);
> - PIN(2, gpg0-1, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpd2-5, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpd4-0, NONE, FAST_SR1);
> - PIN(INPUT, gpd4-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpd4-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpd4-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpd4-4, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpd6-3, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpd8-1, UP, FAST_SR1);
> -
> - PIN(INPUT, gpg1-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpg1-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpg1-2, DOWN, FAST_SR1);
> - PIN(INPUT, gpg1-3, DOWN, FAST_SR1);
> - PIN(INPUT, gpg1-4, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpg2-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpg2-1, DOWN, FAST_SR1);
> -
> - PIN(INPUT, gpg3-0, DOWN, FAST_SR1);
> - PIN(INPUT, gpg3-1, DOWN, FAST_SR1);
> - PIN(INPUT, gpg3-5, DOWN, FAST_SR1);
> - PIN(INPUT, gpg3-7, DOWN, FAST_SR1);
> - };
> -};
> -
> -&pinctrl_touch {
> - pinctrl-names = "default";
> - pinctrl-0 = <&initial_touch>;
> -
> - initial_touch: initial-state {
> - PIN(INPUT, gpj1-2, DOWN, FAST_SR1);
> - };
> -};
> -
> -&pwm {
> - pinctrl-0 = <&pwm0_out>;
> - pinctrl-names = "default";
> - status = "okay";
> -};
> -
> -&mic {
> - status = "okay";
> -
> - i80-if-timings {
> - };
> -};
> -
> -&pmu_system_controller {
> - assigned-clocks = <&pmu_system_controller 0>;
> - assigned-clock-parents = <&xxti>;
> -};
> -
> -&serial_1 {
> - status = "okay";
> -};
> -
> -&spi_1 {
> - cs-gpios = <&gpd6 3 GPIO_ACTIVE_HIGH>;
> - status = "okay";
> -
> - wm5110: wm5110-codec@0 {
> - compatible = "wlf,wm5110";
> - reg = <0x0>;
> - spi-max-frequency = <20000000>;
> - interrupt-parent = <&gpa0>;
> - interrupts = <4 IRQ_TYPE_NONE>;
> - clocks = <&pmu_system_controller 0>,
> - <&s2mps13_osc S2MPS11_CLK_BT>;
> - clock-names = "mclk1", "mclk2";
> -
> - gpio-controller;
> - #gpio-cells = <2>;
> -
> - wlf,micd-detect-debounce = <300>;
> - wlf,micd-bias-start-time = <0x1>;
> - wlf,micd-rate = <0x7>;
> - wlf,micd-dbtime = <0x1>;
> - wlf,micd-force-micbias;
> - wlf,micd-configs = <0x0 1 0>;
> - wlf,hpdet-channel = <1>;
> - wlf,gpsw = <0x1>;
> - wlf,inmode = <2 0 2 0>;
> -
> - wlf,reset = <&gpc0 7 GPIO_ACTIVE_HIGH>;
> - wlf,ldoena = <&gpf0 0 GPIO_ACTIVE_HIGH>;
> -
> - /* core supplies */
> - AVDD-supply = <&ldo18_reg>;
> - DBVDD1-supply = <&ldo18_reg>;
> - CPVDD-supply = <&ldo18_reg>;
> - DBVDD2-supply = <&ldo18_reg>;
> - DBVDD3-supply = <&ldo18_reg>;
> -
> - controller-data {
> - samsung,spi-feedback-delay = <0>;
> - };
> - };
> -};
> -
> -&timer {
> - clock-frequency = <24000000>;
> -};
> -
> -&tmu_atlas0 {
> - vtmu-supply = <&ldo3_reg>;
> - status = "okay";
> -};
> -
> -&tmu_apollo {
> - vtmu-supply = <&ldo3_reg>;
> - status = "okay";
> -};
> -
> -&tmu_g3d {
> - vtmu-supply = <&ldo3_reg>;
> - status = "okay";
> -};
> -
> -&usbdrd30 {
> - vdd33-supply = <&ldo10_reg>;
> - vdd10-supply = <&ldo6_reg>;
> - status = "okay";
> -};
> -
> -&usbdrd_dwc3_0 {
> - dr_mode = "otg";
> -};
> -
> -&usbdrd30_phy {
> - vbus-supply = <&safeout1_reg>;
> - status = "okay";
> -};
> -
> -&xxti {
> - clock-frequency = <24000000>;
> -};
> +/*
> + * SAMSUNG Exynos5433 TM2 board device tree source
> + *
> + * Copyright (c) 2016 Samsung Electronics Co., Ltd.
> + *
> + * Device tree source file for Samsung's TM2 board which is based on
> + * Samsung Exynos5433 SoC.
> + *
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation.
> + */
> +
> +#include "exynos5433-tm2-common.dtsi"
> +
> +/ {
> + model = "Samsung TM2 board";
> + compatible = "samsung,tm2", "samsung,exynos5433";
> +};
> +
> +&ldo31_reg {
> + regulator-name = "TSP_VDD_1.85V_AP";
> + regulator-min-microvolt = <1850000>;
> + regulator-max-microvolt = <1850000>;
> +};
> +
> +&ldo38_reg {
> + regulator-name = "VCC_3.0V_MOTOR_AP";
> + regulator-min-microvolt = <3000000>;
> + regulator-max-microvolt = <3000000>;
> +};
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> index 854c583092d5..2fbf3a860316 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts
> @@ -11,7 +11,7 @@
> * published by the Free Software Foundation.
> */
>
> -#include "exynos5433-tm2.dts"
> +#include "exynos5433-tm2-common.dtsi"
>
> / {
> model = "Samsung TM2E board";
Where are the regulators?
Beside that it is starting to look good. I didn't find anything else but
maybe Javier's eagle eye will catch something.
Best regards,
Krzysztof
[toc] | [prev] | [next] | [standalone]
| From | Javier Martinez Canillas <javier@osg.samsung.com> |
|---|---|
| Date | 2017-01-06 15:20 +0100 |
| Subject | Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWDx8-36h-11@gated-at.bofh.it> |
| In reply to | #1552805 |
Hello Krzysztof, On 01/06/2017 10:49 AM, Krzysztof Kozlowski wrote: > On Fri, Jan 06, 2017 at 10:43:47PM +0900, Andi Shyti wrote: >> Currently tm2e dts includes tm2 but there are some differences >> between the two boards and tm2 has some properties that tm2e >> doesn't have. >> >> That's why it's important to keep the two dts files independent >> and put all the commonalities in a tm2-common.dtsi file. >> >> At the current status the only two differences between the two >> dts files (besides the board name) are ldo31 and ldo38. >> >> Signed-off-by: Andi Shyti <andi.shyti@samsung.com> >> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com> >> --- [snip] > Beside that it is starting to look good. I didn't find anything else but > maybe Javier's eagle eye will catch something. > I didn't find anything else, the patch looks good to me now. > > Best regards, > Krzysztof > Best regards, -- Javier Martinez Canillas Open Source Group Samsung Research America
[toc] | [prev] | [next] | [standalone]
| From | Chanwoo Choi <cwchoi00@gmail.com> |
|---|---|
| Date | 2017-01-06 22:30 +0100 |
| Subject | Re: [PATCH v5 2/5] arm64: dts: exynos: make tm2 and tm2e independent from each other |
| Message-ID | <sWKff-7Ju-15@gated-at.bofh.it> |
| In reply to | #1552801 |
Hi Andi,
2017-01-06 22:43 GMT+09:00 Andi Shyti <andi.shyti@samsung.com>:
> Currently tm2e dts includes tm2 but there are some differences
> between the two boards and tm2 has some properties that tm2e
> doesn't have.
>
> That's why it's important to keep the two dts files independent
> and put all the commonalities in a tm2-common.dtsi file.
>
> At the current status the only two differences between the two
> dts files (besides the board name) are ldo31 and ldo38.
>
> Signed-off-by: Andi Shyti <andi.shyti@samsung.com>
> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com>
> ---
> ...ynos5433-tm2.dts => exynos5433-tm2-common.dtsi} | 21 +-
> arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 1150 +-------------------
> arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 2 +-
> 3 files changed, 42 insertions(+), 1131 deletions(-)
> copy arch/arm64/boot/dts/exynos/{exynos5433-tm2.dts => exynos5433-tm2-common.dtsi} (98%)
> rewrite arch/arm64/boot/dts/exynos/exynos5433-tm2.dts (98%)
Looks good to me.
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
[snip]
--
Best Regards,
Chanwoo Choi
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web