diff mbox

[2/2] ARM: dts: add TOPEET itop elite based board

Message ID 1471875489-11428-3-git-send-email-ayaka@soulik.info (mailing list archive)
State New, archived
Headers show

Commit Message

ayaka Aug. 22, 2016, 2:18 p.m. UTC
The TOPEET itop exynos 4412 have three versions base board. The
Elite version is the cheap one without too much peripheral devices
on it.

Currently supported are serial console, wired networking(USB),
USB OTG in peripheral mode, USB host, SD storage, GPIO buttons,
PWM beeper, ADC and LEDs.

Signed-off-by: Randy Li <ayaka@soulik.info>
---
 .../bindings/arm/samsung/samsung-boards.txt        |   3 +
 arch/arm/boot/dts/Makefile                         |   1 +
 arch/arm/boot/dts/exynos4412-itop-elite.dts        | 147 +++++++++++++++++++++
 3 files changed, 151 insertions(+)
 create mode 100644 arch/arm/boot/dts/exynos4412-itop-elite.dts

Comments

kernel test robot Aug. 22, 2016, 6:59 p.m. UTC | #1
Hi Randy,

[auto build test ERROR on robh/for-next]
[also build test ERROR on v4.8-rc3 next-20160822]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
[Suggest to use git(>=2.9.0) format-patch --base=<commit> (or --base=auto for convenience) to record what (public, well-known) commit your patch series was built on]
[Check https://git-scm.com/docs/git-format-patch for more information]

url:    https://github.com/0day-ci/linux/commits/Randy-Li/ARM-dts-Add-TOPEET-itop-core-board-SCP-package-version/20160822-222021
base:   https://git.kernel.org/pub/scm/linux/kernel/git/robh/linux.git for-next
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 5.4.0-6) 5.4.0 20160609
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   In file included from arch/arm/boot/dts/exynos4412-itop-elite.dts:17:0:
>> arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi:21:47: fatal error: dt-bindings/clock/samsung,s5m8767.h: No such file or directory
   compilation terminated.

vim +21 arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi

