All of lore.kernel.org
 help / color / mirror / Atom feed
From: ayaka <ayaka@soulik.info>
To: chanwoo@kernel.org
Cc: Marek Szyprowski <m.szyprowski@samsung.com>,
	devicetree <devicetree@vger.kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>,
	linux@armlinux.org.uk, Kukjin Kim <kgene@kernel.org>,
	krzk@kernel.org,
	linux-arm-kernel <linux-arm-kernel@lists.infradead.org>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 1/2] ARM: dts: Add TOPEET itop core board SCP package version
Date: Mon, 22 Aug 2016 22:49:30 +0800	[thread overview]
Message-ID: <d20d3fa1-9bfb-18df-b030-8a72efdf5084@soulik.info> (raw)
In-Reply-To: <CAGTfZH07v_9bxKKx4gwLSb6+vLpZ+esW4D5sT4=RiHXa3SV-Vg@mail.gmail.com>



On 08/22/2016 10:45 PM, Chanwoo Choi wrote:
> Hi,
>
> 2016-08-22 17:28 GMT+09:00 Ayaka <ayaka@soulik.info>:
>> Thank you
>> 從我的 iPad 傳送
>>
>>> Marek Szyprowski <m.szyprowski@samsung.com> 於 2016年8月22日 下午2:50 寫道:
>>>
>>> Dear Randy,
>>>
>>>
>>>> On 2016-08-21 22:04, Randy Li wrote:
>>>> The TOPEET itop is a samsung exnynos 4412 core board, which have
>>>> two package versions. This patch add the support for SCP version.
>>>>
>>>> Currently supported are USB3503A HSIC, USB OTG, eMMC, RTC and PMIC.
>>>> The future features are in the based board. Also MFC and watchdog
>>>> have been enabled.
>>>>
>>>> Signed-off-by: Randy Li <ayaka@soulik.info>
>>>> ---
>>>>   arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi | 434 ++++++++++++++++++++++++
>>>>   1 file changed, 434 insertions(+)
>>>>   create mode 100644 arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>>
>>>> diff --git a/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>> new file mode 100644
>>>> index 0000000..0860ee6
>>>> --- /dev/null
>>>> +++ b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>> @@ -0,0 +1,434 @@
>>>> +/*
>>>> + * 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 SCP package 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.
>>>> +*/
>>>> +
>>>> +#include "exynos4412.dtsi"
>>>> +#include <dt-bindings/gpio/gpio.h>
>>>> +#include <dt-bindings/input/input.h>
>>>> +
>>>> +/ {
>>>> +    memory {
>>>> +        reg = <0x40000000 0x40000000>;
>>>> +    };
>>>> +
>>>> +    firmware@0203F000 {
>>>> +        compatible = "samsung,secure-firmware";
>>>> +        reg = <0x0203F000 0x1000>;
>>>> +    };
>>>> +
>>>> +    display-timings {
>>>> +        native-mode = <&timing0>;
>>>> +        timing0: timing {
>>>> +            clock-frequency = <47500000>;
>>>> +            hactive = <1024>;
>>>> +            vactive = <600>;
>>>> +            hfront-porch = <64>;
>>>> +            hback-porch = <16>;
>>>> +            hsync-len = <48>;
>>>> +            vback-porch = <64>;
>>>> +            vfront-porch = <16>;
>>>> +            vsync-len = <3>;
>>>> +        };
>>>> +    };
>>>> +
>>>> +    fixed-rate-clocks {
>>>> +        xxti {
>>>> +            compatible = "samsung,clock-xxti";
>>>> +            clock-frequency = <0>;
>>>> +        };
>>>> +
>>>> +        xusbxti {
>>>> +            compatible = "samsung,clock-xusbxti";
>>>> +            clock-frequency = <24000000>;
>>>> +        };
>>>> +    };
>>>> +
>>>> +    usb-hub {
>>>> +        compatible = "smsc,usb3503a";
>>>> +        reset-gpios = <&gpm2 4 GPIO_ACTIVE_LOW>;
>>>> +        connect-gpios = <&gpm3 3 GPIO_ACTIVE_HIGH>;
>>>> +        intn-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>;
>>>> +        pinctrl-names = "default";
>>>> +        pinctrl-0 = <&hsic_reset>;
>>>> +    };
>>>> +};
>>>> +
>>>> +&cpu0 {
>>>> +    cpu0-supply = <&buck2_reg>;
>>>> +};
>>>> +
>>>> +&i2c_1 {
>>>> +    #address-cells = <1>;
>>>> +    #size-cells = <0>;
>>>> +    samsung,i2c-sda-delay = <100>;
>>>> +    samsung,i2c-max-bus-freq = <400000>;
>>>> +    pinctrl-0 = <&i2c1_bus>;
>>>> +    pinctrl-names = "default";
>>>> +    status = "okay";
>>>> +
>>>> +    s5m8767_pmic@66 {
>>>> +        compatible = "samsung,s5m8767-pmic";
>>>> +        reg = <0x66>;
>>>> +
>>>> +        s5m8767,pmic-buck-default-dvs-idx = <3>;
>>>> +
>>>> +        s5m8767,pmic-buck-dvs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>,
>>>> +                         <&gpb 6 GPIO_ACTIVE_HIGH>,
>>>> +                         <&gpb 7 GPIO_ACTIVE_HIGH>;
>>>> +
>>>> +        s5m8767,pmic-buck-ds-gpios = <&gpm3 5 GPIO_ACTIVE_HIGH>,
>>>> +                        <&gpm3 6 GPIO_ACTIVE_HIGH>,
>>>> +                        <&gpm3 7 GPIO_ACTIVE_HIGH>;
>>>> +
>>>> +        /* VDD_ARM */
>>>> +        s5m8767,pmic-buck2-dvs-voltage = <1356250>, <1300000>,
>>>> +                         <1243750>, <1118750>,
>>>> +                         <1068750>, <1012500>,
>>>> +                         <956250>, <900000>;
>>>> +        /* VDD_INT */
>>>> +        s5m8767,pmic-buck3-dvs-voltage = <1000000>, <1000000>,
>>>> +                         <925000>, <925000>,
>>>> +                         <887500>, <887500>,
>>>> +                         <850000>, <850000>;
>>>> +        /* VDD_G3D */
>>>> +        s5m8767,pmic-buck4-dvs-voltage = <1081250>, <1081250>,
>>>> +                         <1025000>, <950000>,
>>>> +                         <918750>, <900000>,
>>>> +                         <875000>, <831250>;
>>>> +
>>>> +        regulators {
>>>> +            ldo1_reg: LDO1 {
>>>> +                regulator-name = "VDD_ALIVE";
>>>> +                regulator-min-microvolt = <1100000>;
>>>> +                regulator-max-microvolt = <1100000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            /* SCP uses 1.5v, POP uses 1.2v */
>>>> +            ldo2_reg: LDO2 {
>>>> +                regulator-name = "VDDQ_M12";
>>>> +                regulator-min-microvolt = <1500000>;
>>>> +                regulator-max-microvolt = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo3_reg: LDO3 {
>>>> +                regulator-name = "VDDIOAP_18";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo4_reg: LDO4 {
>>>> +                regulator-name = "VDDQ_PRE";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo6_reg: LDO6 {
>>>> +                regulator-name = "VDD10_MPLL";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo7_reg: LDO7 {
>>>> +                regulator-name = "VDD10_XPLL";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo8_reg: LDO8 {
>>>> +                regulator-name = "VDD10_MIPI";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo9_reg: LDO9 {
>>>> +                regulator-name = "VDD33_LCD";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo10_reg: LDO10 {
>>>> +                regulator-name = "VDD18_MIPI";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo11_reg: LDO11 {
>>>> +                regulator-name = "VDD18_ABB1";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo12_reg: LDO12 {
>>>> +                regulator-name = "VDD33_UOTG";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo13_reg: LDO13 {
>>>> +                regulator-name = "VDDIOPERI_18";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo14_reg: LDO14 {
>>>> +                regulator-name = "VDD18_ABB02";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo15_reg: LDO15 {
>>>> +                regulator-name = "VDD10_USH";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo16_reg: LDO16 {
>>>> +                regulator-name = "VDD18_HSIC";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo17_reg: LDO17 {
>>>> +                regulator-name = "VDDIOAP_MMC012_28";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            /* Used by HSIC */
>>>> +            ldo18_reg: LDO18 {
>>>> +                regulator-name = "VDDIOPERI_28";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo20_reg: LDO20 {
>>>> +                regulator-name = "VDD28_CAM";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo21_reg: LDO21 {
>>>> +                regulator-name = "VDD28_AF";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo22_reg: LDO22 {
>>>> +                regulator-name = "VDDA28_2M";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo23_reg: LDO23 {
>>>> +                regulator-name = "VDD28_TF";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo24_reg: LDO24 {
>>>> +                regulator-name = "VDD33_A31";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo25_reg: LDO25 {
>>>> +                regulator-name = "VDD18_CAM";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo26_reg: LDO26 {
>>>> +                regulator-name = "VDD18_A31";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo27_reg: LDO27 {
>>>> +                regulator-name = "GPS_1V8";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo28_reg: LDO28 {
>>>> +                regulator-name = "DVDD12";
>>>> +                regulator-min-microvolt = <1200000>;
>>>> +                regulator-max-microvolt = <1200000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck1_reg: BUCK1 {
>>>> +                regulator-name = "vdd_mif";
>>>> +                regulator-min-microvolt = <850000>;
>>>> +                regulator-max-microvolt    = <1100000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck2_reg: BUCK2 {
>>>> +                regulator-name = "vdd_arm";
>>>> +                regulator-min-microvolt = <850000>;
>>>> +                regulator-max-microvolt    = <1456250>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck3_reg: BUCK3 {
>>>> +                regulator-name = "vdd_int";
>>>> +                regulator-min-microvolt = <875000>;
>>>> +                regulator-max-microvolt    = <1200000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck4_reg: BUCK4 {
>>>> +                regulator-name = "vdd_g3d";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck5_reg: BUCK5 {
>>>> +                regulator-name = "vdd_m12";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck6_reg: BUCK6 {
>>>> +                regulator-name = "vdd12_5m";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck7_reg: BUCK7 {
>>>> +                regulator-name = "pvdd_buck7";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <2000000>;
>>>> +                regulator-boot-on;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck8_reg: BUCK8 {
>>>> +                regulator-name = "pvdd_buck8";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-boot-on;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck9_reg: BUCK9 {
>>>> +                regulator-name = "vddf28_emmc";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <3000000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +        };
>>>> +    };
>>>> +};
>>>> +
>>>> +&pinctrl_1 {
>>>> +    hsic_reset: hsic-reset {
>>>> +        samsung,pins = "gpm2-4";
>>>> +        samsung,pin-function = <1>;
>>>> +        samsung,pin-pud = <0>;
>>>> +        samsung,pin-drv = <3>;
>>>> +    };
>>>> +};
>>>> +
>>>> +&mfc {
>>>> +    samsung,mfc-r = <0x43000000 0x800000>;
>>>> +    samsung,mfc-l = <0x51000000 0x800000>;
>>>> +    status = "okay";
>>>> +};
>>> Since v4.8-rc1 MFC driver has been converted to generic reserved memory bindings,
>>> so samsung,mfc-* properties are obsoleted and no longer used. If you want to use
>>> MFC driver with reserved memory, please just add following line to your dts:
>>> #include "exynos-mfc-reserved-memory.dtsi"
>>>
>>> Please refer to dts of other boards for more examples.
>> I see, I would also enabled the bus_mfc and mfc entry.
>> I notice the new introduce Exynos bus. I need some time to add support it. I will send a new version later time(maybe you have to wait this weekend, sorry about that).
> What is meaning of "new introduce Exynos bus"?
Generic Exynos Bus frequency device
> Could you explain it to me?
It seems not very hard, I  have sent new dts. But I am not sure I 
understand it. For example I don't that C2C, PERIR and FSYS used for.
>
> [snip]
>

WARNING: multiple messages have this Message-ID (diff)
From: ayaka@soulik.info (ayaka)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] ARM: dts: Add TOPEET itop core board SCP package version
Date: Mon, 22 Aug 2016 22:49:30 +0800	[thread overview]
Message-ID: <d20d3fa1-9bfb-18df-b030-8a72efdf5084@soulik.info> (raw)
In-Reply-To: <CAGTfZH07v_9bxKKx4gwLSb6+vLpZ+esW4D5sT4=RiHXa3SV-Vg@mail.gmail.com>



On 08/22/2016 10:45 PM, Chanwoo Choi wrote:
> Hi,
>
> 2016-08-22 17:28 GMT+09:00 Ayaka <ayaka@soulik.info>:
>> Thank you
>> ??? iPad ??
>>
>>> Marek Szyprowski <m.szyprowski@samsung.com> ? 2016?8?22? ??2:50 ???
>>>
>>> Dear Randy,
>>>
>>>
>>>> On 2016-08-21 22:04, Randy Li wrote:
>>>> The TOPEET itop is a samsung exnynos 4412 core board, which have
>>>> two package versions. This patch add the support for SCP version.
>>>>
>>>> Currently supported are USB3503A HSIC, USB OTG, eMMC, RTC and PMIC.
>>>> The future features are in the based board. Also MFC and watchdog
>>>> have been enabled.
>>>>
>>>> Signed-off-by: Randy Li <ayaka@soulik.info>
>>>> ---
>>>>   arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi | 434 ++++++++++++++++++++++++
>>>>   1 file changed, 434 insertions(+)
>>>>   create mode 100644 arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>>
>>>> diff --git a/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>> new file mode 100644
>>>> index 0000000..0860ee6
>>>> --- /dev/null
>>>> +++ b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi
>>>> @@ -0,0 +1,434 @@
>>>> +/*
>>>> + * 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 SCP package 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.
>>>> +*/
>>>> +
>>>> +#include "exynos4412.dtsi"
>>>> +#include <dt-bindings/gpio/gpio.h>
>>>> +#include <dt-bindings/input/input.h>
>>>> +
>>>> +/ {
>>>> +    memory {
>>>> +        reg = <0x40000000 0x40000000>;
>>>> +    };
>>>> +
>>>> +    firmware at 0203F000 {
>>>> +        compatible = "samsung,secure-firmware";
>>>> +        reg = <0x0203F000 0x1000>;
>>>> +    };
>>>> +
>>>> +    display-timings {
>>>> +        native-mode = <&timing0>;
>>>> +        timing0: timing {
>>>> +            clock-frequency = <47500000>;
>>>> +            hactive = <1024>;
>>>> +            vactive = <600>;
>>>> +            hfront-porch = <64>;
>>>> +            hback-porch = <16>;
>>>> +            hsync-len = <48>;
>>>> +            vback-porch = <64>;
>>>> +            vfront-porch = <16>;
>>>> +            vsync-len = <3>;
>>>> +        };
>>>> +    };
>>>> +
>>>> +    fixed-rate-clocks {
>>>> +        xxti {
>>>> +            compatible = "samsung,clock-xxti";
>>>> +            clock-frequency = <0>;
>>>> +        };
>>>> +
>>>> +        xusbxti {
>>>> +            compatible = "samsung,clock-xusbxti";
>>>> +            clock-frequency = <24000000>;
>>>> +        };
>>>> +    };
>>>> +
>>>> +    usb-hub {
>>>> +        compatible = "smsc,usb3503a";
>>>> +        reset-gpios = <&gpm2 4 GPIO_ACTIVE_LOW>;
>>>> +        connect-gpios = <&gpm3 3 GPIO_ACTIVE_HIGH>;
>>>> +        intn-gpios = <&gpx2 3 GPIO_ACTIVE_HIGH>;
>>>> +        pinctrl-names = "default";
>>>> +        pinctrl-0 = <&hsic_reset>;
>>>> +    };
>>>> +};
>>>> +
>>>> +&cpu0 {
>>>> +    cpu0-supply = <&buck2_reg>;
>>>> +};
>>>> +
>>>> +&i2c_1 {
>>>> +    #address-cells = <1>;
>>>> +    #size-cells = <0>;
>>>> +    samsung,i2c-sda-delay = <100>;
>>>> +    samsung,i2c-max-bus-freq = <400000>;
>>>> +    pinctrl-0 = <&i2c1_bus>;
>>>> +    pinctrl-names = "default";
>>>> +    status = "okay";
>>>> +
>>>> +    s5m8767_pmic at 66 {
>>>> +        compatible = "samsung,s5m8767-pmic";
>>>> +        reg = <0x66>;
>>>> +
>>>> +        s5m8767,pmic-buck-default-dvs-idx = <3>;
>>>> +
>>>> +        s5m8767,pmic-buck-dvs-gpios = <&gpb 5 GPIO_ACTIVE_HIGH>,
>>>> +                         <&gpb 6 GPIO_ACTIVE_HIGH>,
>>>> +                         <&gpb 7 GPIO_ACTIVE_HIGH>;
>>>> +
>>>> +        s5m8767,pmic-buck-ds-gpios = <&gpm3 5 GPIO_ACTIVE_HIGH>,
>>>> +                        <&gpm3 6 GPIO_ACTIVE_HIGH>,
>>>> +                        <&gpm3 7 GPIO_ACTIVE_HIGH>;
>>>> +
>>>> +        /* VDD_ARM */
>>>> +        s5m8767,pmic-buck2-dvs-voltage = <1356250>, <1300000>,
>>>> +                         <1243750>, <1118750>,
>>>> +                         <1068750>, <1012500>,
>>>> +                         <956250>, <900000>;
>>>> +        /* VDD_INT */
>>>> +        s5m8767,pmic-buck3-dvs-voltage = <1000000>, <1000000>,
>>>> +                         <925000>, <925000>,
>>>> +                         <887500>, <887500>,
>>>> +                         <850000>, <850000>;
>>>> +        /* VDD_G3D */
>>>> +        s5m8767,pmic-buck4-dvs-voltage = <1081250>, <1081250>,
>>>> +                         <1025000>, <950000>,
>>>> +                         <918750>, <900000>,
>>>> +                         <875000>, <831250>;
>>>> +
>>>> +        regulators {
>>>> +            ldo1_reg: LDO1 {
>>>> +                regulator-name = "VDD_ALIVE";
>>>> +                regulator-min-microvolt = <1100000>;
>>>> +                regulator-max-microvolt = <1100000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            /* SCP uses 1.5v, POP uses 1.2v */
>>>> +            ldo2_reg: LDO2 {
>>>> +                regulator-name = "VDDQ_M12";
>>>> +                regulator-min-microvolt = <1500000>;
>>>> +                regulator-max-microvolt = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo3_reg: LDO3 {
>>>> +                regulator-name = "VDDIOAP_18";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo4_reg: LDO4 {
>>>> +                regulator-name = "VDDQ_PRE";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo6_reg: LDO6 {
>>>> +                regulator-name = "VDD10_MPLL";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo7_reg: LDO7 {
>>>> +                regulator-name = "VDD10_XPLL";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo8_reg: LDO8 {
>>>> +                regulator-name = "VDD10_MIPI";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo9_reg: LDO9 {
>>>> +                regulator-name = "VDD33_LCD";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo10_reg: LDO10 {
>>>> +                regulator-name = "VDD18_MIPI";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo11_reg: LDO11 {
>>>> +                regulator-name = "VDD18_ABB1";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo12_reg: LDO12 {
>>>> +                regulator-name = "VDD33_UOTG";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo13_reg: LDO13 {
>>>> +                regulator-name = "VDDIOPERI_18";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo14_reg: LDO14 {
>>>> +                regulator-name = "VDD18_ABB02";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo15_reg: LDO15 {
>>>> +                regulator-name = "VDD10_USH";
>>>> +                regulator-min-microvolt = <1000000>;
>>>> +                regulator-max-microvolt = <1000000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo16_reg: LDO16 {
>>>> +                regulator-name = "VDD18_HSIC";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo17_reg: LDO17 {
>>>> +                regulator-name = "VDDIOAP_MMC012_28";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            /* Used by HSIC */
>>>> +            ldo18_reg: LDO18 {
>>>> +                regulator-name = "VDDIOPERI_28";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo20_reg: LDO20 {
>>>> +                regulator-name = "VDD28_CAM";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo21_reg: LDO21 {
>>>> +                regulator-name = "VDD28_AF";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo22_reg: LDO22 {
>>>> +                regulator-name = "VDDA28_2M";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo23_reg: LDO23 {
>>>> +                regulator-name = "VDD28_TF";
>>>> +                regulator-min-microvolt = <2800000>;
>>>> +                regulator-max-microvolt = <2800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo24_reg: LDO24 {
>>>> +                regulator-name = "VDD33_A31";
>>>> +                regulator-min-microvolt = <3300000>;
>>>> +                regulator-max-microvolt = <3300000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo25_reg: LDO25 {
>>>> +                regulator-name = "VDD18_CAM";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo26_reg: LDO26 {
>>>> +                regulator-name = "VDD18_A31";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo27_reg: LDO27 {
>>>> +                regulator-name = "GPS_1V8";
>>>> +                regulator-min-microvolt = <1800000>;
>>>> +                regulator-max-microvolt = <1800000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            ldo28_reg: LDO28 {
>>>> +                regulator-name = "DVDD12";
>>>> +                regulator-min-microvolt = <1200000>;
>>>> +                regulator-max-microvolt = <1200000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck1_reg: BUCK1 {
>>>> +                regulator-name = "vdd_mif";
>>>> +                regulator-min-microvolt = <850000>;
>>>> +                regulator-max-microvolt    = <1100000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck2_reg: BUCK2 {
>>>> +                regulator-name = "vdd_arm";
>>>> +                regulator-min-microvolt = <850000>;
>>>> +                regulator-max-microvolt    = <1456250>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck3_reg: BUCK3 {
>>>> +                regulator-name = "vdd_int";
>>>> +                regulator-min-microvolt = <875000>;
>>>> +                regulator-max-microvolt    = <1200000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck4_reg: BUCK4 {
>>>> +                regulator-name = "vdd_g3d";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck5_reg: BUCK5 {
>>>> +                regulator-name = "vdd_m12";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck6_reg: BUCK6 {
>>>> +                regulator-name = "vdd12_5m";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-always-on;
>>>> +                regulator-boot-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck7_reg: BUCK7 {
>>>> +                regulator-name = "pvdd_buck7";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <2000000>;
>>>> +                regulator-boot-on;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck8_reg: BUCK8 {
>>>> +                regulator-name = "pvdd_buck8";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <1500000>;
>>>> +                regulator-boot-on;
>>>> +                regulator-always-on;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +
>>>> +            buck9_reg: BUCK9 {
>>>> +                regulator-name = "vddf28_emmc";
>>>> +                regulator-min-microvolt = <750000>;
>>>> +                regulator-max-microvolt    = <3000000>;
>>>> +                op_mode = <1>; /* Normal Mode */
>>>> +            };
>>>> +        };
>>>> +    };
>>>> +};
>>>> +
>>>> +&pinctrl_1 {
>>>> +    hsic_reset: hsic-reset {
>>>> +        samsung,pins = "gpm2-4";
>>>> +        samsung,pin-function = <1>;
>>>> +        samsung,pin-pud = <0>;
>>>> +        samsung,pin-drv = <3>;
>>>> +    };
>>>> +};
>>>> +
>>>> +&mfc {
>>>> +    samsung,mfc-r = <0x43000000 0x800000>;
>>>> +    samsung,mfc-l = <0x51000000 0x800000>;
>>>> +    status = "okay";
>>>> +};
>>> Since v4.8-rc1 MFC driver has been converted to generic reserved memory bindings,
>>> so samsung,mfc-* properties are obsoleted and no longer used. If you want to use
>>> MFC driver with reserved memory, please just add following line to your dts:
>>> #include "exynos-mfc-reserved-memory.dtsi"
>>>
>>> Please refer to dts of other boards for more examples.
>> I see, I would also enabled the bus_mfc and mfc entry.
>> I notice the new introduce Exynos bus. I need some time to add support it. I will send a new version later time(maybe you have to wait this weekend, sorry about that).
> What is meaning of "new introduce Exynos bus"?
Generic Exynos Bus frequency device
> Could you explain it to me?
It seems not very hard, I  have sent new dts. But I am not sure I 
understand it. For example I don't that C2C, PERIR and FSYS used for.
>
> [snip]
>

  reply	other threads:[~2016-08-22 14:49 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-21 20:04 [PATCH 0/2] Add a new board for exynos 4412 Randy Li
2016-08-21 20:04 ` Randy Li
2016-08-21 20:04 ` Randy Li
2016-08-21 20:04 ` [PATCH 1/2] ARM: dts: Add TOPEET itop core board SCP package version Randy Li
2016-08-21 20:04   ` Randy Li
2016-08-22  6:50   ` Marek Szyprowski
2016-08-22  6:50     ` Marek Szyprowski
2016-08-22  8:28     ` Ayaka
2016-08-22  8:28       ` Ayaka
2016-08-22 14:45       ` Chanwoo Choi
2016-08-22 14:45         ` Chanwoo Choi
2016-08-22 14:49         ` ayaka [this message]
2016-08-22 14:49           ` ayaka
2016-08-22 14:18     ` [PATCH 0/2 v2] Add a new board TOPEET iTOP for exynos 4412 Randy Li
2016-08-22 14:18       ` Randy Li
2016-08-22 14:18       ` Randy Li
2016-08-22 14:18       ` [PATCH 1/2] ARM: dts: Add TOPEET itop core board SCP package version Randy Li
2016-08-22 14:18         ` Randy Li
2016-08-22 14:18       ` [PATCH 2/2] ARM: dts: add TOPEET itop elite based board Randy Li
2016-08-22 14:18         ` Randy Li
2016-08-22 18:59         ` kbuild test robot
2016-08-22 18:59           ` kbuild test robot
2016-08-22 18:59           ` kbuild test robot
2016-08-23 18:14         ` Rob Herring
2016-08-23 18:14           ` Rob Herring
2016-08-23 18:36           ` ayaka
2016-08-23 18:36             ` ayaka
2016-08-23 18:36             ` ayaka
2016-08-23 22:38             ` Rob Herring
2016-08-23 22:38               ` Rob Herring
2016-08-23 22:38               ` Rob Herring
2016-08-24  8:29               ` Ayaka
2016-08-24  8:29                 ` Ayaka
2016-08-24  8:29                 ` Ayaka
2016-08-28 11:21               ` [PATCH 0/4 v3] Add a new board TOPEET iTOP for exynos 4412 Randy Li
2016-08-28 11:21                 ` Randy Li
2016-08-28 11:21                 ` Randy Li
2016-08-28 11:21                 ` [PATCH 1/4] ARM: dts: Add TOPEET itop core board SCP package version Randy Li
2016-08-28 11:21                   ` Randy Li
2016-08-28 21:13                   ` Rask Ingemann Lambertsen
2016-08-28 21:13                     ` Rask Ingemann Lambertsen
2016-08-28 21:13                     ` Rask Ingemann Lambertsen
2016-08-30  7:16                   ` Krzysztof Kozlowski
2016-08-30  7:16                     ` Krzysztof Kozlowski
2016-08-31 12:58                     ` [RESEND PATCH 1/3] " Randy Li
2016-08-31 12:58                       ` Randy Li
2016-08-31 18:42                       ` Krzysztof Kozlowski
2016-08-31 18:42                         ` Krzysztof Kozlowski
2016-08-31 18:42                         ` Krzysztof Kozlowski
2016-08-31 19:49                         ` Ayaka
2016-08-31 19:49                           ` Ayaka
2016-08-31 19:49                           ` Ayaka
2016-09-01 13:03                       ` Bartlomiej Zolnierkiewicz
2016-09-01 13:03                         ` Bartlomiej Zolnierkiewicz
2016-09-01 13:03                         ` Bartlomiej Zolnierkiewicz
2016-09-01 16:12                         ` Krzysztof Kozlowski
2016-09-01 16:12                           ` Krzysztof Kozlowski
2016-09-01 16:12                           ` Krzysztof Kozlowski
2016-08-28 11:21                 ` [PATCH 2/4] ARM: dts: add TOPEET itop elite based board Randy Li
2016-08-28 11:21                   ` Randy Li
2016-08-30  7:32                   ` Krzysztof Kozlowski
2016-08-30  7:32                     ` Krzysztof Kozlowski
2016-08-31 12:59                     ` [RESEND PATCH 2/3] " Randy Li
2016-08-31 12:59                       ` Randy Li
2016-09-01 13:07                       ` Bartlomiej Zolnierkiewicz
2016-09-01 13:07                         ` Bartlomiej Zolnierkiewicz
2016-08-28 11:21                 ` [PATCH 3/4] ARM: dts: add fimc support in exynos4412 TOPEET iTop Elite board Randy Li
2016-08-28 11:21                   ` Randy Li
2016-08-30  7:33                   ` Krzysztof Kozlowski
2016-08-30  7:33                     ` Krzysztof Kozlowski
2016-08-31 13:00                     ` [PATCH 3/3 v3] devicetree: bindings: Add vendor prefix for Topeet Randy Li
2016-08-31 13:00                       ` Randy Li
2016-08-31 13:00                       ` Randy Li
2016-08-28 11:21                 ` [PATCH 4/4] ARM: dts: samsung: add analog audio codec on TOPEET iTop 4412 Elite Randy Li
2016-08-28 11:21                   ` Randy Li
2016-08-28 11:21                   ` Randy Li
2016-08-30  7:35                   ` Krzysztof Kozlowski
2016-08-30  7:35                     ` Krzysztof Kozlowski
2016-08-30  7:04                 ` [PATCH 0/4 v3] Add a new board TOPEET iTOP for exynos 4412 Krzysztof Kozlowski
2016-08-30  7:04                   ` Krzysztof Kozlowski
2016-08-30  7:04                   ` Krzysztof Kozlowski
2016-08-21 20:04 ` [PATCH 2/2] ARM: dts: add TOPEET itop elite based board Randy Li
2016-08-21 20:04   ` Randy Li
2016-08-21 20:04   ` Randy Li
2016-08-21 20:12   ` [PATCH 2/2 v2] " Randy Li
2016-08-21 20:12     ` Randy Li

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d20d3fa1-9bfb-18df-b030-8a72efdf5084@soulik.info \
    --to=ayaka@soulik.info \
    --cc=chanwoo@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=kgene@kernel.org \
    --cc=krzk@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=m.szyprowski@samsung.com \
    --cc=mark.rutland@arm.com \
    --cc=robh+dt@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.