Re: Is Pandaboard cpuhotplug working stably?

2011-12-22 Thread Shilimkar, Santosh
+ Peter Z

On Wed, Dec 21, 2011 at 3:37 PM, Russell King - ARM Linux
 wrote:
> On Wed, Dec 21, 2011 at 05:59:07PM +0800, Barry Song wrote:
>> 2011/12/21 Russell King - ARM Linux :
>> > cpu hotplug is basically totally buggered - the preconditions placed
>> > upon the bringup code path are basically impossible to satisfy in any
>> > shape or form at the moment.
>> >
>> > There's the requirement that the secondary CPU is marked online and
>> > active before interrupts are enabled for the thread migration stuff
>> > to behave correctly.  However, this is incompatible with 
>> > smp_call_function()
>> > which will wait for online CPUs to respond to an IPI - which this one
>> > won't because interrupts are disabled.
>> >
>> > I think there was some discussion about how to fix this but I don't
>> > recall the details.
>>
>> thanks, Russell. then could i think this is an ARM-kernel-specific bug
>> which exists on all ARM SMP chips for the moment?
>> and that bug doesn't happen on x86:
>
> I don't think so.  There's nothing ARM specific about it.

There are few patches floating around for this issue. I posted one version
long back [1] and then there was one more form Thomas G.
The most recent is from one is from Peter Z [2] which is moving the
fix for the cup online race to core code.

Can you try Peter's patch with your test-case ?

Regards,
Santosh

[1] https://lkml.org/lkml/2011/6/20/79
[2] https://lkml.org/lkml/2011/12/15/255

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: Is Pandaboard cpuhotplug working stably?

2011-12-22 Thread Russell King - ARM Linux
On Thu, Dec 22, 2011 at 02:19:23PM +0530, Shilimkar, Santosh wrote:
> + Peter Z
> 
> On Wed, Dec 21, 2011 at 3:37 PM, Russell King - ARM Linux
>  wrote:
> > On Wed, Dec 21, 2011 at 05:59:07PM +0800, Barry Song wrote:
> >> 2011/12/21 Russell King - ARM Linux :
> >> > cpu hotplug is basically totally buggered - the preconditions placed
> >> > upon the bringup code path are basically impossible to satisfy in any
> >> > shape or form at the moment.
> >> >
> >> > There's the requirement that the secondary CPU is marked online and
> >> > active before interrupts are enabled for the thread migration stuff
> >> > to behave correctly.  However, this is incompatible with 
> >> > smp_call_function()
> >> > which will wait for online CPUs to respond to an IPI - which this one
> >> > won't because interrupts are disabled.
> >> >
> >> > I think there was some discussion about how to fix this but I don't
> >> > recall the details.
> >>
> >> thanks, Russell. then could i think this is an ARM-kernel-specific bug
> >> which exists on all ARM SMP chips for the moment?
> >> and that bug doesn't happen on x86:
> >
> > I don't think so.  There's nothing ARM specific about it.
> 
> There are few patches floating around for this issue. I posted one version
> long back [1] and then there was one more form Thomas G.
> The most recent is from one is from Peter Z [2] which is moving the
> fix for the cup online race to core code.
> 
> Can you try Peter's patch with your test-case ?
> 
> Regards,
> Santosh
> 
> [1] https://lkml.org/lkml/2011/6/20/79
> [2] https://lkml.org/lkml/2011/12/15/255

[1] is already fixed - and is not the latest "problem" with this code.
Fixing the problem in [1] actually itself created the latest problem
with smp_call_function() which wasn't there before this change.  Patch
[2] refers to this problem and proposes a fix for it.

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: Is Pandaboard cpuhotplug working stably?

2011-12-22 Thread Shilimkar, Santosh
On Thu, Dec 22, 2011 at 3:54 PM, Russell King - ARM Linux
 wrote:
> On Thu, Dec 22, 2011 at 02:19:23PM +0530, Shilimkar, Santosh wrote:
>> + Peter Z
>>
>> On Wed, Dec 21, 2011 at 3:37 PM, Russell King - ARM Linux
>>  wrote:
>> > On Wed, Dec 21, 2011 at 05:59:07PM +0800, Barry Song wrote:
>> >> 2011/12/21 Russell King - ARM Linux :
>> >> > cpu hotplug is basically totally buggered - the preconditions placed
>> >> > upon the bringup code path are basically impossible to satisfy in any
>> >> > shape or form at the moment.
>> >> >
>> >> > There's the requirement that the secondary CPU is marked online and
>> >> > active before interrupts are enabled for the thread migration stuff
>> >> > to behave correctly.  However, this is incompatible with 
>> >> > smp_call_function()
>> >> > which will wait for online CPUs to respond to an IPI - which this one
>> >> > won't because interrupts are disabled.
>> >> >
>> >> > I think there was some discussion about how to fix this but I don't
>> >> > recall the details.
>> >>
>> >> thanks, Russell. then could i think this is an ARM-kernel-specific bug
>> >> which exists on all ARM SMP chips for the moment?
>> >> and that bug doesn't happen on x86:
>> >
>> > I don't think so.  There's nothing ARM specific about it.
>>
>> There are few patches floating around for this issue. I posted one version
>> long back [1] and then there was one more form Thomas G.
>> The most recent is from one is from Peter Z [2] which is moving the
>> fix for the cup online race to core code.
>>
>> Can you try Peter's patch with your test-case ?
>>
>> Regards,
>> Santosh
>>
>> [1] https://lkml.org/lkml/2011/6/20/79
>> [2] https://lkml.org/lkml/2011/12/15/255
>
> [1] is already fixed - and is not the latest "problem" with this code.
> Fixing the problem in [1] actually itself created the latest problem
> with smp_call_function() which wasn't there before this change.  Patch
> [2] refers to this problem and proposes a fix for it.

Thanks Russell for information. Looks like I missed in between thread.

Regards
Santosh

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH 2/6] Exynos: Clock.c: Use CONFIG_SYS_CLK_FREQ macro

2011-12-22 Thread Chander Kashyap
CONFIG_SYS_CLK_FREQ_C210 macro giving notion of S5PC2XX (EXYNOS4)
architecture. Replace CONFIG_SYS_CLK_FREQ_C210 with CONFIG_SYS_CLK_FREQ
to make it generic for exynos architecture.

Signed-off-by: Chander Kashyap 
---
 arch/arm/cpu/armv7/exynos/clock.c   |6 +-
 include/configs/s5pc210_universal.h |1 +
 2 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/arch/arm/cpu/armv7/exynos/clock.c 
b/arch/arm/cpu/armv7/exynos/clock.c
index 0c199cd..4d92c53 100644
--- a/arch/arm/cpu/armv7/exynos/clock.c
+++ b/arch/arm/cpu/armv7/exynos/clock.c
@@ -26,10 +26,6 @@
 #include 
 #include 
 