42b32682 Randy Li 2016-08-22   5   *			https://www.sumomo.mobi
42b32682 Randy Li 2016-08-22   6   *			Randy Li <ayaka@soulik.info>
42b32682 Randy Li 2016-08-22   7   *			
42b32682 Randy Li 2016-08-22   8   * Device tree source file for TOPEET iTop Exynos 4412 SCP package core 
42b32682 Randy Li 2016-08-22   9   * board which is based on Samsung's Exynos4412 SoC.
42b32682 Randy Li 2016-08-22  10   *
42b32682 Randy Li 2016-08-22  11   * This program is free software; you can redistribute it and/or modify
42b32682 Randy Li 2016-08-22  12   * it under the terms of the GNU General Public License version 2 as
42b32682 Randy Li 2016-08-22  13   * published by the Free Software Foundation.
42b32682 Randy Li 2016-08-22  14  */
42b32682 Randy Li 2016-08-22  15  
42b32682 Randy Li 2016-08-22  16  #include "exynos4412.dtsi"
42b32682 Randy Li 2016-08-22  17  #include "exynos4412-ppmu-common.dtsi"
42b32682 Randy Li 2016-08-22  18  #include "exynos-mfc-reserved-memory.dtsi"
42b32682 Randy Li 2016-08-22  19  #include <dt-bindings/gpio/gpio.h>
42b32682 Randy Li 2016-08-22  20  #include <dt-bindings/input/input.h>
42b32682 Randy Li 2016-08-22 @21  #include <dt-bindings/clock/samsung,s5m8767.h>
42b32682 Randy Li 2016-08-22  22  
42b32682 Randy Li 2016-08-22  23  / {
42b32682 Randy Li 2016-08-22  24  	memory {
42b32682 Randy Li 2016-08-22  25  		reg = <0x40000000 0x40000000>;
42b32682 Randy Li 2016-08-22  26  	};
42b32682 Randy Li 2016-08-22  27  
42b32682 Randy Li 2016-08-22  28  	firmware@0203F000 {
42b32682 Randy Li 2016-08-22  29  		compatible = "samsung,secure-firmware";

:::::: The code at line 21 was first introduced by commit
:::::: 42b32682968d7e76d32f9db37795784297a284c7 ARM: dts: Add TOPEET itop core board SCP package version

:::::: TO: Randy Li <ayaka@soulik.info>
:::::: CC: 0day robot <fengguang.wu@intel.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
Rob Herring (Arm) Aug. 23, 2016, 6:14 p.m. UTC | #2
On Mon, Aug 22, 2016 at 10:18:09PM +0800, Randy Li wrote:
> The TOPEET itop exynos 4412 have three versions base board. The
> Elite version is the cheap one without too much peripheral devices
> on it.
> 
> Currently supported are serial console, wired networking(USB),
> USB OTG in peripheral mode, USB host, SD storage, GPIO buttons,
> PWM beeper, ADC and LEDs.
> 
> Signed-off-by: Randy Li <ayaka@soulik.info>
> ---
>  .../bindings/arm/samsung/samsung-boards.txt        |   3 +
>  arch/arm/boot/dts/Makefile                         |   1 +
>  arch/arm/boot/dts/exynos4412-itop-elite.dts        | 147 +++++++++++++++++++++
>  3 files changed, 151 insertions(+)
>  create mode 100644 arch/arm/boot/dts/exynos4412-itop-elite.dts
> 
> diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
> index 0ea7f14..c5913ba 100644
> --- a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
> +++ b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
> @@ -22,6 +22,9 @@ Required root node properties:
>    * FriendlyARM
>  	- "friendlyarm,tiny4412"  - for Exynos4412-based FriendlyARM
>  				    TINY4412 board.
> +  * Topee

Topeet?

> +	- "topeet,itop4412-elite" - for Exynos4412-based Topeet
> +                                    Elite base board.                             
>  
>    * Google
>  	- "google,pi"		- for Exynos5800-based Google Peach Pi
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 48e1d4e..8f47aa0 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -135,6 +135,7 @@ dtb-$(CONFIG_ARCH_EXYNOS4) += \
>  	exynos4412-origen.dtb \
>  	exynos4412-smdk4412.dtb \
>  	exynos4412-tiny4412.dtb \
> +	exynos4412-itop-elite.dtb \
>  	exynos4412-trats2.dtb
>  dtb-$(CONFIG_ARCH_EXYNOS5) += \
>  	exynos5250-arndale.dtb \
> diff --git a/arch/arm/boot/dts/exynos4412-itop-elite.dts b/arch/arm/boot/dts/exynos4412-itop-elite.dts
> new file mode 100644
> index 0000000..3e0863b
> --- /dev/null
> +++ b/arch/arm/boot/dts/exynos4412-itop-elite.dts
> @@ -0,0 +1,147 @@
> +/*
> + * TOPEET's Exynos4412 based itop board device tree source
> + *
> + * Copyright (c) 2016 SUMOMO Computer Association
> + *			https://www.sumomo.mobi
> + *			Randy Li <ayaka@soulik.info>
> + *			
> + * Device tree source file for TOPEET iTop Exynos 4412 core board 
> + * which is based on Samsung's Exynos4412 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 "exynos4412-itop-scp-core.dtsi"
> +
> +/ {
> +	model = "TOPEET iTop 4412 Elite board based on Exynos4412";
> +	compatible = "topeet,itop4412-elite", "samsung,exynos4412", "samsung,exynos4";
> +
> +	chosen {
> +		bootargs ="console=ttySAC2,115200";

Don't need console set with...

> +		stdout-path = &serial_2;

this set.

> +	};
> +	
> +	leds {
> +		compatible = "gpio-leds";
> +		
> +		led2 {
> +			label = "red:system";
> +			gpios = <&gpx1 0 GPIO_ACTIVE_HIGH>;
> +			default-state = "off";
> +			linux,default-trigger = "heartbeat";
> +		};
> +
> +		led3 {
> +			label = "red:user";
> +			gpios = <&gpk1 1 GPIO_ACTIVE_HIGH>;
> +			default-state = "off";
> +		};
> +	};
> +
> +	gpio-keys {
> +		compatible = "gpio-keys";
> +		
> +		home {
> +			lable = "GPIO Key Home";

s/lable/label/

> +			linux,code = <KEY_HOME>;
> +			gpios = <&gpx1 1 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		back {
> +			lable = "GPIO Key Back";

ditto...

> +			linux,code = <KEY_BACK>;
> +			gpios = <&gpx1 2 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		sleep {
> +			lable = "GPIO Key Sleep";
> +			linux,code = <KEY_POWER>;
> +			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		vol_up {
> +			lable = "GPIO Key Vol+";
> +			linux,code = <KEY_UP>;
> +			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
> +		};
> +
> +		vol_down {
> +			lable = "GPIO Key Vol-";
> +			linux,code = <KEY_DOWN>;
> +			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
> +		};
> +	};
> +	
> +	beep {
> +		compatible = "pwm-beeper";
> +		pwms = <&pwm>;
> +		pinctrl-0 = <&pwm0_out>;
> +		pinctrl-names = "default";
> +	};
> +};
> +
> +&pinctrl_1 {
> +	ether-reset {
> +		samsung,pins = "gpc0-1";
> +		samsung,pin-function = <1>;
> +		samsung,pin-pud = <0>;
> +		samsung,pin-drv = <0>;
> +	};
> +};
> +
> +&sdhci_2 {
> +	bus-width = <4>;
> +	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
> +	pinctrl-names = "default";
> +	broken-cd;
> +	cap-sd-highspeed;
> +	vmmc-supply = <&ldo23_reg>;
> +	vqmmc-supply = <&ldo17_reg>;
> +	status = "okay";
> +};
> +
> +&ehci {
> +	status = "okay";
> +	/* In order to reset USB ethernet */
> +	samsung,vbus-gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
> +
> +	port@0 {
> +		status = "okay";
> +	};
> +
> +	port@2 {
> +		status = "okay";
> +	};
> +};
> +
> +&exynos_usbphy {
> +	status = "okay";
> +};
> +
> +&hsotg {
> +	dr_mode = "peripheral";
> +	status = "okay";
> +};
> +
> +&serial_1 {
> +	status = "okay";
> +};
> +
> +&serial_2 {
> +	status = "okay";
> +};
> +
> +&pwm {
> +	pinctrl-0 = <&pwm1_out>;
> +	pinctrl-names = "default";
> +	samsung,pwm-outputs = <1>;
> +	status = "okay";
> +};
> +
> +&adc {
> +	status = "okay";
> +};
> -- 
> 2.7.4
>
ayaka Aug. 23, 2016, 6:36 p.m. UTC | #3
On 08/24/2016 02:14 AM, Rob Herring wrote:
> On Mon, Aug 22, 2016 at 10:18:09PM +0800, Randy Li wrote:
>> The TOPEET itop exynos 4412 have three versions base board. The
>> Elite version is the cheap one without too much peripheral devices
>> on it.
>>
>> Currently supported are serial console, wired networking(USB),
>> USB OTG in peripheral mode, USB host, SD storage, GPIO buttons,
>> PWM beeper, ADC and LEDs.
>>
>> Signed-off-by: Randy Li <ayaka@soulik.info>
>> ---
>>   .../bindings/arm/samsung/samsung-boards.txt        |   3 +
>>   arch/arm/boot/dts/Makefile                         |   1 +
>>   arch/arm/boot/dts/exynos4412-itop-elite.dts        | 147 +++++++++++++++++++++
>>   3 files changed, 151 insertions(+)
>>   create mode 100644 arch/arm/boot/dts/exynos4412-itop-elite.dts
>>
>> diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
>> index 0ea7f14..c5913ba 100644
>> --- a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
>> +++ b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
>> @@ -22,6 +22,9 @@ Required root node properties:
>>     * FriendlyARM
>>   	- "friendlyarm,tiny4412"  - for Exynos4412-based FriendlyARM
>>   				    TINY4412 board.
>> +  * Topee
> Topeet?
>
>> +	- "topeet,itop4412-elite" - for Exynos4412-based Topeet
>> +                                    Elite base board.
>>   
>>     * Google
>>   	- "google,pi"		- for Exynos5800-based Google Peach Pi
>> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>> index 48e1d4e..8f47aa0 100644
>> --- a/arch/arm/boot/dts/Makefile
>> +++ b/arch/arm/boot/dts/Makefile
>> @@ -135,6 +135,7 @@ dtb-$(CONFIG_ARCH_EXYNOS4) += \
>>   	exynos4412-origen.dtb \
>>   	exynos4412-smdk4412.dtb \
>>   	exynos4412-tiny4412.dtb \
>> +	exynos4412-itop-elite.dtb \
>>   	exynos4412-trats2.dtb
>>   dtb-$(CONFIG_ARCH_EXYNOS5) += \
>>   	exynos5250-arndale.dtb \
>> diff --git a/arch/arm/boot/dts/exynos4412-itop-elite.dts b/arch/arm/boot/dts/exynos4412-itop-elite.dts
>> new file mode 100644
>> index 0000000..3e0863b
>> --- /dev/null
>> +++ b/arch/arm/boot/dts/exynos4412-itop-elite.dts
>> @@ -0,0 +1,147 @@
>> +/*
>> + * TOPEET's Exynos4412 based itop board device tree source
>> + *
>> + * Copyright (c) 2016 SUMOMO Computer Association
>> + *			https://www.sumomo.mobi
>> + *			Randy Li <ayaka@soulik.info>
>> + *			
>> + * Device tree source file for TOPEET iTop Exynos 4412 core board
>> + * which is based on Samsung's Exynos4412 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 "exynos4412-itop-scp-core.dtsi"
>> +
>> +/ {
>> +	model = "TOPEET iTop 4412 Elite board based on Exynos4412";
>> +	compatible = "topeet,itop4412-elite", "samsung,exynos4412", "samsung,exynos4";
>> +
>> +	chosen {
>> +		bootargs ="console=ttySAC2,115200";
> Don't need console set with...
But could I set something like rootfs here ?
As the bootloader(old u-boot) offered by the vendor is brick, it is 
impossible to save any something in u-boot.
>
>> +		stdout-path = &serial_2;
> this set.
>
>> +	};
>> +	
>> +	leds {
>> +		compatible = "gpio-leds";
>> +		
>> +		led2 {
>> +			label = "red:system";
>> +			gpios = <&gpx1 0 GPIO_ACTIVE_HIGH>;
>> +			default-state = "off";
>> +			linux,default-trigger = "heartbeat";
>> +		};
>> +
>> +		led3 {
>> +			label = "red:user";
>> +			gpios = <&gpk1 1 GPIO_ACTIVE_HIGH>;
>> +			default-state = "off";
>> +		};
>> +	};
>> +
>> +	gpio-keys {
>> +		compatible = "gpio-keys";
>> +		
>> +		home {
>> +			lable = "GPIO Key Home";
> s/lable/label/
>
>> +			linux,code = <KEY_HOME>;
>> +			gpios = <&gpx1 1 GPIO_ACTIVE_LOW>;
>> +		};
>> +
>> +		back {
>> +			lable = "GPIO Key Back";
> ditto...
>
>> +			linux,code = <KEY_BACK>;
>> +			gpios = <&gpx1 2 GPIO_ACTIVE_LOW>;
>> +		};
>> +
>> +		sleep {
>> +			lable = "GPIO Key Sleep";
>> +			linux,code = <KEY_POWER>;
>> +			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
>> +		};
>> +
>> +		vol_up {
>> +			lable = "GPIO Key Vol+";
>> +			linux,code = <KEY_UP>;
>> +			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
>> +		};
>> +
>> +		vol_down {
>> +			lable = "GPIO Key Vol-";
>> +			linux,code = <KEY_DOWN>;
>> +			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
>> +		};
>> +	};
>> +	
>> +	beep {
>> +		compatible = "pwm-beeper";
>> +		pwms = <&pwm>;
>> +		pinctrl-0 = <&pwm0_out>;
>> +		pinctrl-names = "default";
>> +	};
>> +};
>> +
>> +&pinctrl_1 {
>> +	ether-reset {
>> +		samsung,pins = "gpc0-1";
>> +		samsung,pin-function = <1>;
>> +		samsung,pin-pud = <0>;
>> +		samsung,pin-drv = <0>;
>> +	};
>> +};
>> +
>> +&sdhci_2 {
>> +	bus-width = <4>;
>> +	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
>> +	pinctrl-names = "default";
>> +	broken-cd;
>> +	cap-sd-highspeed;
>> +	vmmc-supply = <&ldo23_reg>;
>> +	vqmmc-supply = <&ldo17_reg>;
>> +	status = "okay";
>> +};
>> +
>> +&ehci {
>> +	status = "okay";
>> +	/* In order to reset USB ethernet */
>> +	samsung,vbus-gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
>> +
>> +	port@0 {
>> +		status = "okay";
>> +	};
>> +
>> +	port@2 {
>> +		status = "okay";
>> +	};
>> +};
>> +
>> +&exynos_usbphy {
>> +	status = "okay";
>> +};
>> +
>> +&hsotg {
>> +	dr_mode = "peripheral";
>> +	status = "okay";
>> +};
>> +
>> +&serial_1 {
>> +	status = "okay";
>> +};
>> +
>> +&serial_2 {
>> +	status = "okay";
>> +};
>> +
>> +&pwm {
>> +	pinctrl-0 = <&pwm1_out>;
>> +	pinctrl-names = "default";
>> +	samsung,pwm-outputs = <1>;
>> +	status = "okay";
>> +};
>> +
>> +&adc {
>> +	status = "okay";
>> +};
>> -- 
>> 2.7.4
>>

