Re: [RFC PATCH 1/3] clk: add support for temporary parent clock migration
Quoting Chander Kashyap (2013-08-06 01:34:23) Some platforms use to migrate temporarily to another parent during cpu frequency scaling, e.g. Exynos and Tegra. Once the frequency is changed the latch on to original parent. The generic cpufreq-cpu0 driver use CCF to scale cpu frequency. This patch is an attempt to address the above mentioned requirement. The generic cpufreq-cpu0 driver does not use CCF per se. It uses the long-standing clock api written by Russell. Coincidentally I think that all the platforms using cpufreq-cpu0 have converted to the common struct clk. This is achieved as follows: Add a clk flag CLK_SET_RATE_ALTERNATE for clocks which need to migrate to another parent during set_rate operation on them. We discussed the naming a bit already. I think I like CLK_SET_RATE_TEMP_PARENT more. It's really long but it gets the idea across easily. Add alternate_parent_name and alternate_parent fields to clk structure i.e the name of alternate_parent_clock and reference to alternate_parent_clock. Similarly temp_parent_name and temp_parent here. Hence in clk_set_rate API check for the CLK_SET_RATE_ALTERNATE flag, then latch on to alternate parent clock temporarily. Once the requested rate is set on the clk, re-parent back to original parent clock. This property is applicable only for mux-clocks, where it is guaranteed that set_rate will actually execute on parent clock. Can you clarify what you mean by this? Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- drivers/clk/clk-mux.c| 13 ++-- drivers/clk/clk.c| 45 +++--- include/linux/clk-private.h | 17 +--- include/linux/clk-provider.h | 10 ++ 4 files changed, 65 insertions(+), 20 deletions(-) diff --git a/drivers/clk/clk-mux.c b/drivers/clk/clk-mux.c index 61c..47cb77f 100644 --- a/drivers/clk/clk-mux.c +++ b/drivers/clk/clk-mux.c @@ -109,8 +109,8 @@ EXPORT_SYMBOL_GPL(clk_mux_ops); struct clk *clk_register_mux_table(struct device *dev, const char *name, const char **parent_names, u8 num_parents, unsigned long flags, - void __iomem *reg, u8 shift, u32 mask, - u8 clk_mux_flags, u32 *table, spinlock_t *lock) + const char *alternate_parent_name, void __iomem *reg, u8 shift, + u32 mask, u8 clk_mux_flags, u32 *table, spinlock_t *lock) { struct clk_mux *mux; struct clk *clk; @@ -137,6 +137,7 @@ struct clk *clk_register_mux_table(struct device *dev, const char *name, init.flags = flags | CLK_IS_BASIC; init.parent_names = parent_names; init.num_parents = num_parents; + init.alternate_parent_name = alternate_parent_name; /* struct clk_mux assignments */ mux-reg = reg; @@ -157,12 +158,12 @@ struct clk *clk_register_mux_table(struct device *dev, const char *name, struct clk *clk_register_mux(struct device *dev, const char *name, const char **parent_names, u8 num_parents, unsigned long flags, - void __iomem *reg, u8 shift, u8 width, - u8 clk_mux_flags, spinlock_t *lock) + const char *alternate_parent_name, void __iomem *reg, u8 shift, + u8 width, u8 clk_mux_flags, spinlock_t *lock) { u32 mask = BIT(width) - 1; return clk_register_mux_table(dev, name, parent_names, num_parents, - flags, reg, shift, mask, clk_mux_flags, - NULL, lock); + flags, alternate_parent_name, reg, shift, + mask, clk_mux_flags, NULL, lock); } diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 54a191c..0f18a45 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -1209,8 +1209,8 @@ static void clk_change_rate(struct clk *clk) */ int clk_set_rate(struct clk *clk, unsigned long rate) { - struct clk *top, *fail_clk; - int ret = 0; + struct clk *top, *fail_clk, *parent = NULL; + int ret = 0, index; /* prevent racing with updates to the clock topology */ clk_prepare_lock(); @@ -1231,6 +1231,36 @@ int clk_set_rate(struct clk *clk, unsigned long rate) goto out; } + /* Latch on to alternate parent temporarily if needed */ + if ((clk-flags CLK_SET_RATE_ALTERNATE) +clk-alternate_parent_name) { + /* Save current parent before latching on to alternate parent */ + parent = clk-parent; + + if (!clk-alternate_parent) { + for (index = 0; index clk-num_parents; index++) { + if (!strcmp(clk-parent_names[index], +
Re: [RFC PATCH 2/3] clk: update users of clk_register_mux and DEFINE_CLK_MUX
Quoting Chander Kashyap (2013-08-06 01:34:24) As with the patch clk-add-support-for-temporary-parent-clock-migration.patch a new field alternate_parent_name, is added to clk structure. This field can be passed using clk_register_mux API and DEFINE_CLK_MUX macro. Nitpick: it's easier to search for the patch you mentioned if you quote the actual patch $SUBJECT instead of the name of the patch file. In this case, clk: add support for temporary parent clock migration. This invasive change is not necessary if the temporary parent stuff is not added to the clock core and is instead left to the .set_parent callbacks of custom clock providers. Regards, Mike -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V2] ARM: dts: Add dwmmc DT nodes for exynos5420 SOC
On Wed, Aug 21, 2013 at 4:00 PM, Tomasz Figa t.f...@samsung.com wrote: Hi Yuvaraj, On Wednesday 21 of August 2013 12:13:53 Yuvaraj Kumar C D wrote: This patch adds the device tree node entries for exynos5420 SOC. Exynos5420 has a different version of DWMMC controller,so a new compatible string is used to distinguish it from the prior SOC's. What are the difference between both versions? Is there a patch adding the new compatible to the driver somewhere? Exynos5250 has DWMMC controller of IP version 2.41a Exynos5420 has DWMMC controller of IP version 2.50a In addition Exynos5420 has Security Management Unit for eMMC. changes since V1: 1.disable node by status = disabled in SOC file 2.enable node by status = okay in board specific file Ahh, so you fixed this already in this version, thanks. Haven't noticed this patch at first and commented on previous one. Sorry for the noise. Signed-off-by: Yuvaraj Kumar C D yuvaraj...@samsung.com --- .../devicetree/bindings/mmc/exynos-dw-mshc.txt |2 ++ arch/arm/boot/dts/exynos5420-smdk5420.dts | 38 arch/arm/boot/dts/exynos5420.dtsi | 36 +++ 3 files changed, 76 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt index 6d1c098..84cd56f 100644 --- a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt +++ b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt @@ -16,6 +16,8 @@ Required Properties: specific extensions. - samsung,exynos5250-dw-mshc: for controllers with Samsung Exynos5250 specific extensions. + - samsung,exynos5420-dw-mshc: for controllers with Samsung Exynos5420 + specific extensions. * samsung,dw-mshc-ciu-div: Specifies the divider value for the card interface unit (ciu) clock. This property is applicable only for Exynos5 SoC's and diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts index bafba25..6e65278 100644 --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts @@ -31,6 +31,44 @@ }; }; + dwmmc0@1220 { + status = okay; + num-slots = 1; You don't have to specify this property if there is only one slot. Also are you sure that this is a board specific property? Yes,If num-slots property is not defined dw_mmc driver assumes 1 slot is available. I think yes,its a board specific property as number of card slots is board dependent. + broken-cd; + bypass-smu; This property doesn't seem to be documented nor used anywhere. Sorry. I missed to add in binding document.Will add in next version. + supports-highspeed; Is it a board specific property? + fifo-depth = 0x80; Ditto. Ideally this can be move to SOC specific dts.But I am just following ,already merged smdk5250 board dts convensions. + card-detect-delay = 200; + samsung,dw-mshc-ciu-div = 3; + samsung,dw-mshc-sdr-timing = 0 4; + samsung,dw-mshc-ddr-timing = 0 2; Are the above three properties really board-specific? Same for remaining nodes. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 0/2] Add GPLL, APLL, KPLL, EPLL and VPLL freq table for exynos5420 and exynos5250
Hi Mike, On Wed, Aug 14, 2013 at 9:07 PM, Tomasz Figa t.f...@samsung.com wrote: Hi Vikas, On Wednesday 14 of August 2013 10:36:53 Vikas Sajjan wrote: Hi Mike, On Mon, Aug 12, 2013 at 3:32 PM, Vikas Sajjan vikas.saj...@linaro.org wrote: Adds GPLL, APLL, KPLL, EPLL and VPLL freq table for exynos5420 and exynos5250. is rebased on Mike's https://git.linaro.org/gitweb?p=people/mturquette/linux.git;a=shortlog; h=refs/heads/clk-next Vikas Sajjan (2): clk: samsung: Add GPLL freq table for exynos5250 SoC clk: samsung: Add APLL, KPLL, EPLL and VPLL freq table for exynos5420 SoC drivers/clk/samsung/clk-exynos5250.c | 19 +++- drivers/clk/samsung/clk-exynos5420.c | 81 ++ 2 files changed, 99 insertions(+), 1 deletion(-) Can you apply this patchset. Please give few more days for the patch to be reviewed by people. A reasonable period of time which should pass after submitting a patch to ping the maintainers is around a week. This allows people to find some time to read your patches and share their opinions (and/or give their reviewed- by/acked-by tags). any comments on this. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC PATCH 1/3] clk: add support for temporary parent clock migration
On 22 August 2013 11:46, Mike Turquette mturque...@linaro.org wrote: Quoting Chander Kashyap (2013-08-06 01:34:23) Some platforms use to migrate temporarily to another parent during cpu frequency scaling, e.g. Exynos and Tegra. Once the frequency is changed the latch on to original parent. The generic cpufreq-cpu0 driver use CCF to scale cpu frequency. This patch is an attempt to address the above mentioned requirement. The generic cpufreq-cpu0 driver does not use CCF per se. It uses the long-standing clock api written by Russell. Coincidentally I think that all the platforms using cpufreq-cpu0 have converted to the common struct clk. This is achieved as follows: Add a clk flag CLK_SET_RATE_ALTERNATE for clocks which need to migrate to another parent during set_rate operation on them. We discussed the naming a bit already. I think I like CLK_SET_RATE_TEMP_PARENT more. It's really long but it gets the idea across easily. ok, TEMP, seems more crisp and clear. Add alternate_parent_name and alternate_parent fields to clk structure i.e the name of alternate_parent_clock and reference to alternate_parent_clock. Similarly temp_parent_name and temp_parent here. ok Hence in clk_set_rate API check for the CLK_SET_RATE_ALTERNATE flag, then latch on to alternate parent clock temporarily. Once the requested rate is set on the clk, re-parent back to original parent clock. This property is applicable only for mux-clocks, where it is guaranteed that set_rate will actually execute on parent clock. Can you clarify what you mean by this? sure, means to say only mux-out clk can have multiple parents. Signed-off-by: Chander Kashyap chander.kash...@linaro.org --- drivers/clk/clk-mux.c| 13 ++-- drivers/clk/clk.c| 45 +++--- include/linux/clk-private.h | 17 +--- include/linux/clk-provider.h | 10 ++ 4 files changed, 65 insertions(+), 20 deletions(-) diff --git a/drivers/clk/clk-mux.c b/drivers/clk/clk-mux.c index 61c..47cb77f 100644 --- a/drivers/clk/clk-mux.c +++ b/drivers/clk/clk-mux.c @@ -109,8 +109,8 @@ EXPORT_SYMBOL_GPL(clk_mux_ops); struct clk *clk_register_mux_table(struct device *dev, const char *name, const char **parent_names, u8 num_parents, unsigned long flags, - void __iomem *reg, u8 shift, u32 mask, - u8 clk_mux_flags, u32 *table, spinlock_t *lock) + const char *alternate_parent_name, void __iomem *reg, u8 shift, + u32 mask, u8 clk_mux_flags, u32 *table, spinlock_t *lock) { struct clk_mux *mux; struct clk *clk; @@ -137,6 +137,7 @@ struct clk *clk_register_mux_table(struct device *dev, const char *name, init.flags = flags | CLK_IS_BASIC; init.parent_names = parent_names; init.num_parents = num_parents; + init.alternate_parent_name = alternate_parent_name; /* struct clk_mux assignments */ mux-reg = reg; @@ -157,12 +158,12 @@ struct clk *clk_register_mux_table(struct device *dev, const char *name, struct clk *clk_register_mux(struct device *dev, const char *name, const char **parent_names, u8 num_parents, unsigned long flags, - void __iomem *reg, u8 shift, u8 width, - u8 clk_mux_flags, spinlock_t *lock) + const char *alternate_parent_name, void __iomem *reg, u8 shift, + u8 width, u8 clk_mux_flags, spinlock_t *lock) { u32 mask = BIT(width) - 1; return clk_register_mux_table(dev, name, parent_names, num_parents, - flags, reg, shift, mask, clk_mux_flags, - NULL, lock); + flags, alternate_parent_name, reg, shift, + mask, clk_mux_flags, NULL, lock); } diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 54a191c..0f18a45 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -1209,8 +1209,8 @@ static void clk_change_rate(struct clk *clk) */ int clk_set_rate(struct clk *clk, unsigned long rate) { - struct clk *top, *fail_clk; - int ret = 0; + struct clk *top, *fail_clk, *parent = NULL; + int ret = 0, index; /* prevent racing with updates to the clock topology */ clk_prepare_lock(); @@ -1231,6 +1231,36 @@ int clk_set_rate(struct clk *clk, unsigned long rate) goto out; } + /* Latch on to alternate parent temporarily if needed */ + if ((clk-flags CLK_SET_RATE_ALTERNATE) +clk-alternate_parent_name) { + /* Save current parent before latching on to alternate parent */ + parent = clk-parent; + + if (!clk-alternate_parent) { + for (index = 0;
Re: [RFC PATCH 2/3] clk: update users of clk_register_mux and DEFINE_CLK_MUX
On 22 August 2013 11:49, Mike Turquette mturque...@linaro.org wrote: Quoting Chander Kashyap (2013-08-06 01:34:24) As with the patch clk-add-support-for-temporary-parent-clock-migration.patch a new field alternate_parent_name, is added to clk structure. This field can be passed using clk_register_mux API and DEFINE_CLK_MUX macro. Nitpick: it's easier to search for the patch you mentioned if you quote the actual patch $SUBJECT instead of the name of the patch file. In this case, clk: add support for temporary parent clock migration. thanks for the suggestion. This invasive change is not necessary if the temporary parent stuff is not added to the clock core and is instead left to the .set_parent callbacks of custom clock providers. Yes if we decide not to add new flag. Regards, Mike -- with warm regards, Chander Kashyap -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 1/7] ARM: common: vic: Parse interrupt and resume masks from device tree
On Thursday 22 of August 2013 01:19:34 Linus Walleij wrote: On Wed, Aug 21, 2013 at 11:21 PM, Tomasz Figa tomasz.f...@gmail.com wrote: +++ b/Documentation/devicetree/bindings/arm/vic.txt @@ -18,6 +18,9 @@ Required properties: Optional properties: - interrupts : Interrupt source for parent controllers if the VIC is nested. +- interrupt-mask : Bit mask of valid interrupt sources (defaults to all valid) +- wakeup-mask : Bit mask of interrupt sources that can wake up the system + (defaults to all allowed) The interrupt-mask is called valid-mask on the FPGA IRQ controller See Documentation/devicetree/bindings/arm/versatile-fpga-irq.txt Example: reg = 0x1040 0x100; clear-mask = 0x; valid-mask = 0x0007; Please use the same name. Oh, I haven't noticed that. Thanks for the information. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 3/7] gpio: samsung: Skip initialization if device tree is present
On Thursday 22 of August 2013 01:21:25 Linus Walleij wrote: On Wed, Aug 21, 2013 at 11:21 PM, Tomasz Figa tomasz.f...@gmail.com wrote: Since this driver does not handle GPIO on device tree enabled platforms any more, it should be bypassed whenever device tree is available, to not conflict with the new pinctrl-samsung driver. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com This seems like something I should apply to the GPIO tree right now, shall I? Would be nice, but since this patch is a dependency for rest of this series and there are no other dependencies on GPIO tree, it might be easier to just let Kukjin take all the patches with required Acks. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH v7 3/7] gpio: samsung: Skip initialization if device tree is present
Linus Walleij wrote: On Wed, Aug 21, 2013 at 11:21 PM, Tomasz Figa tomasz.f...@gmail.com wrote: Since this driver does not handle GPIO on device tree enabled platforms any more, it should be bypassed whenever device tree is available, to not conflict with the new pinctrl-samsung driver. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com This seems like something I should apply to the GPIO tree right now, shall I? I think so. Feel free to add my ack on this. Acked-by: Kukjin Kim kgene@samsung.com Thanks, Kukjin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 3/7] gpio: samsung: Skip initialization if device tree is present
On Thu, Aug 22, 2013 at 10:06:46AM +0200, Tomasz Figa wrote: On Thursday 22 of August 2013 01:21:25 Linus Walleij wrote: This seems like something I should apply to the GPIO tree right now, shall I? Would be nice, but since this patch is a dependency for rest of this series and there are no other dependencies on GPIO tree, it might be easier to just let Kukjin take all the patches with required Acks. Though if the rest of the series might miss v3.12 (seems likely given the arm-soc deadlines have passed) then Linus could apply this for v3.12? signature.asc Description: Digital signature
RE: Broken device trees for exynos in linux-next
Kevin Hilman wrote: Kukjin Kim kg...@kernel.org writes: [...] If we could make LPAE enabled defconfig for all ARM platforms, I'm fine. I think your concern is creating SoC specific defconfig and I agree with you. But I'm not sure how we can support LPAE enabled defconfig for ARM platforms. Here's a simple way to keep a single base defconfig, and enable LPAE: $ echo CONFIG_ARM_LPAE=y /tmp/lpae.config $ ./scripts/kconfig/merge_config.sh arch/arm/config/exynos_defconfig /tmp/lpae.config Yeah, it can be used for test. But there are many differences between exynos_defconfig and exynos5440_defconfig...PCIe, GbE, HugeTLB and KVM...so I'm still wondering how to handle it without other defconfig. Olof, do you still having objection for exynos5440_defconfig? If so, OK I will revert exynos5440_defconfig for now so that I could pull out the 'defconfig' branch to arm-soc for upcoming merge window. Then, let's discuss again :) Thanks, Kukjin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH v7 3/7] gpio: samsung: Skip initialization if device tree is present
Tomasz Figa wrote: On Thursday 22 of August 2013 01:21:25 Linus Walleij wrote: On Wed, Aug 21, 2013 at 11:21 PM, Tomasz Figa tomasz.f...@gmail.com wrote: Since this driver does not handle GPIO on device tree enabled platforms any more, it should be bypassed whenever device tree is available, to not conflict with the new pinctrl-samsung driver. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com This seems like something I should apply to the GPIO tree right now, shall I? Would be nice, but since this patch is a dependency for rest of this series and there are no other dependencies on GPIO tree, it might be easier to just let Kukjin take all the patches with required Acks. Oh, I didn't see any dependencies...but if so, Linus do you agree with Tomasz' opinion? Please let me know so that I could take this with others into the samsung tree. And please kindly ignore my previous reply on this ;-) Thanks, Kukjin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] ARM: dts: exynos5420/5250: add ADC device tree node
Add ADC device tree node for exynos5420 and exynos5250 Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com Signed-off-by: Doug Anderson diand...@chromium.org --- arch/arm/boot/dts/exynos5250.dtsi | 11 +++ arch/arm/boot/dts/exynos5420.dtsi | 11 +++ 2 files changed, 22 insertions(+) diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 1eec646..518f8cd 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -641,4 +641,15 @@ clocks = clock 133, clock 339; clock-names = sclk_fimd, fimd; }; + + adc: adc@12D1 { + compatible = samsung,exynos-adc-v1; + reg = 0x12D1 0x100, 0x10040718 0x4; + interrupts = 0 106 0; + clocks = clock 303; + clock-names = adc; + #io-channel-cells = 1; + io-channel-ranges; + status = disabled; + }; }; diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 5353e32..0c5c055 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -218,4 +218,15 @@ clocks = clock 147, clock 421; clock-names = sclk_fimd, fimd; }; + + adc: adc@12D1 { + compatible = samsung,exynos-adc-v2; + reg = 0x12D1 0x100, 0x10040720 0x4; + interrupts = 0 106 0; + clocks = clock 270; + clock-names = adc; + #io-channel-cells = 1; + io-channel-ranges; + status = disabled; + }; }; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v5 1/3] ARM: dts: Fix the RTC DT node name for Exynos5250 SoC
Fixes the RTC DT node name for Exynos5250 SoC as per the DT node naming convention. Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5.dtsi|2 +- arch/arm/boot/dts/exynos5250.dtsi |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/exynos5.dtsi b/arch/arm/boot/dts/exynos5.dtsi index 6afa57d..074739d 100644 --- a/arch/arm/boot/dts/exynos5.dtsi +++ b/arch/arm/boot/dts/exynos5.dtsi @@ -95,7 +95,7 @@ interrupts = 0 54 0; }; - rtc { + rtc@101E { compatible = samsung,s3c6410-rtc; reg = 0x101E 0x100; interrupts = 0 43 0, 0 44 0; diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 1eec646..b278b00 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -180,7 +180,7 @@ clock-names = mfc; }; - rtc { + rtc@101E { clocks = clock 337; clock-names = rtc; }; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v5 0/3] Add RTC DT node to Exynos5420 SoC and Fix RTC DT node name for 5250 Soc
This patchset does the following 3 things: 1) Fixes the RTC DT node name for Exynos5250 SoC 2) Update the status property of RTC DT node for Exynos5250 SoC 3) Adds RTC DT node to Exynos5420 SoC changes since v4: - removed status property of RTC DT node from exynos5250 board dts files changes since v3: - split the 5250 related modifications into 2 separate patch as suggested by Tomasz Figa t.f...@samsung.com changes since v2: - split the 5250 related modifications into a separate patch. - placed the RTC node as per the alphabetical order in the DTS file as suggested by Kukjin Kim kg...@kernel.org. changes since v1: - made DT node status as okay in the dtsi file itself. Vikas Sajjan (3): ARM: dts: Fix the RTC DT node name for Exynos5250 SoC ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC ARM: dts: Add RTC DT node to Exynos5420 SoC arch/arm/boot/dts/exynos5.dtsi |2 +- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|3 ++- arch/arm/boot/dts/exynos5420.dtsi|6 ++ 5 files changed, 9 insertions(+), 10 deletions(-) -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v5 2/3] ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC
Moves the RTC DT node's status property from exynos5250 board (arndale snow) dts files to exynos5250.dtsi, since the bindings in exynos5250.dtsi depicts the RTC h/w completely. Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|1 + 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index 452d0b0..cee55fa 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts @@ -538,10 +538,6 @@ }; }; - rtc { - status = okay; - }; - usb_hub_bus { compatible = simple-bus; #address-cells = 1; diff --git a/arch/arm/boot/dts/exynos5250-snow.dts b/arch/arm/boot/dts/exynos5250-snow.dts index e79331d..fd711e2 100644 --- a/arch/arm/boot/dts/exynos5250-snow.dts +++ b/arch/arm/boot/dts/exynos5250-snow.dts @@ -171,10 +171,6 @@ }; }; - rtc { - status = okay; - }; - /* * On Snow we've got SIP WiFi and so can keep drive strengths low to * reduce EMI. diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index b278b00..b054c3c 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -183,6 +183,7 @@ rtc@101E { clocks = clock 337; clock-names = rtc; + status = okay; }; tmu@1006 { -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v5 3/3] ARM: dts: Add RTC DT node to Exynos5420 SoC
Adds RTC DT node to Exynos5420 SoC Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5420.dtsi |6 ++ 1 file changed, 6 insertions(+) diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 5353e32..3f2b9c4 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -180,6 +180,12 @@ interrupts = 0 47 0; }; + rtc@101E { + clocks = clock 317; + clock-names = rtc; + status = okay; + }; + serial@12C0 { clocks = clock 257, clock 128; clock-names = uart, clk_uart_baud0; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH V3] ARM: dts: Add dwmmc DT nodes for exynos5420 SOC
This patch adds the device tree node entries for exynos5420 SOC. Exynos5420 has a different version of DWMMC controller,so a new compatible string is used to distinguish it from the prior SOC's. changes since V2: 1.dropped num-slots property from node as its not required if number of card slots available is 1. 2.Move the below properties a.fifo-depth b.card-detect-delay c.samsung,dw-mshc-ciu-div d.samsung,dw-mshc-sdr-timing e.samsung,dw-mshc-ddr-timing from board dts to SOC dts,as these are not board specific properties. 3.Updated the binding document exynos-dw-mshc.txt. changes since V1: 1.disable node by status = disabled in SOC file 2.enable node by status = okay in board specific file Signed-off-by: Yuvaraj Kumar C D yuvaraj...@samsung.com --- .../devicetree/bindings/mmc/exynos-dw-mshc.txt |4 ++ arch/arm/boot/dts/exynos5420-smdk5420.dts | 26 ++ arch/arm/boot/dts/exynos5420.dtsi | 51 3 files changed, 81 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt index 6d1c098..25368e8 100644 --- a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt +++ b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt @@ -16,6 +16,8 @@ Required Properties: specific extensions. - samsung,exynos5250-dw-mshc: for controllers with Samsung Exynos5250 specific extensions. + - samsung,exynos5420-dw-mshc: for controllers with Samsung Exynos5420 + specific extensions. * samsung,dw-mshc-ciu-div: Specifies the divider value for the card interface unit (ciu) clock. This property is applicable only for Exynos5 SoC's and @@ -31,6 +33,8 @@ Required Properties: data rate mode operation. Refer notes below for the order of the cells and the valid values. +* bypass-smu: Bypass Security Management Unit of eMMC channel 0 and channel 1. + Notes for the sdr-timing and ddr-timing values: The order of the cells should be diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts index bafba25..bc604d4 100644 --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts @@ -31,6 +31,32 @@ }; }; + dwmmc0@1220 { + status = okay; + broken-cd; + bypass-smu; + supports-highspeed; + pinctrl-names = default; + pinctrl-0 = sd0_clk sd0_cmd sd0_bus4 sd0_bus8; + + slot@0 { + reg = 0; + bus-width = 8; + }; + }; + + dwmmc2@1222 { + status = okay; + supports-highspeed; + pinctrl-names = default; + pinctrl-0 = sd2_clk sd2_cmd sd2_cd sd2_bus4; + + slot@0 { + reg = 0; + bus-width = 4; + }; + }; + dp-controller@145B { pinctrl-names = default; pinctrl-0 = dp_hpd; diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 5353e32..1f08d1b 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -22,6 +22,9 @@ compatible = samsung,exynos5420; aliases { + mshc0 = dwmmc_0; + mshc1 = dwmmc_1; + mshc2 = dwmmc_2; pinctrl0 = pinctrl_0; pinctrl1 = pinctrl_1; pinctrl2 = pinctrl_2; @@ -84,6 +87,54 @@ clock-names = mfc; }; + dwmmc_0: dwmmc0@1220 { + compatible = samsung,exynos5420-dw-mshc; + interrupts = 0 75 0; + #address-cells = 1; + #size-cells = 0; + reg = 0x1220 0x2000; + clocks = clock 351, clock 132; + clock-names = biu, ciu; + fifo-depth = 0x80; + card-detect-delay = 200; + samsung,dw-mshc-ciu-div = 3; + samsung,dw-mshc-sdr-timing = 0 4; + samsung,dw-mshc-ddr-timing = 0 2; + status = disabled; + }; + + dwmmc_1: dwmmc1@1221 { + compatible = samsung,exynos5420-dw-mshc; + interrupts = 0 76 0; + #address-cells = 1; + #size-cells = 0; + reg = 0x1221 0x2000; + clocks = clock 352, clock 133; + clock-names = biu, ciu; + fifo-depth = 0x80; + card-detect-delay = 200; + samsung,dw-mshc-ciu-div = 3; + samsung,dw-mshc-sdr-timing = 0 4; + samsung,dw-mshc-ddr-timing = 0 2; +
[PATCH] arm: dts: fix NTC thermistor device nodes for cros5250
This patch fixes NTC devices nodes connected to ADC channel 3, 4, 5 and 6 on exynos5250 based snow device. Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com Signed-off-by: Doug Anderson diand...@chromium.org --- arch/arm/boot/dts/cros5250-common.dtsi | 33 1 file changed, 33 insertions(+) diff --git a/arch/arm/boot/dts/cros5250-common.dtsi b/arch/arm/boot/dts/cros5250-common.dtsi index dc259e8b..26bc25a 100644 --- a/arch/arm/boot/dts/cros5250-common.dtsi +++ b/arch/arm/boot/dts/cros5250-common.dtsi @@ -313,4 +313,37 @@ gpio-key,wakeup; }; }; + + adc@12D1 { + vdd-supply = buck5_reg; + + ncp15wb473@3 { + compatible = ntc,ncp15wb473; + pullup-uv = 180; + pullup-ohm = 47000; + pulldown-ohm = 0; + io-channels = adc 3; + }; + ncp15wb473@4 { + compatible = ntc,ncp15wb473; + pullup-uv = 180; + pullup-ohm = 47000; + pulldown-ohm = 0; + io-channels = adc 4; + }; + ncp15wb473@5 { + compatible = ntc,ncp15wb473; + pullup-uv = 180; + pullup-ohm = 47000; + pulldown-ohm = 0; + io-channels = adc 5; + }; + ncp15wb473@6 { + compatible = ntc,ncp15wb473; + pullup-uv = 180; + pullup-ohm = 47000; + pulldown-ohm = 0; + io-channels = adc 6; + }; + }; }; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v5 1/3] ARM: dts: Fix the RTC DT node name for Exynos5250 SoC
Hi Vikas, On Thursday 22 of August 2013 17:03:26 Vikas Sajjan wrote: Fixes the RTC DT node name for Exynos5250 SoC as per the DT node naming convention. Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5.dtsi|2 +- arch/arm/boot/dts/exynos5250.dtsi |2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/boot/dts/exynos5.dtsi b/arch/arm/boot/dts/exynos5.dtsi index 6afa57d..074739d 100644 --- a/arch/arm/boot/dts/exynos5.dtsi +++ b/arch/arm/boot/dts/exynos5.dtsi @@ -95,7 +95,7 @@ interrupts = 0 54 0; }; - rtc { + rtc@101E { compatible = samsung,s3c6410-rtc; reg = 0x101E 0x100; interrupts = 0 43 0, 0 44 0; diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 1eec646..b278b00 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -180,7 +180,7 @@ clock-names = mfc; }; - rtc { + rtc@101E { clocks = clock 337; clock-names = rtc; }; This patch should also rename any other occurencies of rtc node in board dts files, because otherwise it breaks RTC support in bisections. Otherwise the whole series looks fine to me. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 0/3] Add RTC DT node to Exynos5420 SoC and Fix RTC DT node name for Exynos5250
This patchset does the following 3 things: 1) Fixes the RTC DT node name for Exynos5250 2) Update the status property of RTC DT node for Exynos5250 SoC 3) Adds RTC DT node to Exynos5420 SoC changes since v5: - Fixed the RTC DT node name for Exynos5250 board files also, because otherwise it breaks RTC support in bisections. changes since v4: - removed status property of RTC DT node from exynos5250 board dts files changes since v3: - split the 5250 related modifications into 2 separate patch as suggested by Tomasz Figa t.f...@samsung.com changes since v2: - split the 5250 related modifications into a separate patch. - placed the RTC node as per the alphabetical order in the DTS file as suggested by Kukjin Kim kg...@kernel.org. changes since v1: - made DT node status as okay in the dtsi file itself. Vikas Sajjan (3): ARM: dts: Fix the RTC DT node name for Exynos5250 ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC ARM: dts: Add RTC DT node to Exynos5420 SoC arch/arm/boot/dts/exynos5.dtsi |2 +- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|3 ++- arch/arm/boot/dts/exynos5420.dtsi|6 ++ 5 files changed, 9 insertions(+), 10 deletions(-) -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 1/3] ARM: dts: Fix the RTC DT node name for Exynos5250
Fixes the RTC DT node name for Exynos5250 as per the DT node naming convention. Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5.dtsi |2 +- arch/arm/boot/dts/exynos5250-arndale.dts |2 +- arch/arm/boot/dts/exynos5250-snow.dts|2 +- arch/arm/boot/dts/exynos5250.dtsi|2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/exynos5.dtsi b/arch/arm/boot/dts/exynos5.dtsi index 6afa57d..074739d 100644 --- a/arch/arm/boot/dts/exynos5.dtsi +++ b/arch/arm/boot/dts/exynos5.dtsi @@ -95,7 +95,7 @@ interrupts = 0 54 0; }; - rtc { + rtc@101E { compatible = samsung,s3c6410-rtc; reg = 0x101E 0x100; interrupts = 0 43 0, 0 44 0; diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index 452d0b0..264913f 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts @@ -538,7 +538,7 @@ }; }; - rtc { + rtc@101E { status = okay; }; diff --git a/arch/arm/boot/dts/exynos5250-snow.dts b/arch/arm/boot/dts/exynos5250-snow.dts index e79331d..24413a6 100644 --- a/arch/arm/boot/dts/exynos5250-snow.dts +++ b/arch/arm/boot/dts/exynos5250-snow.dts @@ -171,7 +171,7 @@ }; }; - rtc { + rtc@101E { status = okay; }; diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index 1eec646..b278b00 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -180,7 +180,7 @@ clock-names = mfc; }; - rtc { + rtc@101E { clocks = clock 337; clock-names = rtc; }; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 2/3] ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC
Moves the RTC DT node's status property from exynos5250 board (arndale snow) dts files to exynos5250.dtsi, since the bindings in exynos5250.dtsi depicts the RTC h/w completely. Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|1 + 3 files changed, 1 insertion(+), 8 deletions(-) diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index 264913f..cee55fa 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts @@ -538,10 +538,6 @@ }; }; - rtc@101E { - status = okay; - }; - usb_hub_bus { compatible = simple-bus; #address-cells = 1; diff --git a/arch/arm/boot/dts/exynos5250-snow.dts b/arch/arm/boot/dts/exynos5250-snow.dts index 24413a6..fd711e2 100644 --- a/arch/arm/boot/dts/exynos5250-snow.dts +++ b/arch/arm/boot/dts/exynos5250-snow.dts @@ -171,10 +171,6 @@ }; }; - rtc@101E { - status = okay; - }; - /* * On Snow we've got SIP WiFi and so can keep drive strengths low to * reduce EMI. diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index b278b00..b054c3c 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi @@ -183,6 +183,7 @@ rtc@101E { clocks = clock 337; clock-names = rtc; + status = okay; }; tmu@1006 { -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 3/3] ARM: dts: Add RTC DT node to Exynos5420 SoC
Adds RTC DT node to Exynos5420 SoC Signed-off-by: Vikas Sajjan vikas.saj...@linaro.org --- arch/arm/boot/dts/exynos5420.dtsi |6 ++ 1 file changed, 6 insertions(+) diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 5353e32..3f2b9c4 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi @@ -180,6 +180,12 @@ interrupts = 0 47 0; }; + rtc@101E { + clocks = clock 317; + clock-names = rtc; + status = okay; + }; + serial@12C0 { clocks = clock 257, clock 128; clock-names = uart, clk_uart_baud0; -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] ASoC: samsung: Fix build error with dma function rename
commit 85ff3c29d720 (ASoC: samsung: Rename DMA platform registration functions) renames the DMA registration functions. Fix the places where it was left out. Signed-off-by: Tushar Behera tushar.beh...@linaro.org --- sound/soc/samsung/pcm.c |4 ++-- sound/soc/samsung/s3c2412-i2s.c |4 ++-- sound/soc/samsung/s3c24xx-i2s.c |4 ++-- sound/soc/samsung/spdif.c |4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/sound/soc/samsung/pcm.c b/sound/soc/samsung/pcm.c index 1566afe..e54256f 100644 --- a/sound/soc/samsung/pcm.c +++ b/sound/soc/samsung/pcm.c @@ -594,7 +594,7 @@ static int s3c_pcm_dev_probe(struct platform_device *pdev) goto err5; } - ret = asoc_dma_platform_register(pdev-dev); + ret = samsung_asoc_dma_platform_register(pdev-dev); if (ret) { dev_err(pdev-dev, failed to get register DMA: %d\n, ret); goto err6; @@ -623,7 +623,7 @@ static int s3c_pcm_dev_remove(struct platform_device *pdev) struct s3c_pcm_info *pcm = s3c_pcm[pdev-id]; struct resource *mem_res; - asoc_dma_platform_unregister(pdev-dev); + samsung_asoc_dma_platform_unregister(pdev-dev); snd_soc_unregister_component(pdev-dev); pm_runtime_disable(pdev-dev); diff --git a/sound/soc/samsung/s3c2412-i2s.c b/sound/soc/samsung/s3c2412-i2s.c index 47e2386..ea885cb 100644 --- a/sound/soc/samsung/s3c2412-i2s.c +++ b/sound/soc/samsung/s3c2412-i2s.c @@ -176,7 +176,7 @@ static int s3c2412_iis_dev_probe(struct platform_device *pdev) return ret; } - ret = asoc_dma_platform_register(pdev-dev); + ret = samsung_asoc_dma_platform_register(pdev-dev); if (ret) { pr_err(failed to register the DMA: %d\n, ret); goto err; @@ -190,7 +190,7 @@ err: static int s3c2412_iis_dev_remove(struct platform_device *pdev) { - asoc_dma_platform_unregister(pdev-dev); + samsung_asoc_dma_platform_unregister(pdev-dev); snd_soc_unregister_component(pdev-dev); return 0; } diff --git a/sound/soc/samsung/s3c24xx-i2s.c b/sound/soc/samsung/s3c24xx-i2s.c index 8b34145..9c8ebd8 100644 --- a/sound/soc/samsung/s3c24xx-i2s.c +++ b/sound/soc/samsung/s3c24xx-i2s.c @@ -480,7 +480,7 @@ static int s3c24xx_iis_dev_probe(struct platform_device *pdev) return ret; } - ret = asoc_dma_platform_register(pdev-dev); + ret = samsung_asoc_dma_platform_register(pdev-dev); if (ret) { pr_err(failed to register the dma: %d\n, ret); goto err; @@ -494,7 +494,7 @@ err: static int s3c24xx_iis_dev_remove(struct platform_device *pdev) { - asoc_dma_platform_unregister(pdev-dev); + samsung_asoc_dma_platform_unregister(pdev-dev); snd_soc_unregister_component(pdev-dev); return 0; } diff --git a/sound/soc/samsung/spdif.c b/sound/soc/samsung/spdif.c index 5ea70ab..28487dc 100644 --- a/sound/soc/samsung/spdif.c +++ b/sound/soc/samsung/spdif.c @@ -442,7 +442,7 @@ static int spdif_probe(struct platform_device *pdev) spdif-dma_playback = spdif_stereo_out; - ret = asoc_dma_platform_register(pdev-dev); + ret = samsung_asoc_dma_platform_register(pdev-dev); if (ret) { dev_err(pdev-dev, failed to register DMA: %d\n, ret); goto err5; @@ -468,7 +468,7 @@ static int spdif_remove(struct platform_device *pdev) struct samsung_spdif_info *spdif = spdif_info; struct resource *mem_res; - asoc_dma_platform_unregister(pdev-dev); + samsung_asoc_dma_platform_unregister(pdev-dev); snd_soc_unregister_component(pdev-dev); iounmap(spdif-regs); -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v6 0/3] Add RTC DT node to Exynos5420 SoC and Fix RTC DT node name for Exynos5250
Hi Vikas, On Thursday 22 of August 2013 18:29:00 Vikas Sajjan wrote: This patchset does the following 3 things: 1) Fixes the RTC DT node name for Exynos5250 2) Update the status property of RTC DT node for Exynos5250 SoC 3) Adds RTC DT node to Exynos5420 SoC changes since v5: - Fixed the RTC DT node name for Exynos5250 board files also, because otherwise it breaks RTC support in bisections. changes since v4: - removed status property of RTC DT node from exynos5250 board dts files changes since v3: - split the 5250 related modifications into 2 separate patch as suggested by Tomasz Figa t.f...@samsung.com changes since v2: - split the 5250 related modifications into a separate patch. - placed the RTC node as per the alphabetical order in the DTS file as suggested by Kukjin Kim kg...@kernel.org. changes since v1: - made DT node status as okay in the dtsi file itself. Vikas Sajjan (3): ARM: dts: Fix the RTC DT node name for Exynos5250 ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC ARM: dts: Add RTC DT node to Exynos5420 SoC arch/arm/boot/dts/exynos5.dtsi |2 +- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|3 ++- arch/arm/boot/dts/exynos5420.dtsi|6 ++ 5 files changed, 9 insertions(+), 10 deletions(-) Looks good to me now. Reviewed-by: Tomasz Figa t.f...@samsung.com Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] ASoC: samsung: Fix build error with dma function rename
On Thu, Aug 22, 2013 at 06:15:02PM +0530, Tushar Behera wrote: commit 85ff3c29d720 (ASoC: samsung: Rename DMA platform registration functions) renames the DMA registration functions. Fix the places where it was left out. Applied, thanks. signature.asc Description: Digital signature
Re: [GIT PULL 1/2] Samsung cleanup for v3.12
Kukjin Kim kgene@samsung.com writes: The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092: Linux 3.11-rc1 (2013-07-14 15:18:27 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git tags/samsung-cleanup-1 for you to fetch changes up to 8c3736e20ee387acefffdfcac560ea23ee6fd4d8: ARM: SAMSUNG: Remove unnecessary exynos4_default_sdhci*() (2013-08-19 05:23:32 +0900) samsung cleanup for v3.12 - cleanup non-dt stuff in exynos - remove 0x from exynos dt files - remove unused codes Pulled into next/cleanup Kevin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [GIT PULL 2/2] Samsung Exynos DT for v3.12
Kukjin Kim kgene@samsung.com writes: The following changes since commit ad81f0545ef01ea651886dddac4bef6cec930092: Linux 3.11-rc1 (2013-07-14 15:18:27 -0700) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung.git tags/samsung-dt-1 for you to fetch changes up to 6f9d02a056fff8e965da0f940a09d4c39a4fe80a: ARM: dts: Add USB host node for Exynos4 (2013-08-19 05:07:17 +0900) Samsung Exynos DT updates for v3.12 - update codec, pmic, usb hub for Arndale - add exynos4412-trats 2 board dt - update camera, spi, sensor for Trats2 - update fimc, sensor for Trats - add support tmu for exynos5440 - add support g2d for exynos5250 - correct camera pinctrl for exynos4x12 - add support camera subsystem for exynos4 - add support basic pm domain, fimd, dp for exynos5420 - add support secure-firmware for OrigenQuad - update mfc and add support mfc for exynos5420 - add usb host node for exynos4 Pulled into next/dt, Kevin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH V3] i2c: move of helpers into the core
I2C of helpers used to live in of_i2c.c but experience (from SPI) shows that it is much cleaner to have this in the core. This also removes a circular dependency between the helpers and the core, and so we can finally register child nodes in the core instead of doing this manually in each driver. So, fix the drivers and documentation, too. Acked-by: Rob Herring rob.herr...@calxeda.com Reviewed-by: Felipe Balbi ba...@ti.com Acked-by: Rafael J. Wysocki rafael.j.wyso...@intel.com Tested-by: Sylwester Nawrocki s.nawro...@samsung.com Signed-off-by: Wolfram Sang w...@the-dreams.de --- V2-V3: Was trying to be too smart by only fixing includes needed. Took a more general approach this time, converting of_i2c.h to i2c.h in case i2c.h was not already there. Otherwise remove it. Improved my build scripts and no build failures, no complaints from buildbot as well. Documentation/acpi/enumeration.txt |1 - arch/powerpc/platforms/44x/warp.c |1 - drivers/gpu/drm/tilcdc/tilcdc_slave.c |1 - drivers/gpu/drm/tilcdc/tilcdc_tfp410.c |1 - drivers/gpu/host1x/drm/output.c |2 +- drivers/i2c/busses/i2c-at91.c |3 - drivers/i2c/busses/i2c-cpm.c|6 -- drivers/i2c/busses/i2c-davinci.c|2 - drivers/i2c/busses/i2c-designware-platdrv.c |2 - drivers/i2c/busses/i2c-gpio.c |3 - drivers/i2c/busses/i2c-i801.c |2 - drivers/i2c/busses/i2c-ibm_iic.c|4 - drivers/i2c/busses/i2c-imx.c|3 - drivers/i2c/busses/i2c-mpc.c|2 - drivers/i2c/busses/i2c-mv64xxx.c|3 - drivers/i2c/busses/i2c-mxs.c|3 - drivers/i2c/busses/i2c-nomadik.c|3 - drivers/i2c/busses/i2c-ocores.c |3 - drivers/i2c/busses/i2c-octeon.c |3 - drivers/i2c/busses/i2c-omap.c |3 - drivers/i2c/busses/i2c-pnx.c|3 - drivers/i2c/busses/i2c-powermac.c |9 +- drivers/i2c/busses/i2c-pxa.c|2 - drivers/i2c/busses/i2c-s3c2410.c|2 - drivers/i2c/busses/i2c-sh_mobile.c |2 - drivers/i2c/busses/i2c-sirf.c |3 - drivers/i2c/busses/i2c-stu300.c |2 - drivers/i2c/busses/i2c-tegra.c |3 - drivers/i2c/busses/i2c-versatile.c |2 - drivers/i2c/busses/i2c-wmt.c|3 - drivers/i2c/busses/i2c-xiic.c |3 - drivers/i2c/i2c-core.c | 109 +- drivers/i2c/i2c-mux.c |3 - drivers/i2c/muxes/i2c-arb-gpio-challenge.c |1 - drivers/i2c/muxes/i2c-mux-gpio.c|1 - drivers/i2c/muxes/i2c-mux-pinctrl.c |1 - drivers/media/platform/exynos4-is/fimc-is-i2c.c |4 +- drivers/media/platform/exynos4-is/fimc-is.c |2 +- drivers/media/platform/exynos4-is/media-dev.c |1 - drivers/of/Kconfig |6 -- drivers/of/Makefile |1 - drivers/of/of_i2c.c | 114 --- drivers/staging/imx-drm/imx-tve.c |2 +- include/linux/i2c.h | 20 include/linux/of_i2c.h | 46 - sound/soc/fsl/imx-sgtl5000.c|2 +- sound/soc/fsl/imx-wm8962.c |2 +- 47 files changed, 138 insertions(+), 262 deletions(-) delete mode 100644 drivers/of/of_i2c.c delete mode 100644 include/linux/of_i2c.h diff --git a/Documentation/acpi/enumeration.txt b/Documentation/acpi/enumeration.txt index d9be7a9..958266e 100644 --- a/Documentation/acpi/enumeration.txt +++ b/Documentation/acpi/enumeration.txt @@ -238,7 +238,6 @@ An I2C bus (controller) driver does: if (ret) /* handle error */ - of_i2c_register_devices(adapter); /* Enumerate the slave devices behind this bus via ACPI */ acpi_i2c_register_devices(adapter); diff --git a/arch/powerpc/platforms/44x/warp.c b/arch/powerpc/platforms/44x/warp.c index 4cfa499..534574a 100644 --- a/arch/powerpc/platforms/44x/warp.c +++ b/arch/powerpc/platforms/44x/warp.c @@ -16,7 +16,6 @@ #include linux/interrupt.h #include linux/delay.h #include linux/of_gpio.h -#include linux/of_i2c.h #include linux/slab.h #include linux/export.h diff --git a/drivers/gpu/drm/tilcdc/tilcdc_slave.c b/drivers/gpu/drm/tilcdc/tilcdc_slave.c index dfffaf0..a19f657 100644 --- a/drivers/gpu/drm/tilcdc/tilcdc_slave.c +++ b/drivers/gpu/drm/tilcdc/tilcdc_slave.c @@ -16,7 +16,6 @@ */ #include linux/i2c.h -#include linux/of_i2c.h #include linux/pinctrl/pinmux.h #include
[PATCH v6 0/3] mmc: dw_mmc: fixes for suspend/resume on exynos
This series of patches addresses some suspend/resume problems with dw_mmc on exynos platforms, espeically exynos5420. This patchset was tested on the current ToT Chromeos 3.8 tree (which has lots of backports from 3.10/3.11) and on ToT Linux (v3.11-rc6). I have confirmed basic booting and that SD cards work across suspend/resume (both if they are plugged in and if they are not plugged in). I have received confirmation from Samsung that the problem solved for exynos5420 is a silicon errata and that this is a good fix. Changes in v6: - Took out TODO comment copied from main platform code. - Replaces previous pathes that ensured saving/restoring clocks. Changes in v5: - Cleaned up dw_mci_exynos_resume_noirq() comment as per Seungwon. - Don't memcpy dev_pm_ops structure, define a new one. Changes in v4: - Take Seungwon's suggestion and don't add any dw_mmc-pltfm code. Changes in v3: - Add freeze/thaw and poweroff/restore noirq entries. Changes in v2: - Use suspend_noirq as per James Hogan. Doug Anderson (3): mmc: dw_mmc: Add exynos resume_noirq callback to clear WAKEUP_INT mmc: dw_mmc: Honor requests to set the clock to 0 (turn off clock) mmc: dw_mmc: Set timeout to max upon resume drivers/mmc/host/dw_mmc-exynos.c | 53 +++- drivers/mmc/host/dw_mmc.c| 24 ++ 2 files changed, 66 insertions(+), 11 deletions(-) -- 1.8.3 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: Broken device trees for exynos in linux-next
Kukjin, On Thu, Aug 22, 2013 at 2:55 AM, Kukjin Kim kg...@kernel.org wrote: Yeah, it can be used for test. But there are many differences between exynos_defconfig and exynos5440_defconfig...PCIe, GbE, HugeTLB and KVM...so I'm still wondering how to handle it without other defconfig. Olof, do you still having objection for exynos5440_defconfig? If so, OK I will revert exynos5440_defconfig for now so that I could pull out the 'defconfig' branch to arm-soc for upcoming merge window. Then, let's discuss again :) As far as I see it, you have two options: 1. Add the needed drivers to multi_v7_defconfig and use that for your platform. 2. Add them to both multi_v7_defconfig and exynos_defconfig. Enabling the new drivers on exynos_defconfig does no harm. I don't want to see a new defconfig for this. -Olof -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v6 1/3] mmc: dw_mmc: Add exynos resume_noirq callback to clear WAKEUP_INT
If the WAKEUP_INT is asserted at wakeup and not cleared, we'll end up looping around forever. This has been seen to happen on exynos5420 silicon despite the fact that we haven't enabled any wakeup events due to a silicon errata. It is safe to do on all exynos variants. Signed-off-by: Doug Anderson diand...@chromium.org --- Changes in v6: - Took out TODO comment copied from main platform code. Changes in v5: - Cleaned up dw_mci_exynos_resume_noirq() comment as per Seungwon. - Don't memcpy dev_pm_ops structure, define a new one. Changes in v4: - Take Seungwon's suggestion and don't add any dw_mmc-pltfm code. Changes in v3: - Add freeze/thaw and poweroff/restore noirq entries. Changes in v2: - Use suspend_noirq as per James Hogan. drivers/mmc/host/dw_mmc-exynos.c | 53 +++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/dw_mmc-exynos.c b/drivers/mmc/host/dw_mmc-exynos.c index 866edef..e8c6cc9 100644 --- a/drivers/mmc/host/dw_mmc-exynos.c +++ b/drivers/mmc/host/dw_mmc-exynos.c @@ -30,6 +30,7 @@ #define SDMMC_CLKSEL_TIMING(x, y, z) (SDMMC_CLKSEL_CCLK_SAMPLE(x) | \ SDMMC_CLKSEL_CCLK_DRIVE(y) |\ SDMMC_CLKSEL_CCLK_DIVIDER(z)) +#define SDMMC_CLKSEL_WAKEUP_INTBIT(11) #define EXYNOS4210_FIXED_CIU_CLK_DIV 2 #define EXYNOS4412_FIXED_CIU_CLK_DIV 4 @@ -100,6 +101,49 @@ static int dw_mci_exynos_setup_clock(struct dw_mci *host) return 0; } +#ifdef CONFIG_PM_SLEEP +static int dw_mci_exynos_suspend(struct device *dev) +{ + struct dw_mci *host = dev_get_drvdata(dev); + + return dw_mci_suspend(host); +} + +static int dw_mci_exynos_resume(struct device *dev) +{ + struct dw_mci *host = dev_get_drvdata(dev); + + return dw_mci_resume(host); +} + +/** + * dw_mci_exynos_resume_noirq - Exynos-specific resume code + * + * On exynos5420 there is a silicon errata that will sometimes leave the + * WAKEUP_INT bit in the CLKSEL register asserted. This bit is 1 to indicate + * that it fired and we can clear it by writing a 1 back. Clear it to prevent + * interrupts from going off constantly. + * + * We run this code on all exynos variants because it doesn't hurt. + */ + +static int dw_mci_exynos_resume_noirq(struct device *dev) +{ + struct dw_mci *host = dev_get_drvdata(dev); + u32 clksel; + + clksel = mci_readl(host, CLKSEL); + if (clksel SDMMC_CLKSEL_WAKEUP_INT) + mci_writel(host, CLKSEL, clksel); + + return 0; +} +#else +#define dw_mci_exynos_suspend NULL +#define dw_mci_exynos_resume NULL +#define dw_mci_exynos_resume_noirq NULL +#endif /* CONFIG_PM_SLEEP */ + static void dw_mci_exynos_prepare_command(struct dw_mci *host, u32 *cmdr) { /* @@ -187,13 +231,20 @@ static int dw_mci_exynos_probe(struct platform_device *pdev) return dw_mci_pltfm_register(pdev, drv_data); } +const struct dev_pm_ops dw_mci_exynos_pmops = { + SET_SYSTEM_SLEEP_PM_OPS(dw_mci_exynos_suspend, dw_mci_exynos_resume) + .resume_noirq = dw_mci_exynos_resume_noirq, + .thaw_noirq = dw_mci_exynos_resume_noirq, + .restore_noirq = dw_mci_exynos_resume_noirq, +}; + static struct platform_driver dw_mci_exynos_pltfm_driver = { .probe = dw_mci_exynos_probe, .remove = __exit_p(dw_mci_pltfm_remove), .driver = { .name = dwmmc_exynos, .of_match_table = dw_mci_exynos_match, - .pm = dw_mci_pltfm_pmops, + .pm = dw_mci_exynos_pmops, }, }; -- 1.8.3 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7] s5k5baf: add camera sensor driver
On 08/21/2013 08:41 AM, Andrzej Hajda wrote: Driver for Samsung S5K5BAF UXGA 1/5 2M CMOS Image Sensor with embedded SoC ISP. The driver exposes the sensor as two V4L2 subdevices: - S5K5BAF-CIS - pure CMOS Image Sensor, fixed 1600x1200 format, no controls. - S5K5BAF-ISP - Image Signal Processor, formats up to 1600x1200, pre/post ISP cropping, downscaling via selection API, controls. The binding, Acked-by: Stephen Warren swar...@nvidia.com (although it would be great if another DT binding maintainer gave it a quick look-over to make sure I didn't miss anything!) -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7] s5k5baf: add camera sensor driver
Hi Andrzej, Please see some minor comments inline. On Wednesday 21 of August 2013 16:41:31 Andrzej Hajda wrote: Driver for Samsung S5K5BAF UXGA 1/5 2M CMOS Image Sensor with embedded SoC ISP. The driver exposes the sensor as two V4L2 subdevices: - S5K5BAF-CIS - pure CMOS Image Sensor, fixed 1600x1200 format, no controls. - S5K5BAF-ISP - Image Signal Processor, formats up to 1600x1200, pre/post ISP cropping, downscaling via selection API, controls. Signed-off-by: Sylwester Nawrocki s.nawro...@samsung.com Signed-off-by: Andrzej Hajda a.ha...@samsung.com Signed-off-by: Kyungmin Park kyungmin.p...@samsung.com --- Hi, This patch incorporates Stephen's suggestions, thanks. Regards Andrzej v7 - changed description of 'clock-frequency' DT property v6 - endpoint node presence is now optional, - added asynchronous subdev registration support and clock handling, - use named gpios in DT bindings v5 - removed hflip/vflip device tree properties v4 - GPL changed to GPLv2, - bitfields replaced by u8, - cosmetic changes, - corrected s_stream flow, - gpio pins are no longer exported, - added I2C addresses to subdev names, - CIS subdev registration postponed after succesfull HW initialization, - added enums for pads, - selections are initialized only during probe, - default resolution changed to 1600x1200, - state-error pattern removed from few other functions, - entity link creation moved to registered callback. v3: - narrowed state-error usage to i2c and power errors, - private gain controls replaced by red/blue balance user controls, - added checks to devicetree gpio node parsing v2: - lower-cased driver name, - removed underscore from regulator names, - removed platform data code, - v4l controls grouped in anonymous structs, - added s5k5baf_clear_error function, - private controls definitions moved to uapi header file, - added v4l2-controls.h reservation for private controls, - corrected subdev registered/unregistered code, - .log_status sudbev op set to v4l2 helper, - moved entity link creation to probe routines, - added cleanup on error to probe function. --- .../devicetree/bindings/media/samsung-s5k5baf.txt | 59 + MAINTAINERS|7 + drivers/media/i2c/Kconfig |7 + drivers/media/i2c/Makefile |1 + drivers/media/i2c/s5k5baf.c| 2045 5 files changed, 2119 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/samsung-s5k5baf.txt create mode 100644 drivers/media/i2c/s5k5baf.c diff --git a/Documentation/devicetree/bindings/media/samsung-s5k5baf.txt b/Documentation/devicetree/bindings/media/samsung-s5k5baf.txt new file mode 100644 index 000..d680d99 --- /dev/null +++ b/Documentation/devicetree/bindings/media/samsung-s5k5baf.txt @@ -0,0 +1,59 @@ +Samsung S5K5BAF UXGA 1/5 2M CMOS Image Sensor with embedded SoC ISP + + +Required properties: + +- compatible : samsung,s5k5baf; +- reg : I2C slave address of the sensor; Can this sensor have an aribitrary slave address or only a set of well known possible addresses (e.g. listed in documentation)? +- vdda-supply : analog power supply 2.8V (2.6V to 3.0V); +- vddreg-supply: regulator input power supply 1.8V (1.7V to 1.9V) + or 2.8V (2.6V to 3.0); +- vddio-supply : I/O power supply 1.8V (1.65V to 1.95V) + or 2.8V (2.5V to 3.1V); +- stbyn-gpios : GPIO connected to STDBYN pin; +- rstn-gpios : GPIO connected to RSTN pin; Both GPIOs above have names suggesting that they are active low. I wonder how the GPIO flags cell is interpreted here, namely the polarity bit. Otherwise the binding looks good. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V3] ARM: dts: Add dwmmc DT nodes for exynos5420 SOC
Hi Yuvaraj, On Thursday 22 of August 2013 17:21:18 Yuvaraj Kumar C D wrote: This patch adds the device tree node entries for exynos5420 SOC. Exynos5420 has a different version of DWMMC controller,so a new compatible string is used to distinguish it from the prior SOC's. changes since V2: 1.dropped num-slots property from node as its not required if number of card slots available is 1. 2.Move the below properties a.fifo-depth b.card-detect-delay c.samsung,dw-mshc-ciu-div d.samsung,dw-mshc-sdr-timing e.samsung,dw-mshc-ddr-timing from board dts to SOC dts,as these are not board specific properties. 3.Updated the binding document exynos-dw-mshc.txt. changes since V1: 1.disable node by status = disabled in SOC file 2.enable node by status = okay in board specific file Signed-off-by: Yuvaraj Kumar C D yuvaraj...@samsung.com --- .../devicetree/bindings/mmc/exynos-dw-mshc.txt |4 ++ arch/arm/boot/dts/exynos5420-smdk5420.dts | 26 ++ arch/arm/boot/dts/exynos5420.dtsi | 51 3 files changed, 81 insertions(+) Please resend this patch with devicetree mailing list and other recipients added, as listed in MAINTAINERS file for Documentation/devicetree/ and arch/*/boot/dts/ directories. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] ARM: dts: exynos5420/5250: add ADC device tree node
Hi Naveen, On Thursday 22 of August 2013 15:48:11 Naveen Krishna Chatradhi wrote: Add ADC device tree node for exynos5420 and exynos5250 Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com Signed-off-by: Doug Anderson diand...@chromium.org --- arch/arm/boot/dts/exynos5250.dtsi | 11 +++ arch/arm/boot/dts/exynos5420.dtsi | 11 +++ 2 files changed, 22 insertions(+) This patch looks good to me, but please resend it with all the recipients present in MAINTAINERS file for the directories from which files it changes, especially the devicet...@vger.kernel.org mailing list. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] arm: dts: fix NTC thermistor device nodes for cros5250
Hi Naveen, On Thursday 22 of August 2013 17:18:34 Naveen Krishna Chatradhi wrote: This patch fixes NTC devices nodes connected to ADC channel 3, 4, 5 and 6 on exynos5250 based snow device. Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com Signed-off-by: Doug Anderson diand...@chromium.org --- arch/arm/boot/dts/cros5250-common.dtsi | 33 1 file changed, 33 insertions(+) This patch does not look like fixing anything. Instead it adds board specific data to adc node to cros5250 common dtsi file. Also please resend this patch with all the recipients added according to MAINTAINERS file. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V2] ARM: dts: Add dwmmc DT nodes for exynos5420 SOC
On Thursday 22 of August 2013 12:24:58 Yuvaraj Kumar wrote: On Wed, Aug 21, 2013 at 4:00 PM, Tomasz Figa t.f...@samsung.com wrote: Hi Yuvaraj, On Wednesday 21 of August 2013 12:13:53 Yuvaraj Kumar C D wrote: This patch adds the device tree node entries for exynos5420 SOC. Exynos5420 has a different version of DWMMC controller,so a new compatible string is used to distinguish it from the prior SOC's. What are the difference between both versions? Is there a patch adding the new compatible to the driver somewhere? Exynos5250 has DWMMC controller of IP version 2.41a Exynos5420 has DWMMC controller of IP version 2.50a In addition Exynos5420 has Security Management Unit for eMMC. OK. What about my second question? changes since V1: 1.disable node by status = disabled in SOC file 2.enable node by status = okay in board specific file Ahh, so you fixed this already in this version, thanks. Haven't noticed this patch at first and commented on previous one. Sorry for the noise. Signed-off-by: Yuvaraj Kumar C D yuvaraj...@samsung.com --- .../devicetree/bindings/mmc/exynos-dw-mshc.txt |2 ++ arch/arm/boot/dts/exynos5420-smdk5420.dts | 38 arch/arm/boot/dts/exynos5420.dtsi | 36 +++ 3 files changed, 76 insertions(+) diff --git a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt index 6d1c098..84cd56f 100644 --- a/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt +++ b/Documentation/devicetree/bindings/mmc/exynos-dw-mshc.txt @@ -16,6 +16,8 @@ Required Properties: specific extensions. - samsung,exynos5250-dw-mshc: for controllers with Samsung Exynos5250 specific extensions. + - samsung,exynos5420-dw-mshc: for controllers with Samsung Exynos5420 + specific extensions. * samsung,dw-mshc-ciu-div: Specifies the divider value for the card interface unit (ciu) clock. This property is applicable only for Exynos5 SoC's and diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts index bafba25..6e65278 100644 --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts @@ -31,6 +31,44 @@ }; }; + dwmmc0@1220 { + status = okay; + num-slots = 1; You don't have to specify this property if there is only one slot. Also are you sure that this is a board specific property? Yes,If num-slots property is not defined dw_mmc driver assumes 1 slot is available. I think yes,its a board specific property as number of card slots is board dependent. + broken-cd; + bypass-smu; This property doesn't seem to be documented nor used anywhere. Sorry. I missed to add in binding document.Will add in next version. Is there a patch adding support for this property to the driver? + supports-highspeed; Is it a board specific property? + fifo-depth = 0x80; Ditto. Ideally this can be move to SOC specific dts.But I am just following ,already merged smdk5250 board dts convensions. This means that Exynos5250 board dts files need to be fixed as well. + card-detect-delay = 200; + samsung,dw-mshc-ciu-div = 3; + samsung,dw-mshc-sdr-timing = 0 4; + samsung,dw-mshc-ddr-timing = 0 2; Are the above three properties really board-specific? Hmm? Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v7 3/7] gpio: samsung: Skip initialization if device tree is present
On Thursday 22 of August 2013 18:59:23 Kukjin Kim wrote: Tomasz Figa wrote: On Thursday 22 of August 2013 01:21:25 Linus Walleij wrote: On Wed, Aug 21, 2013 at 11:21 PM, Tomasz Figa tomasz.f...@gmail.com wrote: Since this driver does not handle GPIO on device tree enabled platforms any more, it should be bypassed whenever device tree is available, to not conflict with the new pinctrl-samsung driver. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com This seems like something I should apply to the GPIO tree right now, shall I? Would be nice, but since this patch is a dependency for rest of this series and there are no other dependencies on GPIO tree, it might be easier to just let Kukjin take all the patches with required Acks. Oh, I didn't see any dependencies...but if so, Linus do you agree with Tomasz' opinion? Without this patch DT-based bootup would fail, because the legacy GPIO driver would kick in and register GPIO chips before the pinctrl driver. Things would compile fine, though. So this is a run time dependency, not compile time. Please let me know so that I could take this with others into the samsung tree. And please kindly ignore my previous reply on this ;-) I would be really happy if we could finally merge this for this release. This series is not really invasive in any way, so it is unlikely to introduce any regressions and it has waited so many releases, without any significant changes, due to a lot of other dependencies. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v8 1/7] irqchip: vic: Parse interrupt and resume masks from device tree
This patch extends vic_of_init to parse valid interrupt sources and resume sources masks from device tree. If mask values are not specified in device tree, all sources are assumed to be valid, as before this patch. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com --- Documentation/devicetree/bindings/arm/vic.txt | 6 ++ drivers/irqchip/irq-vic.c | 7 ++- 2 files changed, 12 insertions(+), 1 deletion(-) Changes since v7: - Renamed interrupt-mask property to valid-mask, for consistency with bindings of other interrupt controllers. diff --git a/Documentation/devicetree/bindings/arm/vic.txt b/Documentation/devicetree/bindings/arm/vic.txt index 266716b..3379666 100644 --- a/Documentation/devicetree/bindings/arm/vic.txt +++ b/Documentation/devicetree/bindings/arm/vic.txt @@ -18,6 +18,9 @@ Required properties: Optional properties: - interrupts : Interrupt source for parent controllers if the VIC is nested. +- valid-mask : Bit mask of valid interrupt sources (defaults to all valid) +- wakeup-mask : Bit mask of interrupt sources that can wake up the system + (defaults to all allowed) Example: @@ -26,4 +29,7 @@ Example: interrupt-controller; #interrupt-cells = 1; reg = 0x6 0x1000; + + valid-mask = 0xff7f; + wakeup-mask = 0xff7f; }; diff --git a/drivers/irqchip/irq-vic.c b/drivers/irqchip/irq-vic.c index 2bbb004..6437b18 100644 --- a/drivers/irqchip/irq-vic.c +++ b/drivers/irqchip/irq-vic.c @@ -469,6 +469,8 @@ void __init vic_init(void __iomem *base, unsigned int irq_start, int __init vic_of_init(struct device_node *node, struct device_node *parent) { void __iomem *regs; + u32 interrupt_mask = ~0; + u32 wakeup_mask = ~0; if (WARN(parent, non-root VICs are not supported)) return -EINVAL; @@ -477,10 +479,13 @@ int __init vic_of_init(struct device_node *node, struct device_node *parent) if (WARN_ON(!regs)) return -EIO; + of_property_read_u32(node, valid-mask, interrupt_mask); + of_property_read_u32(node, wakeup-mask, wakeup_mask); + /* * Passing 0 as first IRQ makes the simple domain allocate descriptors */ - __vic_init(regs, 0, ~0, ~0, node); + __vic_init(regs, 0, interrupt_mask, wakeup_mask, node); return 0; } -- 1.8.3.2 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v8 5/7] ARM: dts: Add basic dts include files for Samsung S3C64xx SoCs
This patch adds basic device tree definitions for Samsung S3C64xx SoCs. Since all the SoCs in the series are very similar, the files are created hierarchically - one file for the whole series and then separate files for particular SoCs including the common one. Signed-off-by: Tomasz Figa tomasz.f...@gmail.com --- arch/arm/boot/dts/s3c6400.dtsi | 41 ++ arch/arm/boot/dts/s3c6410.dtsi | 57 +++ arch/arm/boot/dts/s3c64xx-pinctrl.dtsi | 687 + arch/arm/boot/dts/s3c64xx.dtsi | 199 ++ 4 files changed, 984 insertions(+) create mode 100644 arch/arm/boot/dts/s3c6400.dtsi create mode 100644 arch/arm/boot/dts/s3c6410.dtsi create mode 100644 arch/arm/boot/dts/s3c64xx-pinctrl.dtsi create mode 100644 arch/arm/boot/dts/s3c64xx.dtsi Changes since v7: - Updated VIC nodes to reflect changes done to patch 1/7 (renamed interrupt-mask property to valid-mask). diff --git a/arch/arm/boot/dts/s3c6400.dtsi b/arch/arm/boot/dts/s3c6400.dtsi new file mode 100644 index 000..9fec67e --- /dev/null +++ b/arch/arm/boot/dts/s3c6400.dtsi @@ -0,0 +1,41 @@ +/* + * Samsung's S3C6400 SoC device tree source + * + * Copyright (c) 2013 Tomasz Figa tomasz.f...@gmail.com + * + * Samsung's S3C6400 SoC device nodes are listed in this file. S3C6400 + * based board files can include this file and provide values for board specfic + * bindings. + * + * Note: This file does not include device nodes for all the controllers in + * S3C6400 SoC. As device tree coverage for S3C6400 increases, additional + * nodes can be added to this file. + * + * 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 s3c64xx.dtsi + +/ { + compatible = samsung,s3c6400; +}; + +vic0 { + valid-mask = 0xfe1f; + wakeup-mask = 0x0024; +}; + +vic1 { + valid-mask = 0x; + wakeup-mask = 0x5302; +}; + +soc { + clocks: clock-controller@7e00f000 { + compatible = samsung,s3c6400-clock; + reg = 0x7e00f000 0x1000; + #clock-cells = 1; + }; +}; diff --git a/arch/arm/boot/dts/s3c6410.dtsi b/arch/arm/boot/dts/s3c6410.dtsi new file mode 100644 index 000..94276bd --- /dev/null +++ b/arch/arm/boot/dts/s3c6410.dtsi @@ -0,0 +1,57 @@ +/* + * Samsung's S3C6410 SoC device tree source + * + * Copyright (c) 2013 Tomasz Figa tomasz.f...@gmail.com + * + * Samsung's S3C6410 SoC device nodes are listed in this file. S3C6410 + * based board files can include this file and provide values for board specfic + * bindings. + * + * Note: This file does not include device nodes for all the controllers in + * S3C6410 SoC. As device tree coverage for S3C6410 increases, additional + * nodes can be added to this file. + * + * 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 s3c64xx.dtsi + +/ { + compatible = samsung,s3c6410; + + aliases { + i2c1 = i2c1; + }; +}; + +vic0 { + valid-mask = 0xff7f; + wakeup-mask = 0x0024; +}; + +vic1 { + valid-mask = 0x; + wakeup-mask = 0x5302; +}; + +soc { + clocks: clock-controller@7e00f000 { + compatible = samsung,s3c6410-clock; + reg = 0x7e00f000 0x1000; + #clock-cells = 1; + }; + + i2c1: i2c@7f00f000 { + compatible = samsung,s3c2440-i2c; + reg = 0x7f00f000 0x1000; + interrupt-parent = vic0; + interrupts = 5; + clock-names = i2c; + clocks = clocks PCLK_IIC1; + status = disabled; + #address-cells = 1; + #size-cells = 0; + }; +}; diff --git a/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi b/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi new file mode 100644 index 000..b1197d8 --- /dev/null +++ b/arch/arm/boot/dts/s3c64xx-pinctrl.dtsi @@ -0,0 +1,687 @@ +/* + * Samsung's S3C64xx SoC series common device tree source + * - pin control-related definitions + * + * Copyright (c) 2013 Tomasz Figa tomasz.f...@gmail.com + * + * Samsung's S3C64xx SoCs pin banks, pin-mux and pin-config options are + * listed as device tree nodes in this file. + * + * 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. + */ + +#define PIN_PULL_NONE 0 +#define PIN_PULL_DOWN 1 +#define PIN_PULL_UP2 + +pinctrl0 { + /* +* Pin banks +*/ + + gpa: gpa { + gpio-controller; + #gpio-cells = 2; + interrupt-controller; + #interrupt-cells = 2; + }; + + gpb: gpb { +
Re: [PATCH V3] ARM: dts: Add dwmmc DT nodes for exynos5420 SOC
Hi, Thanks for adding my Thomasz, On Thu, Aug 22, 2013 at 4:51 AM, Yuvaraj Kumar C D yuvaraj...@gmail.com wrote: This patch adds the device tree node entries for exynos5420 SOC. Exynos5420 has a different version of DWMMC controller,so a new compatible string is used to distinguish it from the prior SOC's. changes since V2: 1.dropped num-slots property from node as its not required if number of card slots available is 1. Just to mention: this is actually not board specific. No exynos products support more than one slot. ...and in fact apparently NOBODY supports more than one slot. I have a plan to post up a patch removing multislot support whenever I have a free moment. Anyway, what you did is fine. 2.Move the below properties a.fifo-depth Right, not board-specific. This is SoC specific. Interestingly enough you appear to have it wrong. I have it on good authority that 5420 has a FIFO depth of 0x40 not 0x80. Apparently the FIFO is 0x40 deep and 64 wide whereas the old FIFO is 0x80 deep and 32 wide. b.card-detect-delay c.samsung,dw-mshc-ciu-div d.samsung,dw-mshc-sdr-timing e.samsung,dw-mshc-ddr-timing These ARE board specific, actually. ...and Tomasz has pointed out. + dwmmc_2: dwmmc2@1222 { + compatible = samsung,exynos5420-dw-mshc; + interrupts = 0 77 0; + #address-cells = 1; + #size-cells = 0; + reg = 0x1222 0x2000; + clocks = clock 353, clock 134; + clock-names = biu, ciu; + fifo-depth = 0x80; + card-detect-delay = 200; + samsung,dw-mshc-ciu-div = 3; + samsung,dw-mshc-sdr-timing = 2 3; + samsung,dw-mshc-ddr-timing = 1 2; Note: I have information that says that these timings are not correct and that nearly always the drive timing should be 0 and the sample timing 4. ...but we haven't landed that change ourselves yet, so maybe keeping the timings you have is right. -Doug -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH v6 0/3] Add RTC DT node to Exynos5420 SoC and Fix RTC DT node name for Exynos5250
Hi Kukjin, On Thu, Aug 22, 2013 at 6:37 PM, Tomasz Figa t.f...@samsung.com wrote: Hi Vikas, On Thursday 22 of August 2013 18:29:00 Vikas Sajjan wrote: This patchset does the following 3 things: 1) Fixes the RTC DT node name for Exynos5250 2) Update the status property of RTC DT node for Exynos5250 SoC 3) Adds RTC DT node to Exynos5420 SoC changes since v5: - Fixed the RTC DT node name for Exynos5250 board files also, because otherwise it breaks RTC support in bisections. changes since v4: - removed status property of RTC DT node from exynos5250 board dts files changes since v3: - split the 5250 related modifications into 2 separate patch as suggested by Tomasz Figa t.f...@samsung.com changes since v2: - split the 5250 related modifications into a separate patch. - placed the RTC node as per the alphabetical order in the DTS file as suggested by Kukjin Kim kg...@kernel.org. changes since v1: - made DT node status as okay in the dtsi file itself. Vikas Sajjan (3): ARM: dts: Fix the RTC DT node name for Exynos5250 ARM: dts: Update the status property of RTC DT node for Exynos5250 SoC ARM: dts: Add RTC DT node to Exynos5420 SoC arch/arm/boot/dts/exynos5.dtsi |2 +- arch/arm/boot/dts/exynos5250-arndale.dts |4 arch/arm/boot/dts/exynos5250-snow.dts|4 arch/arm/boot/dts/exynos5250.dtsi|3 ++- arch/arm/boot/dts/exynos5420.dtsi|6 ++ 5 files changed, 9 insertions(+), 10 deletions(-) Looks good to me now. Reviewed-by: Tomasz Figa t.f...@samsung.com Can you apply this patchset. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] PCI: exynos: add support for MSI
On Monday, August 12, 2013 7:57 PM, Thierry Reding wrote: On Mon, Aug 12, 2013 at 05:56:47PM +0900, Jingoo Han wrote: [...] diff --git a/arch/arm/mach-exynos/Kconfig b/arch/arm/mach-exynos/Kconfig index 855d4a7..9ef1c95 100644 --- a/arch/arm/mach-exynos/Kconfig +++ b/arch/arm/mach-exynos/Kconfig @@ -93,6 +93,7 @@ config SOC_EXYNOS5440 default y depends on ARCH_EXYNOS5 select ARCH_HAS_OPP + select ARCH_SUPPORTS_MSI This symbol goes away in Thomas Petazzoni's MSI patch series which is targetted at 3.12, so I don't think you should add that here. OK, I see. I will remove ARCH_SUPPORTS_MSI. [.] +#endif + static void exynos_pcie_enable_interrupts(struct pcie_port *pp) { exynos_pcie_enable_irq_pulse(pp); +#ifdef CONFIG_PCI_MSI + exynos_pcie_msi_init(pp); +#endif return; } Instead of the whole #ifdef business above, can't you just use something like this in exynos_pcie_enable_interrupts(): if (IS_ENABLED(CONFIG_PCI_MSI)) exynos_pcie_msi_init(pp); Now you can drop the #ifdef guards and the compiler will throw away all the related code automatically if PCI_MSI is not selected because the functions are all static and unused. This has the advantage of compiling all the code whether or not PCI_MSI is selected or not, therefore increasing compile coverage of the driver. OK, I see. I will use 'if IS_ENABLED(CONFIG_PCI_MSI))', and remove #ifdef guards. [.] + +void arch_teardown_msi_irq(unsigned int irq) +{ + clear_irq(irq); +} And we've reworked this largely so that drivers no longer provide arch_* functions because that prevents multi-platform support. So I think you need to port this to the new msi_chip infrastructure that's being introduced in 3.12. OK, I have looked at the new msi_chip infrastructure made by Thomas Petazzoni. I will use this msi_chip. I really appreciate your comment. :) Thank you. Best regards, Jingoo Han -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html