-#ifndef CONFIG_SYS_CLK_FREQ_C210
-#define CONFIG_SYS_CLK_FREQ_C210   2400
-#endif
-
 /* exynos4: return pll clock frequency */
 static unsigned long exynos4_get_pll_clk(int pllreg)
 {
@@ -76,7 +72,7 @@ static unsigned long exynos4_get_pll_clk(int pllreg)
/* SDIV [2:0] */
s = r & 0x7;
 
-   freq = CONFIG_SYS_CLK_FREQ_C210;
+   freq = CONFIG_SYS_CLK_FREQ;
 
if (pllreg == EPLL) {
k = k & 0x;
diff --git a/include/configs/s5pc210_universal.h 
b/include/configs/s5pc210_universal.h
index 33c4600..18de956 100644
--- a/include/configs/s5pc210_universal.h
+++ b/include/configs/s5pc210_universal.h
@@ -50,6 +50,7 @@
 
 /* input clock of PLL: Universal has 24MHz input clock at EXYNOS4210 */
 #define CONFIG_SYS_CLK_FREQ_C210   2400
+#define CONFIG_SYS_CLK_FREQCONFIG_SYS_CLK_FREQ_C210
 
 #define CONFIG_SETUP_MEMORY_TAGS
 #define CONFIG_CMDLINE_TAG
-- 
1.7.5.4


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH 1/6] Exynos: Add CONFIG_EXYNOS4 Macro to EXYNOS4 based boards

2011-12-22 Thread Chander Kashyap
Exynos architecture has varients like exynos4 and exynos5. In order to
identify the exynos4 architecture, add CONFIG_EXYNOS4 macro to exynos4
based boards i.e. Origen, smdkv310 and s5pc210_universal.

Signed-off-by: Chander Kashyap 
---
 include/configs/origen.h|1 +
 include/configs/s5pc210_universal.h |1 +
 include/configs/smdkv310.h  |1 +
 3 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/include/configs/origen.h b/include/configs/origen.h
index cd502d1..53bd5fc 100644
--- a/include/configs/origen.h
+++ b/include/configs/origen.h
@@ -28,6 +28,7 @@
 /* High Level Configuration Options */
 #define CONFIG_SAMSUNG 1   /* SAMSUNG core */
 #define CONFIG_S5P 1   /* S5P Family */
+#define CONFIG_EXYNOS4 1   /* EXYNOS4 Family */
 #define CONFIG_EXYNOS4210  1   /* which is a EXYNOS4210 SoC */
 #define CONFIG_ORIGEN  1   /* working with ORIGEN*/
 
diff --git a/include/configs/s5pc210_universal.h 
b/include/configs/s5pc210_universal.h
index be000cb..33c4600 100644
--- a/include/configs/s5pc210_universal.h
+++ b/include/configs/s5pc210_universal.h
@@ -32,6 +32,7 @@
  */
 #define CONFIG_SAMSUNG 1   /* in a SAMSUNG core */
 #define CONFIG_S5P 1   /* which is in a S5P Family */
+#define CONFIG_EXYNOS4 1   /* EXYNOS4 Family */
 #define CONFIG_EXYNOS4210  1   /* which is in a EXYNOS4210 */
 #define CONFIG_UNIVERSAL   1   /* working with Universal */
 
diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h
index 93c25da..24fbac0 100644
--- a/include/configs/smdkv310.h
+++ b/include/configs/smdkv310.h
@@ -28,6 +28,7 @@
 /* High Level Configuration Options */
 #define CONFIG_SAMSUNG 1   /* in a SAMSUNG core */
 #define CONFIG_S5P 1   /* S5P Family */
+#define CONFIG_EXYNOS4 1   /* EXYNOS4 Family */
 #define CONFIG_EXYNOS4210  1   /* which is a EXYNOS4210 SoC */
 #define CONFIG_SMDKV3101   /* working with 
SMDKV310*/
 
-- 
1.7.5.4


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH 0/6] Add SMDK5250 board support

2011-12-22 Thread Chander Kashyap
This patchset add support for Samsung's SMDK5250 board based on
EXYNOS5250 based SoC. It also adds support for MMC SPL booting.

The porting is done by Samsung engineers at HQ in System LSI Team.
I am contributing in upstreaming the code for the board.

These patches are made on top of on the following patchset:
"[PATCH 0/2] Exynos Related fixes"

Chander Kashyap (6):
  Exynos: Add CONFIG_EXYNOS4 Macro to EXYNOS4 based boards
  Exynos: Clock.c: Use CONFIG_SYS_CLK_FREQ macro
  Exynos: Clock.c: Replace exynos4 prefix with exynos
  EEYNOS: Add SMDK5250 board support
  EXYNOS: SMDK5250: Add MMC SPL support
  SMDK5250: enable device tree support

 MAINTAINERS  |1 +
 arch/arm/cpu/armv7/exynos/clock.c|   80 ++--
 arch/arm/include/asm/arch-exynos/clock.h |  232 +
 arch/arm/include/asm/arch-exynos/clock_exynos4.h |  255 +
 arch/arm/include/asm/arch-exynos/clock_exynos5.h |  352 +
 arch/arm/include/asm/arch-exynos/cpu.h   |   71 ++--
 arch/arm/include/asm/arch-exynos/cpu_exynos4.h   |   51 ++
 arch/arm/include/asm/arch-exynos/cpu_exynos5.h   |   39 ++
 arch/arm/include/asm/arch-exynos/gpio.h  |   51 ++-
 board/samsung/smdk5250/Makefile  |   64 +++
 board/samsung/smdk5250/lowlevel_init.S   |  524 +++
 board/samsung/smdk5250/mem_setup.S   |  600 ++
 board/samsung/smdk5250/mmc_boot.c|   58 ++
 board/samsung/smdk5250/smdk5250.c|  125 +
 board/samsung/smdk5250/smdk5250_setup.h  |  583 +
 board/samsung/smdk5250/tools/mkexynos_image.c|  117 +
 boards.cfg   |1 +
 include/configs/origen.h |1 +
 include/configs/s5pc210_universal.h  |2 +
 include/configs/smdk5250.h   |  188 +++
 include/configs/smdkv310.h   |1 +
 21 files changed, 3094 insertions(+), 302 deletions(-)
 create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos4.h
 create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos5.h
 create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos4.h
 create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos5.h
 create mode 100644 board/samsung/smdk5250/Makefile
 create mode 100644 board/samsung/smdk5250/lowlevel_init.S
 create mode 100644 board/samsung/smdk5250/mem_setup.S
 create mode 100644 board/samsung/smdk5250/mmc_boot.c
 create mode 100644 board/samsung/smdk5250/smdk5250.c
 create mode 100644 board/samsung/smdk5250/smdk5250_setup.h
 create mode 100644 board/samsung/smdk5250/tools/mkexynos_image.c
 create mode 100644 include/configs/smdk5250.h

-- 
1.7.5.4


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH 6/6] SMDK5250: enable device tree support

2011-12-22 Thread Chander Kashyap
Enable passing a flattened device tree to the kernel.

Signed-off-by: Chander Kashyap 
---
 include/configs/smdk5250.h |3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
index d99dfd0..31f56fd 100644
--- a/include/configs/smdk5250.h
+++ b/include/configs/smdk5250.h
@@ -182,4 +182,7 @@
 #define CONFIG_SYS_INIT_SP_ADDR(CONFIG_SYS_LOAD_ADDR - 0x100)
 #define MMC_MAX_CHANNEL5
 
+/* Enable devicetree support */
+#define CONFIG_OF_LIBFDT
+
 #endif /* __CONFIG_H */
-- 
1.7.5.4


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[PATCH 5/6] EXYNOS: SMDK5250: Add MMC SPL support

2011-12-22 Thread Chander Kashyap
This patch adds support for mmc spl booting.

Signed-off-by: Chander Kashyap 
---
 board/samsung/smdk5250/Makefile   |   16 
 board/samsung/smdk5250/mmc_boot.c |   58 
 board/samsung/smdk5250/tools/mkexynos_image.c |  117 +
 include/configs/smdk5250.h|3 +
 4 files changed, 194 insertions(+), 0 deletions(-)
 create mode 100644 board/samsung/smdk5250/mmc_boot.c
 create mode 100644 board/samsung/smdk5250/tools/mkexynos_image.c

diff --git a/board/samsung/smdk5250/Makefile b/board/samsung/smdk5250/Makefile
index a26f896..0e8c05a 100644
--- a/board/samsung/smdk5250/Makefile
+++ b/board/samsung/smdk5250/Makefile
@@ -26,18 +26,34 @@ LIB = $(obj)lib$(BOARD).o
 
 SOBJS  := lowlevel_init.o
 SOBJS  += mem_setup.o
+
+ifndef CONFIG_SPL_BUILD
 COBJS  += smdk5250.o
+endif
+
+ifdef CONFIG_SPL_BUILD
+COBJS  += mmc_boot.o
+endif
 
 SRCS   := $(SOBJS:.o=.S) $(COBJS:.o=.c)
 OBJS   := $(addprefix $(obj),$(COBJS) $(SOBJS))
 
 ALL:=   $(obj).depend $(LIB)
 
+ifdef CONFIG_SPL_BUILD
+ALL+= $(OBJTREE)/tools/mk$(BOARD)spl
+endif
+
 all:   $(ALL)
 
 $(LIB):$(OBJS)
$(call cmd_link_o_target, $(OBJS))
 
+ifdef CONFIG_SPL_BUILD
+$(OBJTREE)/tools/mk$(BOARD)spl:tools/mkexynos_image.c
+   $(HOSTCC) tools/mkexynos_image.c -o $(OBJTREE)/tools/mk$(BOARD)spl
+endif
+
 #
 
 # defines $(obj).depend target