Thank you for correct my spell mistake. I would resend a new version in 
this weekend. After I have done the clock driver samsung s5m8767 regualtor.
Rob Herring (Arm) Aug. 23, 2016, 10:38 p.m. UTC | #4
On Tue, Aug 23, 2016 at 1:36 PM, ayaka <ayaka@soulik.info> wrote:
>
> On 08/24/2016 02:14 AM, Rob Herring wrote:
>>
>> On Mon, Aug 22, 2016 at 10:18:09PM +0800, Randy Li wrote:
>>>
>>> The TOPEET itop exynos 4412 have three versions base board. The
>>> Elite version is the cheap one without too much peripheral devices
>>> on it.
>>>
>>> Currently supported are serial console, wired networking(USB),
>>> USB OTG in peripheral mode, USB host, SD storage, GPIO buttons,
>>> PWM beeper, ADC and LEDs.

[...]

>>> +/dts-v1/;
>>> +#include "exynos4412-itop-scp-core.dtsi"
>>> +
>>> +/ {
>>> +       model = "TOPEET iTop 4412 Elite board based on Exynos4412";
>>> +       compatible = "topeet,itop4412-elite", "samsung,exynos4412",
>>> "samsung,exynos4";
>>> +
>>> +       chosen {
>>> +               bootargs ="console=ttySAC2,115200";
>>
>> Don't need console set with...
>
> But could I set something like rootfs here ?
> As the bootloader(old u-boot) offered by the vendor is brick, it is
> impossible to save any something in u-boot.

Yes, but then that is a user decision and shouldn't really be there
either. In other words, ether the bootloader should set bootargs
(which even a vendor u-boot should be able to do either directly or
the zImage can take it from the ATAGS) or a user can edit the dts and
carry that change.

However, there are probably plenty of examples in the kernel that
counter what I just said.

Rob
ayaka Aug. 24, 2016, 8:29 a.m. UTC | #5
從我的 iPad 傳送

> Rob Herring <robh@kernel.org> 於 2016年8月24日 上午6:38 寫道:
> 
>> On Tue, Aug 23, 2016 at 1:36 PM, ayaka <ayaka@soulik.info> wrote:
>> 
>>> On 08/24/2016 02:14 AM, Rob Herring wrote:
>>> 
>>>> On Mon, Aug 22, 2016 at 10:18:09PM +0800, Randy Li wrote:
>>>> 
>>>> The TOPEET itop exynos 4412 have three versions base board. The
>>>> Elite version is the cheap one without too much peripheral devices
>>>> on it.
>>>> 
>>>> Currently supported are serial console, wired networking(USB),
>>>> USB OTG in peripheral mode, USB host, SD storage, GPIO buttons,
>>>> PWM beeper, ADC and LEDs.
> 
> [...]
> 
>>>> +/dts-v1/;
>>>> +#include "exynos4412-itop-scp-core.dtsi"
>>>> +
>>>> +/ {
>>>> +       model = "TOPEET iTop 4412 Elite board based on Exynos4412";
>>>> +       compatible = "topeet,itop4412-elite", "samsung,exynos4412",
>>>> "samsung,exynos4";
>>>> +
>>>> +       chosen {
>>>> +               bootargs ="console=ttySAC2,115200";
>>> 
>>> Don't need console set with...
>> 
>> But could I set something like rootfs here ?
>> As the bootloader(old u-boot) offered by the vendor is brick, it is
>> impossible to save any something in u-boot.
> 
> Yes, but then that is a user decision and shouldn't really be there
> either. In other words, ether the bootloader should set bootargs
> (which even a vendor u-boot should be able to do either directly or
> the zImage can take it from the ATAGS)
Yes, but you have to break the auto boot every time. I want to write a new u-boot for it, but I meet some problem with JTAG, it won't come soon.
> or a user can edit the dts and
> carry that change.
> 
> However, there are probably plenty of examples in the kernel that
> counter what I just said.
I see than you. May I ask if I specific the rootfs bootargs of in dts, should you accept such patch?
> 
> Rob
ayaka Aug. 28, 2016, 11:21 a.m. UTC | #6
The added the audio codec seems work now, but the audio sounds
still a little different to the original. But I didn't hear the sound
in the Android, I don't know whether it is qualified.

Also it lacks of full pinctrl for the sleep state.

Changelog:
 - v3:
   - fixing the rtc clock, using clock source from PMIC
   - enable the tmu
   - enable the fimc for elite board
   - suuport the audio codec at elite board
   - fixing minor bugs in the last commit
 - v2:
   - removing rtc node
     the clock source driver is not done yet.
   - adding exynos-bus
   - fixing the MFC

Randy Li (4):
  ARM: dts: Add TOPEET itop core board SCP package version
  ARM: dts: add TOPEET itop elite based board
  ARM: dts: add fimc support in exynos4412 TOPEET iTop Elite board
  ARM: dts: samsung: add analog audio codec on TOPEET iTop 4412 Elite

 .../bindings/arm/samsung/samsung-boards.txt        |   3 +
 arch/arm/boot/dts/Makefile                         |   1 +
 arch/arm/boot/dts/exynos4412-itop-elite.dts        | 241 ++++++++++
 arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi    | 489 +++++++++++++++++++++
 4 files changed, 734 insertions(+)
 create mode 100644 arch/arm/boot/dts/exynos4412-itop-elite.dts
 create mode 100644 arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
Krzysztof Kozlowski Aug. 30, 2016, 7:04 a.m. UTC | #7
On 08/28/2016 01:21 PM, Randy Li wrote:
> The added the audio codec seems work now, but the audio sounds
> still a little different to the original. But I didn't hear the sound
> in the Android, I don't know whether it is qualified.
> 
> Also it lacks of full pinctrl for the sleep state.
> 
> Changelog:
>  - v3:
>    - fixing the rtc clock, using clock source from PMIC
>    - enable the tmu
>    - enable the fimc for elite board
>    - suuport the audio codec at elite board
>    - fixing minor bugs in the last commit
>  - v2:
>    - removing rtc node
>      the clock source driver is not done yet.
>    - adding exynos-bus
>    - fixing the MFC

The way you send emails is really messed up.
1. The v3 in "PATCH v3" should be present in all patches. Use -v3 for
format-patch.

2. Don't reply-in-to old thread. All your new patches are now under old
ones. They have same subject so this is highly confusing. I don't have a
clue which is a new one.

Best regards,
Krzysztof
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
index 0ea7f14..c5913ba 100644
--- a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
+++ b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.txt
@@ -22,6 +22,9 @@  Required root node properties:
   * FriendlyARM
 	- "friendlyarm,tiny4412"  - for Exynos4412-based FriendlyARM
 				    TINY4412 board.
+  * Topee
+	- "topeet,itop4412-elite" - for Exynos4412-based Topeet
+                                    Elite base board.                             
 
   * Google
 	- "google,pi"		- for Exynos5800-based Google Peach Pi
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 48e1d4e..8f47aa0 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -135,6 +135,7 @@  dtb-$(CONFIG_ARCH_EXYNOS4) += \
 	exynos4412-origen.dtb \
 	exynos4412-smdk4412.dtb \
 	exynos4412-tiny4412.dtb \
+	exynos4412-itop-elite.dtb \
 	exynos4412-trats2.dtb
 dtb-$(CONFIG_ARCH_EXYNOS5) += \
 	exynos5250-arndale.dtb \
diff --git a/arch/arm/boot/dts/exynos4412-itop-elite.dts b/arch/arm/boot/dts/exynos4412-itop-elite.dts
new file mode 100644
index 0000000..3e0863b
--- /dev/null
+++ b/arch/arm/boot/dts/exynos4412-itop-elite.dts
@@ -0,0 +1,147 @@ 
+/*
+ * TOPEET's Exynos4412 based itop board device tree source
+ *
+ * Copyright (c) 2016 SUMOMO Computer Association
+ *			https://www.sumomo.mobi
+ *			Randy Li <ayaka@soulik.info>
+ *			
+ * Device tree source file for TOPEET iTop Exynos 4412 core board 
+ * which is based on Samsung's Exynos4412 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 "exynos4412-itop-scp-core.dtsi"
+
+/ {
+	model = "TOPEET iTop 4412 Elite board based on Exynos4412";
+	compatible = "topeet,itop4412-elite", "samsung,exynos4412", "samsung,exynos4";
+
+	chosen {
+		bootargs ="console=ttySAC2,115200";
+		stdout-path = &serial_2;
+	};
+	
+	leds {
+		compatible = "gpio-leds";
+		
+		led2 {
+			label = "red:system";
+			gpios = <&gpx1 0 GPIO_ACTIVE_HIGH>;
+			default-state = "off";
+			linux,default-trigger = "heartbeat";
+		};
+
+		led3 {
+			label = "red:user";
+			gpios = <&gpk1 1 GPIO_ACTIVE_HIGH>;
+			default-state = "off";
+		};
+	};
+
+	gpio-keys {
+		compatible = "gpio-keys";
+		
+		home {
+			lable = "GPIO Key Home";
+			linux,code = <KEY_HOME>;
+			gpios = <&gpx1 1 GPIO_ACTIVE_LOW>;
+		};
+
+		back {
+			lable = "GPIO Key Back";
+			linux,code = <KEY_BACK>;
+			gpios = <&gpx1 2 GPIO_ACTIVE_LOW>;
+		};
+
+		sleep {
+			lable = "GPIO Key Sleep";
+			linux,code = <KEY_POWER>;
+			gpios = <&gpx3 3 GPIO_ACTIVE_LOW>;
+		};
+
+		vol_up {
+			lable = "GPIO Key Vol+";
+			linux,code = <KEY_UP>;
+			gpios = <&gpx2 1 GPIO_ACTIVE_LOW>;
+		};
+
+		vol_down {
+			lable = "GPIO Key Vol-";
+			linux,code = <KEY_DOWN>;
+			gpios = <&gpx2 0 GPIO_ACTIVE_LOW>;
+		};
+	};
+	
+	beep {
+		compatible = "pwm-beeper";
+		pwms = <&pwm>;
+		pinctrl-0 = <&pwm0_out>;
+		pinctrl-names = "default";
+	};
+};
+
+&pinctrl_1 {
+	ether-reset {
+		samsung,pins = "gpc0-1";
+		samsung,pin-function = <1>;
+		samsung,pin-pud = <0>;
+		samsung,pin-drv = <0>;
+	};
+};
+
+&sdhci_2 {
+	bus-width = <4>;
+	pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
+	pinctrl-names = "default";
+	broken-cd;
+	cap-sd-highspeed;
+	vmmc-supply = <&ldo23_reg>;
+	vqmmc-supply = <&ldo17_reg>;
+	status = "okay";
+};
+
+&ehci {
+	status = "okay";
+	/* In order to reset USB ethernet */
+	samsung,vbus-gpio = <&gpc0 1 GPIO_ACTIVE_HIGH>;
+
+	port@0 {
+		status = "okay";
+	};
+
+	port@2 {
+		status = "okay";
+	};
+};
+
+&exynos_usbphy {
+	status = "okay";
+};
+
+&hsotg {
+	dr_mode = "peripheral";
+	status = "okay";
+};
+
+&serial_1 {
+	status = "okay";
+};
+
+&serial_2 {
+	status = "okay";
+};
+
+&pwm {
+	pinctrl-0 = <&pwm1_out>;
+	pinctrl-names = "default";
+	samsung,pwm-outputs = <1>;
+	status = "okay";
+};
+
+&adc {
+	status = "okay";
+};