diff --git a/board/samsung/smdk5250/mmc_boot.c 
b/board/samsung/smdk5250/mmc_boot.c
new file mode 100644
index 000..669c1a3
--- /dev/null
+++ b/board/samsung/smdk5250/mmc_boot.c
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2011 Samsung Electronics
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#include
+#include
+
+/*
+* Copy U-boot from mmc to RAM:
+* COPY_BL2_FNPTR_ADDR: Address in iRAM, which Contains
+* Pointer to API (Data transfer from mmc to ram)
+*/
+void copy_uboot_to_ram(void)
+{
+   u32 (*copy_bl2)(u32, u32, u32) = (void *) *(u32 *)COPY_BL2_FNPTR_ADDR;
+
+   copy_bl2(BL2_START_OFFSET, BL2_SIZE_BLOC_COUNT, CONFIG_SYS_TEXT_BASE);
+}
+
+void board_init_f(unsigned long bootflag)
+{
+   __attribute__((noreturn)) void (*uboot)(void);
+   copy_uboot_to_ram();
+
+   /* Jump to U-Boot image */
+   uboot = (void *)CONFIG_SYS_TEXT_BASE;
+   (*uboot)();
+   /* Never returns Here */
+}
+
+/* Place Holders */
+void board_init_r(gd_t *id, ulong dest_addr)
+{
+   /* Function attribute is no-return */
+   /* This Function never executes */
+   while (1)
+   ;
+}
+
+void save_boot_params(u32 r0, u32 r1, u32 r2, u32 r3) {}
diff --git a/board/samsung/smdk5250/tools/mkexynos_image.c 
b/board/samsung/smdk5250/tools/mkexynos_image.c
new file mode 100644
index 000..e2b7805
--- /dev/null
+++ b/board/samsung/smdk5250/tools/mkexynos_image.c
@@ -0,0 +1,117 @@
+/*
+ * Copyright (C) 2011 Samsung Electronics
+ *
+ * See file CREDITS for list of people who contributed to this
+ * project.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ */
+
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+#include 
+
+#define CHECKSUM_OFFSET(14*1024-4)
+#define BUFSIZE(16*1024)
+#define FILE_PERM  (S_IRUSR | S_IWUSR | S_IRGRP \
+   | S_IWGRP | S_IROTH | S_IWOTH)
+/*
+* Requirement:
+* IROM code reads first 14K bytes from boot device.
+* It then calculates the checksum of 14K-4 bytes and compare with da

[PATCH 3/6] Exynos: Clock.c: Replace exynos4 prefix with exynos

2011-12-22 Thread Chander Kashyap
Replace exynos4 prefix with exynos in arch/arm/cpu/armv7/exynos/clock.c
as clock.c is common for exynos architecture. By doing so automatic
selection of appropriate clock structure can be done.

As per above reason replace exynos4_clock to exynos_clock in clock.h
header file.

Signed-off-by: Chander Kashyap 
---
 arch/arm/cpu/armv7/exynos/clock.c|   50 +++---
 arch/arm/include/asm/arch-exynos/clock.h |2 +-
 2 files changed, 26 insertions(+), 26 deletions(-)

diff --git a/arch/arm/cpu/armv7/exynos/clock.c 
b/arch/arm/cpu/armv7/exynos/clock.c
index 4d92c53..b101f96 100644
--- a/arch/arm/cpu/armv7/exynos/clock.c
+++ b/arch/arm/cpu/armv7/exynos/clock.c
@@ -26,11 +26,11 @@
 #include 
 #include 
 
-/* exynos4: return pll clock frequency */
-static unsigned long exynos4_get_pll_clk(int pllreg)
+/* exynos: return pll clock frequency */
+static unsigned long exynos_get_pll_clk(int pllreg)
 {
-   struct exynos4_clock *clk =
-   (struct exynos4_clock *)samsung_get_base_clock();
+   struct exynos_clock *clk =
+   (struct exynos_clock *)samsung_get_base_clock();
unsigned long r, m, p, s, k = 0, mask, fout;
unsigned int freq;
 
@@ -92,11 +92,11 @@ static unsigned long exynos4_get_pll_clk(int pllreg)
return fout;
 }
 
-/* exynos4: return ARM clock frequency */
-static unsigned long exynos4_get_arm_clk(void)
+/* exynos: return ARM clock frequency */
+static unsigned long exynos_get_arm_clk(void)
 {
-   struct exynos4_clock *clk =
-   (struct exynos4_clock *)samsung_get_base_clock();
+   struct exynos_clock *clk =
+   (struct exynos_clock *)samsung_get_base_clock();
unsigned long div;
unsigned long armclk;
unsigned int core_ratio;
@@ -114,11 +114,11 @@ static unsigned long exynos4_get_arm_clk(void)
return armclk;
 }
 
-/* exynos4: return pwm clock frequency */
-static unsigned long exynos4_get_pwm_clk(void)
+/* exynos: return pwm clock frequency */
+static unsigned long exynos_get_pwm_clk(void)
 {
-   struct exynos4_clock *clk =
-   (struct exynos4_clock *)samsung_get_base_clock();
+   struct exynos_clock *clk =
+   (struct exynos_clock *)samsung_get_base_clock();
unsigned long pclk, sclk;
unsigned int sel;
unsigned int ratio;
@@ -157,11 +157,11 @@ static unsigned long exynos4_get_pwm_clk(void)
return pclk;
 }
 
-/* exynos4: return uart clock frequency */
-static unsigned long exynos4_get_uart_clk(int dev_index)
+/* exynos: return uart clock frequency */
+static unsigned long exynos_get_uart_clk(int dev_index)
 {
-   struct exynos4_clock *clk =
-   (struct exynos4_clock *)samsung_get_base_clock();
+   struct exynos_clock *clk =
+   (struct exynos_clock *)samsung_get_base_clock();
unsigned long uclk, sclk;
unsigned int sel;
unsigned int ratio;
@@ -204,11 +204,11 @@ static unsigned long exynos4_get_uart_clk(int dev_index)
return uclk;
 }
 
-/* exynos4: set the mmc clock */
-static void exynos4_set_mmc_clk(int dev_index, unsigned int div)
+/* exynos: set the mmc clock */
+static void exynos_set_mmc_clk(int dev_index, unsigned int div)
 {
-   struct exynos4_clock *clk =
-   (struct exynos4_clock *)samsung_get_base_clock();
+   struct exynos_clock *clk =
+   (struct exynos_clock *)samsung_get_base_clock();
unsigned int addr;
unsigned int val;
 
@@ -233,25 +233,25 @@ static void exynos4_set_mmc_clk(int dev_index, unsigned 
int div)
 
 unsigned long get_pll_clk(int pllreg)
 {
-   return exynos4_get_pll_clk(pllreg);
+   return exynos_get_pll_clk(pllreg);
 }
 
 unsigned long get_arm_clk(void)
 {
-   return exynos4_get_arm_clk();
+   return exynos_get_arm_clk();
 }
 
 unsigned long get_pwm_clk(void)
 {
-   return exynos4_get_pwm_clk();
+   return exynos_get_pwm_clk();
 }
 
 unsigned long get_uart_clk(int dev_index)
 {
-   return exynos4_get_uart_clk(dev_index);
+   return exynos_get_uart_clk(dev_index);
 }
 
 void set_mmc_clk(int dev_index, unsigned int div)
 {
-   exynos4_set_mmc_clk(dev_index, div);
+   exynos_set_mmc_clk(dev_index, div);
 }
diff --git a/arch/arm/include/asm/arch-exynos/clock.h 
b/arch/arm/include/asm/arch-exynos/clock.h
index 483c911..ecd0cb1 100644
--- a/arch/arm/include/asm/arch-exynos/clock.h
+++ b/arch/arm/include/asm/arch-exynos/clock.h
@@ -23,7 +23,7 @@
 #define __ASM_ARM_ARCH_CLOCK_H_
 
 #ifndef __ASSEMBLY__
-struct exynos4_clock {
+struct exynos_clock {
unsigned char   res1[0x4200];
unsigned intsrc_leftbus;
unsigned char   res2[0x1fc];
-- 
1.7.5.4


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [PATCHv2] Regulator: Add Anatop regulator driver

2011-12-22 Thread Mark Brown
On Wed, Dec 21, 2011 at 05:03:31PM +0800, Ying-Chun Liu (PaulLiu) wrote:
> From: "Ying-Chun Liu (PaulLiu)" 
> 
> Anatop regulator driver is used by i.MX6 SoC. The regulator provides
> controlling the voltage of PU, CORE, SOC, and some devices. This patch
> adds the Anatop regulator driver.

It's still not at all clear to me what an "Anatop" regulator is or why
everything is being done as platform data.

> +config REGULATOR_ANATOP
> + tristate "ANATOP LDO regulators"
> + depends on SOC_IMX6
> + default y if SOC_IMX6

This isn't great, it might be on your reference design but people are
going to change that.

> +#include 
> +#include 

Why does your regulator driver need this?  That suggests a layering
violation.

> +static int anatop_set_voltage(struct regulator_dev *reg, int min_uV,
> +   int max_uV, unsigned *selector)
> +{
> + struct anatop_regulator *anatop_reg = rdev_get_drvdata(reg);
> + u32 val, rega;
> + int uv;
> +
> + uv = max_uV;

This looks wrong, you should be aiming to get as close as possible to
the minimum not the maximum.

> + if (anatop_reg->rdata->control_reg) {
> + val = anatop_reg->rdata->min_bit_val +
> + (uv - reg->constraints->min_uV) / 25000;

You're not checking that the resulting voltage matches the constraints
or updating selector.

> + } else {
> + pr_debug("Regulator not supported.\n");

Why are you logging an error as a debug message?  You should also use
dev_ logging.

> +static int anatop_get_voltage(struct regulator_dev *reg)
> +{

Implement this as get_voltage_sel()

> +static int anatop_enable(struct regulator_dev *reg)
> +{
> + return 0;
> +}
> +
> +static int anatop_disable(struct regulator_dev *reg)
> +{
> + return 0;
> +}
> +
> +static int anatop_is_enabled(struct regulator_dev *reg)
> +{
> + return 1;
> +}

The regulator clearly doesn't have enable or disable support at all, it
shouldn't have these operations.

> +static struct regulator_ops anatop_rops = {
> + .set_voltage= anatop_set_voltage,
> + .get_voltage= anatop_get_voltage,

You should implement list_voltage() as well.

> +static struct regulator_desc anatop_reg_desc[] = {
> + {
> + .name = "vddpu",
> + .id = ANATOP_VDDPU,
> + .ops = &anatop_rops,
> + .irq = 0,

No need to set zero fields.  It's also *very* odd to see a table
explicitly listing regulators by name in a driver that doesn't know
which registers it's working with.

> +int anatop_regulator_probe(struct platform_device *pdev)
> +{
> + struct regulator_desc *rdesc;
> + struct regulator_dev *rdev;
> + struct anatop_regulator *sreg;
> + struct regulator_init_data *initdata;
> +
> + sreg = platform_get_drvdata(pdev);
> + initdata = pdev->dev.platform_data;
> + sreg->cur_current = 0;
> + sreg->next_current = 0;
> + sreg->cur_voltage = 0;

You're trying to read the driver data but you haven't set any.  This is
going to crash.

> + init_waitqueue_head(&sreg->wait_q);

This waitqueue appears to never be referenced.

> + if (pdev->id > ANATOP_SUPPLY_NUM) {
> + rdesc = kzalloc(sizeof(struct regulator_desc), GFP_KERNEL);

devm_kzalloc() and check the return value.

> + memcpy(rdesc, &anatop_reg_desc[ANATOP_SUPPLY_NUM],
> + sizeof(struct regulator_desc));
> + rdesc->name = kstrdup(sreg->rdata->name, GFP_KERNEL);

This looks really confused, you've got some regulators embedded into the
driver and some with things passed in as platform data.  Either approach
should be fine but mixing both complicates things needlessly.

> + } else
> + rdesc = &anatop_reg_desc[pdev->id];

Use braces on both sides of the if.

> + pr_debug("probing regulator %s %s %d\n",
> + sreg->rdata->name,
> + rdesc->name,
> + pdev->id);

A lot of this logging looks like it's just replicating logging from the
core.

> + /* register regulator */
> + rdev = regulator_register(rdesc, &pdev->dev,
> +   initdata, sreg);

The driver isn't doing anything to for example map the register bank
it's using.

> +int anatop_register_regulator(
> + struct anatop_regulator *reg_data, int reg,
> +   struct regulator_init_data *initdata)
> +{

Eew, no.  Just register the platform device normally.

> + int mode;
> + int cur_voltage;
> + int cur_current;
> + int next_current;

These appear to be unused and are rather obscure.

> +struct anatop_regulator_data {
> + char name[80];

const char *.

> + char *parent_name;

What's this?

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[ANN] Automated upstream syncing for Linaro Android tree

2011-12-22 Thread Paul Sokolovsky
Hello,

This should have gone more than a week ago, but was "lost" in
click-thru work. Anyway, we now finally have automatic syncing with
upstreams for our tree - that includes AOSP and other components we
mirror. It runs for more than 2 weeks now and works pretty well. For
AOSP, some components may be missing with upstream version upgrades,
then just please submit a ticket to have them picked up (manual op),
like this one:

https://bugs.launchpad.net/linaro-android-infrastructure/+bug/905664

to ensure timely processing.


Thanks, and Merry Christmas!
Paul

Linaro.org | Open source software for ARM SoCs
Follow Linaro: http://www.facebook.com/pages/Linaro
http://twitter.com/#!/linaroorg - http://www.linaro.org/linaro-blog

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


[ACTIVITY] Status of memory management closing 11.12

2011-12-22 Thread Ilias Biris
Hi folks,

I went ahead and checked what is the status of the UMM effort as 2011 is
closing to an end. What follows is my attempt to summarise the status,
collating the pieces from the latest announcements and changelogs and
having discussed it briefly with Jesse and Rob. Feel free to comment if
there is something missing or not correct:

A. CMA - Contiguous memory allocator. This is in its v17 incarnation at
the moment (a v18 is in preparation but not released yet). v17  shares
the code with memory compaction subsystem, not the hotplug like it was
before (change has been suggested by Mel Gorman) and there are also a
few fixes here and there, like addressing most of the comments from
Andrew Morton and Mel Gorman in the rest of the CMA code, fixing broken
initialization on ARM systems with DMA zone enabled and rebasing the
code on v3.2-rc2 kernel.

An issue has been noted in linaro-dev from the TI landing team : without
any highmem the code is working great, but with HIGHMEM  inclusion of
the CMA v17 consistently causes failure during DMA init. This is
expected to be fixed soon (perhaps in v18?). In meantime it is
suggested using 2G/2G memory split as a workaround (Kernel Features ->
Memory split -> 2G/2G user/kernel split).

B. dma mapping API - DMA-mapping framework redesign for ARM
architecture: this is in the v4 now. It includes a few minor changes
since last version. The changes are mainly on the IOMMU mapper, keeping
the DMA-mapping redesign patches almost unchanged. The code is rebased
onto v3.2-rc4 kernel + IOMMU/next branch to include latest changes from
IOMMU kernel tree. This series also contains support for mapping with
pages larger than 4KiB using new, extended IOMMU API, and did a general
cleanup of the DMA mapping implementation. However it seems that this
patchset  "attempts to fix everyone at once".  It has been suggested
that instead of trying to do that the implementation should give
sufficient transition period - for example just adding the new methods
now and only removing them in the following merge window when all the
architectures have had a chance to migrate.

C. dmabuf - a DMA-buf object sharing framework: this is now in its 3rd
version. The newest version incorporates changes as requested during the
review, such as - replacing BUG_ON with WARN_ON at various  places,
removing mmap() fop and dma_buf_op, also the sg_sync* operations, and
documenting that mmap is not allowed for exported buffer, adding error
checks,  replacing  EXPORT_SYMBOL with EXPORT_SYMBOL_GPL and fixing some
cosmetic/documentation items. There are still some items under
discusion such as userspace mmap support, more advanced (and more
strictly specified) coherency models and shared infrastructure for
implementing exporters. However, there is a suggestion that these items
 will become much clearer once we have a few example drivers at  hand
and a better understanding of what cases need to be handled better.

D. Finally some repositories - where can you find the code to try it  out:
 * git://git.linaro.org/people/jessebarker/linaro-mm-sig/linux.git
contains (for the moment) 6 branches:
  + cma-v17 == unadulterated v3.2-rc4 + cma v17 patchset
  + dma-mapping-v4 == unadulterated v3.2-rc4 + dma-mapping v4 patchset
  + android-cma-v17 == john stultz's androidization tree based upon
unadulterated v3.2-rc4 + cma v17 patchset
  + android-dma-mapping-v4 == john stultz's androidization tree based
upon unadulterated v3.2-rc4 + dma-mapping v4 patchset

Also note these repos:
- https://github.com/robclark/kernel-omap4/commits/drmplane-dmabuf
contains patches to enable sharing of buffers between drm and v4l2,

Rob commented that it isn't really identified yet which tree to push
dmabuf through.. airlied has volunteered to push via drm tree, which is ok

- git://git.linaro.org/people/bgaignard/linux-snowball-cma-test.git
contains a first version of the CMA testing scripts for LAVA (snowball
specific at least for now)


Best regards,

-- 
Ilias Biris ilias.bi...@linaro.org
Project Manager, Linaro
M: +358504839608, IRC: ibiris Skype: ilias_biris
Linaro.org│ Open source software for ARM SoCs

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Linaro Android testing for Pandaboard

2011-12-22 Thread Alan Chuang
Hi All:

Since Panda board is now officially supported by Google, I decided to 
do a quick testing between Linaro build (release 11.11 - v2.3.7), Linaro ICS 
preview (v4.0.1) and Google's ICS build for Panda-board (v4.0.1).

Here are what I found:


1.  Google's ICS build detects the resolution to be 672(H)x1280(W) on my 
monitor while Linaro builds default to 480x640.

I manually changed the screen resolution in boot.scr to be 
omapfb.mode=dvi:1280x672MR-24@60. The linaro ICS preview can now come up with 
672x1280 resolution, but I encountered graph driver crash in 11.11 release 
(v2.3.7).



The video output came out on HDMI port for 11.11 release instead of DVI port as 
in Linaro ICS previous & Google's ICS build.



This seems to tell me that there is a problem with graphic driver in 11.11 
official release and EDID detection is not working for Linaro builds.



2.  I ran Sunspider & 0xbench in Linaro ICS preview (in 480x640 resolution) 
& Google's ICS build for Panda-board (in 1280x672 resolution).

Linaro ICS preview has slightly better result in Sunspider testing, but falls 
significantly behind in 0xbench. Changing the resolution to 1280x672 on the 
Linaro ICS preview build shows noticeable lag in UI performance.



This seems to suggest that Linaro ICS preview doesn't enable GPU.

I simply followed the instructions in the release note to populate SD cards 
with proper images for testing.

Has anyone done similar testing? Is the above observation consistent with your 
result?

Thanks,

Alan Chuang

-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [PATCH] ohci-hcd: ohci-hcd: use usleep_range() instead of mdelay()

2011-12-22 Thread Alan Stern
On Wed, 21 Dec 2011, Dmitry Antipov wrote:

>  From ac60fe289eef3d81009f2b14a12acbac3e71878b Mon Sep 17 00:00:00 2001
> From: Dmitry Antipov 
> Date: Wed, 21 Dec 2011 11:05:27 +0400
> Subject: [PATCH] ohci-hcd: use usleep_range() instead of mdelay()
> 
> ---
>   drivers/usb/host/ohci-hcd.c |4 +++-
>   1 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/usb/host/ohci-hcd.c b/drivers/usb/host/ohci-hcd.c
> index b263919..a6d58da 100644
> --- a/drivers/usb/host/ohci-hcd.c
> +++ b/drivers/usb/host/ohci-hcd.c
> @@ -574,6 +574,7 @@ static int ohci_run (struct ohci_hcd *ohci)
>   u32 mask, val;
>   int first = ohci->fminterval == 0;
>   struct usb_hcd  *hcd = ohci_to_hcd(ohci);
> + unsigned long   usecs;
> 
>   disable (ohci);
> 
> @@ -724,7 +725,8 @@ retry:
>   spin_unlock_irq (&ohci->lock);
> 
>   // POTPGT delay is bits 24-31, in 2 ms units.
> - mdelay ((val >> 23) & 0x1fe);
> + usecs = ((val >> 23) & 0x1fe) * USEC_PER_MSEC;
> + usleep_range(usecs, usecs + 1000);
>   hcd->state = HC_STATE_RUNNING;
> 
>   if (quirk_zfmicro(ohci)) {

Why not simply use msleep()?

Alan Stern


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Patches to compile ICS with the 4.6 toolchain

2011-12-22 Thread Tony Mansson
Hi,

Bero's patches to compile ICS with the 4.6 toolchain are available in an
easy to use package.

They are released to
http://releases.linaro.org/11.12/components/android/ics-gcc-patches/

/Tony
___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


RE: Linaro Android testing for Pandaboard

2011-12-22 Thread Alan Chuang
It looks like I should have waited one more day for the 11.12 release. Good 
work on 11.12.

Cheers,
Alan Chuang

From: linaro-dev-boun...@lists.linaro.org 
[mailto:linaro-dev-boun...@lists.linaro.org] On Behalf Of Alan Chuang
Sent: Thursday, December 22, 2011 9:57 PM
To: linaro-dev@lists.linaro.org
Subject: Linaro Android testing for Pandaboard

Hi All:

Since Panda board is now officially supported by Google, I decided to 
do a quick testing between Linaro build (release 11.11 - v2.3.7), Linaro ICS 
preview (v4.0.1) and Google's ICS build for Panda-board (v4.0.1).

Here are what I found:


1.  Google's ICS build detects the resolution to be 672(H)x1280(W) on my 
monitor while Linaro builds default to 480x640.

I manually changed the screen resolution in boot.scr to be 
omapfb.mode=dvi:1280x672MR-24@60. The linaro ICS preview can now come up with 
672x1280 resolution, but I encountered graph driver crash in 11.11 release 
(v2.3.7).



The video output came out on HDMI port for 11.11 release instead of DVI port as 
in Linaro ICS previous & Google's ICS build.



This seems to tell me that there is a problem with graphic driver in 11.11 
official release and EDID detection is not working for Linaro builds.



2.  I ran Sunspider & 0xbench in Linaro ICS preview (in 480x640 resolution) 
& Google's ICS build for Panda-board (in 1280x672 resolution).

Linaro ICS preview has slightly better result in Sunspider testing, but falls 
significantly behind in 0xbench. Changing the resolution to 1280x672 on the 
Linaro ICS preview build shows noticeable lag in UI performance.



This seems to suggest that Linaro ICS preview doesn't enable GPU.

I simply followed the instructions in the release note to populate SD cards 
with proper images for testing.

Has anyone done similar testing? Is the above observation consistent with your 
result?

Thanks,

Alan Chuang

-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.

-- IMPORTANT NOTICE: The contents of this email and any attachments are 
confidential and may also be privileged. If you are not the intended recipient, 
please notify the sender immediately and do not disclose the contents to any 
other person, use it for any purpose, or store or copy the information in any 
medium. Thank you.___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [U-Boot] [PATCH 6/6] SMDK5250: enable device tree support

2011-12-22 Thread Minkyu Kang
Dear Chander Kashyap,

On 22 December 2011 19:52, Chander Kashyap  wrote:
> Enable passing a flattened device tree to the kernel.
>
> Signed-off-by: Chander Kashyap 
> ---
>  include/configs/smdk5250.h |    3 +++
>  1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
> index d99dfd0..31f56fd 100644
> --- a/include/configs/smdk5250.h
> +++ b/include/configs/smdk5250.h
> @@ -182,4 +182,7 @@
>  #define CONFIG_SYS_INIT_SP_ADDR        (CONFIG_SYS_LOAD_ADDR - 0x100)
>  #define MMC_MAX_CHANNEL                5
>
> +/* Enable devicetree support */
> +#define CONFIG_OF_LIBFDT
> +

Why you separate this patch?

Thanks.
Minkyu Kang.
-- 
from. prom.
www.promsoft.net

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [U-Boot] [PATCH 4/6] EEYNOS: Add SMDK5250 board support

2011-12-22 Thread Minkyu Kang
Dear Chander Kashyap,

On 22 December 2011 19:52, Chander Kashyap  wrote:
> SMDK5250 board is based on Samsungs EXYNOS5250 SoC.
>
> Signed-off-by: Chander Kashyap 
> ---
>  MAINTAINERS                                      |    1 +
>  arch/arm/cpu/armv7/exynos/clock.c                |   24 +-
>  arch/arm/include/asm/arch-exynos/clock.h         |  232 +
>  arch/arm/include/asm/arch-exynos/clock_exynos4.h |  255 +
>  arch/arm/include/asm/arch-exynos/clock_exynos5.h |  352 +
>  arch/arm/include/asm/arch-exynos/cpu.h           |   71 ++--
>  arch/arm/include/asm/arch-exynos/cpu_exynos4.h   |   51 ++
>  arch/arm/include/asm/arch-exynos/cpu_exynos5.h   |   39 ++
>  arch/arm/include/asm/arch-exynos/gpio.h          |   51 ++-
>  board/samsung/smdk5250/Makefile                  |   48 ++
>  board/samsung/smdk5250/lowlevel_init.S           |  524 +++
>  board/samsung/smdk5250/mem_setup.S               |  600 
> ++
>  board/samsung/smdk5250/smdk5250.c                |  125 +
>  board/samsung/smdk5250/smdk5250_setup.h          |  583 +
>  boards.cfg                                       |    1 +
>  include/configs/smdk5250.h                       |  182 +++
>  16 files changed, 2867 insertions(+), 272 deletions(-)
>  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos4.h
>  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos5.h
>  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos4.h
>  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos5.h
>  create mode 100644 board/samsung/smdk5250/Makefile
>  create mode 100644 board/samsung/smdk5250/lowlevel_init.S
>  create mode 100644 board/samsung/smdk5250/mem_setup.S
>  create mode 100644 board/samsung/smdk5250/smdk5250.c
>  create mode 100644 board/samsung/smdk5250/smdk5250_setup.h
>  create mode 100644 include/configs/smdk5250.h

Please split this patch for board and SoC.

>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index a56ca10..abf88be 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -704,6 +704,7 @@ Chander Kashyap 
>
>        origen                  ARM ARMV7 (EXYNOS4210 SoC)
>        SMDKV310                ARM ARMV7 (EXYNOS4210 SoC)
> +       SMDK5250                ARM ARMV7 (EXYNOS5250 SoC)
>
>  Torsten Koschorrek 
>        scb9328         ARM920T (i.MXL)
> diff --git a/arch/arm/cpu/armv7/exynos/clock.c 
> b/arch/arm/cpu/armv7/exynos/clock.c
> index b101f96..88e2fc0 100644
> --- a/arch/arm/cpu/armv7/exynos/clock.c
> +++ b/arch/arm/cpu/armv7/exynos/clock.c
> @@ -125,10 +125,14 @@ static unsigned long exynos_get_pwm_clk(void)
>
>        if (s5p_get_cpu_rev() == 0) {
>                /*
> -                * CLK_SRC_PERIL0
> +                * CLK_SRC_{PERIL0 | PERIC0}
>                 * PWM_SEL [27:24]
>                 */
> +#ifdef CONFIG_EXYNOS5
> +               sel = readl(&clk->src_peric0);
> +#else
>                sel = readl(&clk->src_peril0);
> +#endif

NAK.
We don't allow to using ifdef for separating SoCs.
Please refer s5pc1xx case for solve it.
This comment apply to this patch globally.
Please remove '#ifdef CONFIG_EXYNOS5'.

Thanks.
Minkyu Kang.
-- 
from. prom.
www.promsoft.net

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [U-Boot] [PATCH 1/6] Exynos: Add CONFIG_EXYNOS4 Macro to EXYNOS4 based boards

2011-12-22 Thread Minkyu Kang
Dear Chander Kashyap,

On 22 December 2011 19:52, Chander Kashyap  wrote:
> Exynos architecture has varients like exynos4 and exynos5. In order to
> identify the exynos4 architecture, add CONFIG_EXYNOS4 macro to exynos4
> based boards i.e. Origen, smdkv310 and s5pc210_universal.
>
> Signed-off-by: Chander Kashyap 
> ---
>  include/configs/origen.h            |    1 +
>  include/configs/s5pc210_universal.h |    1 +
>  include/configs/smdkv310.h          |    1 +
>  3 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/include/configs/origen.h b/include/configs/origen.h
> index cd502d1..53bd5fc 100644
> --- a/include/configs/origen.h
> +++ b/include/configs/origen.h
> @@ -28,6 +28,7 @@
>  /* High Level Configuration Options */
>  #define CONFIG_SAMSUNG                 1       /* SAMSUNG core */
>  #define CONFIG_S5P                     1       /* S5P Family */
> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */

Why need this define?

>  #define CONFIG_EXYNOS4210              1       /* which is a EXYNOS4210 SoC 
> */
>  #define CONFIG_ORIGEN                  1       /* working with ORIGEN*/
>
> diff --git a/include/configs/s5pc210_universal.h 
> b/include/configs/s5pc210_universal.h
> index be000cb..33c4600 100644
> --- a/include/configs/s5pc210_universal.h
> +++ b/include/configs/s5pc210_universal.h
> @@ -32,6 +32,7 @@
>  */
>  #define CONFIG_SAMSUNG         1       /* in a SAMSUNG core */
>  #define CONFIG_S5P             1       /* which is in a S5P Family */
> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */
>  #define CONFIG_EXYNOS4210      1       /* which is in a EXYNOS4210 */
>  #define CONFIG_UNIVERSAL       1       /* working with Universal */
>
> diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h
> index 93c25da..24fbac0 100644
> --- a/include/configs/smdkv310.h
> +++ b/include/configs/smdkv310.h
> @@ -28,6 +28,7 @@
>  /* High Level Configuration Options */
>  #define CONFIG_SAMSUNG                 1       /* in a SAMSUNG core */
>  #define CONFIG_S5P                     1       /* S5P Family */
> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */
>  #define CONFIG_EXYNOS4210              1       /* which is a EXYNOS4210 SoC 
> */
>  #define CONFIG_SMDKV310                        1       /* working with 
> SMDKV310*/
>

Thanks.
Minkyu Kang.
-- 
from. prom.
www.promsoft.net

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: Announce: Panda ICS SGX 1.8 on tilt-android-tracking

2011-12-22 Thread Andy Green

On 12/22/2011 12:06 PM, Somebody in the thread at some point said:

Hi Vishal -


Thanks for all the effort you guys put in to get it working. I will try
to get a 4.0.1 accelerated build working.


Thanks for looking at it!


Build 4 is based on 4.0.3 in which the dss/dsscomp headers in userspace
have been updated to the latest aosp kernel.There are few patches from
Lajos molnar which are missing I guess.

Upgrading SGX 1.8 driver to v55175 version we can get 4.0.3 running
again.

Here is the kernel tip:
http://android.git.linaro.org/gitweb?p=kernel/omap.git;a=shortlog;h=refs/heads/linaro-android-omap-panda-3.0



Okay, I will pick the updated patch and test. I guess this will be an
ongoing thing to keep on top of.


I forgot to mention two things

3) HDMI Audio is broken atm, Jassi is working on fixing that. Onboard
audio should be fine.

4) One of the advantages of running off tracking basis is we inherit all
the goodies from vanilla. In this kernel for Android same as in vanilla
you'll find working Panda onboard camera driver and Unified Memory
Allocator series among other improvements. In this way we can leverage
the work we're doing on vanilla twice, by having it appear automatically
at the Android kernel too.


Current tilt-android-tracking / android_omap4_defconfig ...

http://git.linaro.org/gitweb?p=landing-teams/working/ti/kernel.git;a=shortlog;h=refs/heads/tilt-android-tracking

... is working now at 1080p HDMI accelerated on Build 4.  I found two 
quirks, I think they're related to rootfs status or sdcard prep somehow


 - got a lot of "unfortunately xyz has stopped" messages until I 
changed the wallpaper, which seemed to be "no wallpaper" by default in 
my case.  I changed it to "magic smoke" and all those issues went away. 
 Example crash from logcat below if it means anything


E/AndroidRuntime( 1872): FATAL EXCEPTION: main
E/AndroidRuntime( 1872): java.lang.RuntimeException: createWindowSurface 
failed EGL_BAD_ALLOC
E/AndroidRuntime( 1872): 	at 
com.android.systemui.ImageWallpaper$DrawableEngine.initGL(ImageWallpaper.java:586)
E/AndroidRuntime( 1872): 	at 
com.android.systemui.ImageWallpaper$DrawableEngine.drawWallpaperWithOpenGL(ImageWallpaper.java:384)
E/AndroidRuntime( 1872): 	at 
com.android.systemui.ImageWallpaper$DrawableEngine.drawFrameLocked(ImageWallpaper.java:314)
E/AndroidRuntime( 1872): 	at 
com.android.systemui.ImageWallpaper$DrawableEngine.onSurfaceChanged(ImageWallpaper.java:260)
E/AndroidRuntime( 1872): 	at 
android.service.wallpaper.WallpaperService$Engine.updateSurface(WallpaperService.java:673)
E/AndroidRuntime( 1872): 	at 
android.service.wallpaper.WallpaperService$Engine.attach(WallpaperService.java:760)
E/AndroidRuntime( 1872): 	at 
android.service.wallpaper.WallpaperService$IWallpaperEngineWrapper.executeMessage(WallpaperService.java:1000)
E/AndroidRuntime( 1872): 	at 
com.android.internal.os.HandlerCaller$MyHandler.handleMessage(HandlerCaller.java:61)
E/AndroidRuntime( 1872): 	at 
android.os.Handler.dispatchMessage(Handler.java:99)

E/AndroidRuntime( 1872):at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 1872): 	at 
android.app.ActivityThread.main(ActivityThread.java:4424)
E/AndroidRuntime( 1872): 	at 
java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 1872): 	at 
java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 1872): 	at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
E/AndroidRuntime( 1872): 	at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)

E/AndroidRuntime( 1872):at dalvik.system.NativeStart.main(Native Method)
W/ActivityManager( 1401): Process com.android.systemui has crashed too 
many times: killing!


 - in 1080p, the wallpaper / desktop is vertically misaligned, it 
appears as if it's drawing from a vertical origin of -300 pixels or 
something.  It's otherwise perfect, and the system tray / clock / 
navigation buttons appear correctly aligned at the bottom.


 - similarly in settings, it does not fill the whole vertical space but 
stops at the same point the desktop ended, about 300 pixels vertically 
before it could have.


Otherwise, everything basic seems working fine.  Lot of things seem 
broken atm in the rootfs like wifi but that's understandable given the 
big change.


-Andy

--
Andy Green | TI Landing Team Leader
Linaro.org │ Open source software for ARM SoCs | Follow Linaro
http://facebook.com/pages/Linaro/155974581091106  - 
http://twitter.com/#!/linaroorg - http://linaro.org/linaro-blog


___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [U-Boot] [PATCH 4/6] EEYNOS: Add SMDK5250 board support

2011-12-22 Thread Chander Kashyap
Dear Minkyu Kang,

On 23 December 2011 09:51, Minkyu Kang  wrote:
>
> Dear Chander Kashyap,
>
> On 22 December 2011 19:52, Chander Kashyap  wrote:
> > SMDK5250 board is based on Samsungs EXYNOS5250 SoC.
> >
> > Signed-off-by: Chander Kashyap 
> > ---
> >  MAINTAINERS                                      |    1 +
> >  arch/arm/cpu/armv7/exynos/clock.c                |   24 +-
> >  arch/arm/include/asm/arch-exynos/clock.h         |  232 +
> >  arch/arm/include/asm/arch-exynos/clock_exynos4.h |  255 +
> >  arch/arm/include/asm/arch-exynos/clock_exynos5.h |  352 +
> >  arch/arm/include/asm/arch-exynos/cpu.h           |   71 ++--
> >  arch/arm/include/asm/arch-exynos/cpu_exynos4.h   |   51 ++
> >  arch/arm/include/asm/arch-exynos/cpu_exynos5.h   |   39 ++
> >  arch/arm/include/asm/arch-exynos/gpio.h          |   51 ++-
> >  board/samsung/smdk5250/Makefile                  |   48 ++
> >  board/samsung/smdk5250/lowlevel_init.S           |  524 +++
> >  board/samsung/smdk5250/mem_setup.S               |  600 
> > ++
> >  board/samsung/smdk5250/smdk5250.c                |  125 +
> >  board/samsung/smdk5250/smdk5250_setup.h          |  583 
> > +
> >  boards.cfg                                       |    1 +
> >  include/configs/smdk5250.h                       |  182 +++
> >  16 files changed, 2867 insertions(+), 272 deletions(-)
> >  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos4.h
> >  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos5.h
> >  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos4.h
> >  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos5.h
> >  create mode 100644 board/samsung/smdk5250/Makefile
> >  create mode 100644 board/samsung/smdk5250/lowlevel_init.S
> >  create mode 100644 board/samsung/smdk5250/mem_setup.S
> >  create mode 100644 board/samsung/smdk5250/smdk5250.c
> >  create mode 100644 board/samsung/smdk5250/smdk5250_setup.h
> >  create mode 100644 include/configs/smdk5250.h
>
> Please split this patch for board and SoC.

Ok
>
>
> >
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index a56ca10..abf88be 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -704,6 +704,7 @@ Chander Kashyap 
> >
> >        origen                  ARM ARMV7 (EXYNOS4210 SoC)
> >        SMDKV310                ARM ARMV7 (EXYNOS4210 SoC)
> > +       SMDK5250                ARM ARMV7 (EXYNOS5250 SoC)
> >
> >  Torsten Koschorrek 
> >        scb9328         ARM920T (i.MXL)
> > diff --git a/arch/arm/cpu/armv7/exynos/clock.c 
> > b/arch/arm/cpu/armv7/exynos/clock.c
> > index b101f96..88e2fc0 100644
> > --- a/arch/arm/cpu/armv7/exynos/clock.c
> > +++ b/arch/arm/cpu/armv7/exynos/clock.c
> > @@ -125,10 +125,14 @@ static unsigned long exynos_get_pwm_clk(void)
> >
> >        if (s5p_get_cpu_rev() == 0) {
> >                /*
> > -                * CLK_SRC_PERIL0
> > +                * CLK_SRC_{PERIL0 | PERIC0}
> >                 * PWM_SEL [27:24]
> >                 */
> > +#ifdef CONFIG_EXYNOS5
> > +               sel = readl(&clk->src_peric0);
> > +#else
> >                sel = readl(&clk->src_peril0);
> > +#endif
>
> NAK.
> We don't allow to using ifdef for separating SoCs.
> Please refer s5pc1xx case for solve it.
> This comment apply to this patch globally.
> Please remove '#ifdef CONFIG_EXYNOS5'.
>
I have tried to reuse the code. It is possible to remove
#ifdef CONFIG_EXYNOS5' in clock.c with cpu_is_s5pcXXX check.
Is it a acceptable solution? Or is it necessary to write SoC specific function
in clock.c as done in case of s5pc1xx/clock.c.

Please Advice
>
> Thanks.
> Minkyu Kang.
> --
> from. prom.
> www.promsoft.net




--
with warm regards,
Chander Kashyap

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [Samsung] [U-Boot] [PATCH 4/6] EEYNOS: Add SMDK5250 board support

2011-12-22 Thread Sachin Kamat
Hi Chander,

Subject line of patch: s/EEYNOS/EXYNOS

On 23 December 2011 11:21, Chander Kashyap wrote:

> Dear Minkyu Kang,
>
> On 23 December 2011 09:51, Minkyu Kang  wrote:
> >
> > Dear Chander Kashyap,
> >
> > On 22 December 2011 19:52, Chander Kashyap 
> wrote:
> > > SMDK5250 board is based on Samsungs EXYNOS5250 SoC.
> > >
> > > Signed-off-by: Chander Kashyap 
> > > ---
> > >  MAINTAINERS  |1 +
> > >  arch/arm/cpu/armv7/exynos/clock.c|   24 +-
> > >  arch/arm/include/asm/arch-exynos/clock.h |  232 +
> > >  arch/arm/include/asm/arch-exynos/clock_exynos4.h |  255 +
> > >  arch/arm/include/asm/arch-exynos/clock_exynos5.h |  352 +
> > >  arch/arm/include/asm/arch-exynos/cpu.h   |   71 ++--
> > >  arch/arm/include/asm/arch-exynos/cpu_exynos4.h   |   51 ++
> > >  arch/arm/include/asm/arch-exynos/cpu_exynos5.h   |   39 ++
> > >  arch/arm/include/asm/arch-exynos/gpio.h  |   51 ++-
> > >  board/samsung/smdk5250/Makefile  |   48 ++
> > >  board/samsung/smdk5250/lowlevel_init.S   |  524
> +++
> > >  board/samsung/smdk5250/mem_setup.S   |  600
> ++
> > >  board/samsung/smdk5250/smdk5250.c|  125 +
> > >  board/samsung/smdk5250/smdk5250_setup.h  |  583
> +
> > >  boards.cfg   |1 +
> > >  include/configs/smdk5250.h   |  182 +++
> > >  16 files changed, 2867 insertions(+), 272 deletions(-)
> > >  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos4.h
> > >  create mode 100644 arch/arm/include/asm/arch-exynos/clock_exynos5.h
> > >  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos4.h
> > >  create mode 100644 arch/arm/include/asm/arch-exynos/cpu_exynos5.h
> > >  create mode 100644 board/samsung/smdk5250/Makefile
> > >  create mode 100644 board/samsung/smdk5250/lowlevel_init.S
> > >  create mode 100644 board/samsung/smdk5250/mem_setup.S
> > >  create mode 100644 board/samsung/smdk5250/smdk5250.c
> > >  create mode 100644 board/samsung/smdk5250/smdk5250_setup.h
> > >  create mode 100644 include/configs/smdk5250.h
> >
> > Please split this patch for board and SoC.
>
> Ok
> >
> >
> > >
> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index a56ca10..abf88be 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -704,6 +704,7 @@ Chander Kashyap 
> > >
> > >origen  ARM ARMV7 (EXYNOS4210 SoC)
> > >SMDKV310ARM ARMV7 (EXYNOS4210 SoC)
> > > +   SMDK5250ARM ARMV7 (EXYNOS5250 SoC)
> > >
> > >  Torsten Koschorrek 
> > >scb9328 ARM920T (i.MXL)
> > > diff --git a/arch/arm/cpu/armv7/exynos/clock.c
> b/arch/arm/cpu/armv7/exynos/clock.c
> > > index b101f96..88e2fc0 100644
> > > --- a/arch/arm/cpu/armv7/exynos/clock.c
> > > +++ b/arch/arm/cpu/armv7/exynos/clock.c
> > > @@ -125,10 +125,14 @@ static unsigned long exynos_get_pwm_clk(void)
> > >
> > >if (s5p_get_cpu_rev() == 0) {
> > >/*
> > > -* CLK_SRC_PERIL0
> > > +* CLK_SRC_{PERIL0 | PERIC0}
> > > * PWM_SEL [27:24]
> > > */
> > > +#ifdef CONFIG_EXYNOS5
> > > +   sel = readl(&clk->src_peric0);
> > > +#else
> > >sel = readl(&clk->src_peril0);
> > > +#endif
> >
> > NAK.
> > We don't allow to using ifdef for separating SoCs.
> > Please refer s5pc1xx case for solve it.
> > This comment apply to this patch globally.
> > Please remove '#ifdef CONFIG_EXYNOS5'.
> >
> I have tried to reuse the code. It is possible to remove
> #ifdef CONFIG_EXYNOS5' in clock.c with cpu_is_s5pcXXX check.
> Is it a acceptable solution? Or is it necessary to write SoC specific
> function
> in clock.c as done in case of s5pc1xx/clock.c.
>
> Please Advice
> >
> > Thanks.
> > Minkyu Kang.
> > --
> > from. prom.
> > www.promsoft.net
>
>
>
>
> --
> with warm regards,
> Chander Kashyap
>
> ___
> Samsung mailing list
> sams...@lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/samsung
>



-- 
With warm regards,
Sachin
___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: Updated Pulse Audio + alsa-lib for 11.12

2011-12-22 Thread Andy Green

On 12/19/2011 03:20 PM, Somebody in the thread at some point said:

On 12/19/2011 01:16 PM, Somebody in the thread at some point said:

About Panda UCM, last week I noticed though that there is different
wiring
on input side between 4430 Panda (line in goes to analogue headset mic
inputs on twl6040) and 4460 Panda (line in goes to FM analogue
inputs). So
this week I plan to make changes to the onboard audio driver to
change its
alsa card name based on what board it's on, with a view to
elaborating out
the UCM directories so the recording case is handled correctly
depending on
the board.

That's my concern too. The first thing is we need directories under
/usr/share/alsa/ucm with the same audio card names on both panda
boards. The second thing is to have correct configurations for both
boards. I don't have a 4460 board, Andy, can you help on giving the
ucm configurations for it?


Yes I'm hoping to sort it out. I'll give you the patches on UCM when
they're done.


Okay thanks to Seb for sending the udev and 4430 changes, adapted a bit 
by me, along with my changes to ucm settings and a kernel patch to 
create a different audio device name for PandaES ('PandaES'), pulse is 
kind of working mostly here.


The attached files need going into the rootfs at:

/lib/udev/rules.d/90-pulseaudio-omap.rules
/usr/share/pulseaudio/alsa-mixer/profile-sets/4430.conf

and unpack the tarball in /usr/share/alsa/ucm.

It's able to dynamically switch between audio outputs here using pulse 
interface, but it crashes (recoverably) sometimes doing that.


I wasn't able to convince the pulse UI to do anything with the 'record' 
UCM setting, although I adapted it for Panda / PandaES routing.


The matching kernel patch you need is now in tilt-3.1 and 
tilt-linux-linaro-3.1 which Linaro packages.


-Andy

--
Andy Green | TI Landing Team Leader
Linaro.org │ Open source software for ARM SoCs | Follow Linaro
http://facebook.com/pages/Linaro/155974581091106  - 
http://twitter.com/#!/linaroorg - http://linaro.org/linaro-blog
# do not edit this file, it will be overwritten on update

# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

SUBSYSTEM!="sound", GOTO="pulseaudio_end"
ACTION!="change", GOTO="pulseaudio_end"
KERNEL!="card*", GOTO="pulseaudio_end"

# WA: Specific config for TI board - waiting for driver to be fixed and support 
pulse probing properly
ATTRS{id}=="SDP4430", ENV{PULSE_PROFILE_SET}="4430.conf"
ATTRS{id}=="Panda", ENV{PULSE_PROFILE_SET}="4430.conf"
ATTRS{id}=="PandaES", ENV{PULSE_PROFILE_SET}="4430.conf"

LABEL="pulseaudio_end"

# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2.1 of the
# License, or (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.

; TI based board generic static setup
;
; See default.conf for an explanation on the directives used here.

[General]
auto-profiles = no

[Mapping default-mapping-output]
description = Default headset testing TI 4430 based board
device-strings = plughw:%f,0
channel-map = front-left,front-right
direction = output

[Mapping mapping-output-6]
description = TI 4430 based - output 6
device-strings = plughw:%f,6
channel-map = front-left,front-right
direction = output

[Mapping mapping-output-8]
description = TI 4430 based - output 8
device-strings = plughw:%f,8
channel-map = front-left,front-right
direction = output

[Mapping default-mapping-input]
description = Default headset testing TI 4430 based board
device-strings = plughw:%f,0
channel-map = front-left,front-right
direction = input

[Profile output:default-mapping-output+input:default-mapping-input]
description = Default profile 0
output-mappings = default-mapping-output
input-mappings = default-mapping-input
priority = 50
skip-probe 

Re: [U-Boot] [PATCH 6/6] SMDK5250: enable device tree support

2011-12-22 Thread Chander Kashyap
Dear Minkyu Kang,

On 23 December 2011 09:52, Minkyu Kang  wrote:
> Dear Chander Kashyap,
>
> On 22 December 2011 19:52, Chander Kashyap  wrote:
>> Enable passing a flattened device tree to the kernel.
>>
>> Signed-off-by: Chander Kashyap 
>> ---
>>  include/configs/smdk5250.h |    3 +++
>>  1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/include/configs/smdk5250.h b/include/configs/smdk5250.h
>> index d99dfd0..31f56fd 100644
>> --- a/include/configs/smdk5250.h
>> +++ b/include/configs/smdk5250.h
>> @@ -182,4 +182,7 @@
>>  #define CONFIG_SYS_INIT_SP_ADDR        (CONFIG_SYS_LOAD_ADDR - 0x100)
>>  #define MMC_MAX_CHANNEL                5
>>
>> +/* Enable devicetree support */
>> +#define CONFIG_OF_LIBFDT
>> +
>
> Why you separate this patch?
I will squash this patch.
>
> Thanks.
> Minkyu Kang.
> --
> from. prom.
> www.promsoft.net



-- 
with warm regards,
Chander Kashyap

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev


Re: [U-Boot] [PATCH 1/6] Exynos: Add CONFIG_EXYNOS4 Macro to EXYNOS4 based boards

2011-12-22 Thread Chander Kashyap
Dear Minkyu Kang,

On 23 December 2011 09:52, Minkyu Kang  wrote:
> Dear Chander Kashyap,
>
> On 22 December 2011 19:52, Chander Kashyap  wrote:
>> Exynos architecture has varients like exynos4 and exynos5. In order to
>> identify the exynos4 architecture, add CONFIG_EXYNOS4 macro to exynos4
>> based boards i.e. Origen, smdkv310 and s5pc210_universal.
>>
>> Signed-off-by: Chander Kashyap 
>> ---
>>  include/configs/origen.h            |    1 +
>>  include/configs/s5pc210_universal.h |    1 +
>>  include/configs/smdkv310.h          |    1 +
>>  3 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/include/configs/origen.h b/include/configs/origen.h
>> index cd502d1..53bd5fc 100644
>> --- a/include/configs/origen.h
>> +++ b/include/configs/origen.h
>> @@ -28,6 +28,7 @@
>>  /* High Level Configuration Options */
>>  #define CONFIG_SAMSUNG                 1       /* SAMSUNG core */
>>  #define CONFIG_S5P                     1       /* S5P Family */
>> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */
>
> Why need this define?
This is required for conditional inclusion of SoC specific header file.
>
>>  #define CONFIG_EXYNOS4210              1       /* which is a EXYNOS4210 SoC 
>> */
>>  #define CONFIG_ORIGEN                  1       /* working with ORIGEN*/
>>
>> diff --git a/include/configs/s5pc210_universal.h 
>> b/include/configs/s5pc210_universal.h
>> index be000cb..33c4600 100644
>> --- a/include/configs/s5pc210_universal.h
>> +++ b/include/configs/s5pc210_universal.h
>> @@ -32,6 +32,7 @@
>>  */
>>  #define CONFIG_SAMSUNG         1       /* in a SAMSUNG core */
>>  #define CONFIG_S5P             1       /* which is in a S5P Family */
>> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */
>>  #define CONFIG_EXYNOS4210      1       /* which is in a EXYNOS4210 */
>>  #define CONFIG_UNIVERSAL       1       /* working with Universal */
>>
>> diff --git a/include/configs/smdkv310.h b/include/configs/smdkv310.h
>> index 93c25da..24fbac0 100644
>> --- a/include/configs/smdkv310.h
>> +++ b/include/configs/smdkv310.h
>> @@ -28,6 +28,7 @@
>>  /* High Level Configuration Options */
>>  #define CONFIG_SAMSUNG                 1       /* in a SAMSUNG core */
>>  #define CONFIG_S5P                     1       /* S5P Family */
>> +#define CONFIG_EXYNOS4                 1       /* EXYNOS4 Family */
>>  #define CONFIG_EXYNOS4210              1       /* which is a EXYNOS4210 SoC 
>> */
>>  #define CONFIG_SMDKV310                        1       /* working with 
>> SMDKV310*/
>>
>
> Thanks.
> Minkyu Kang.
> --
> from. prom.
> www.promsoft.net



-- 
with warm regards,
Chander Kashyap

___
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev