[U-Boot] [RFC PATCH 18/21] ARM: nomadik: move SoC headers to mach-nomadik/include/mach

2015-01-24 Thread Masahiro Yamada
Move arch/arm/include/asm/arch-nomadik/*
  -> arch/arm/mach-nomadik/include/mach/*

Signed-off-by: Masahiro Yamada 
Cc: Nomadik Linux Team 
Cc: Alessandro Rubini 
---

 arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/gpio.h | 0
 arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/mtu.h  | 0
 2 files changed, 0 insertions(+), 0 deletions(-)
 rename arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/gpio.h 
(100%)
 rename arch/arm/{include/asm/arch-nomadik => mach-nomadik/include/mach}/mtu.h 
(100%)

diff --git a/arch/arm/include/asm/arch-nomadik/gpio.h 
b/arch/arm/mach-nomadik/include/mach/gpio.h
similarity index 100%
rename from arch/arm/include/asm/arch-nomadik/gpio.h
rename to arch/arm/mach-nomadik/include/mach/gpio.h
diff --git a/arch/arm/include/asm/arch-nomadik/mtu.h 
b/arch/arm/mach-nomadik/include/mach/mtu.h
similarity index 100%
rename from arch/arm/include/asm/arch-nomadik/mtu.h
rename to arch/arm/mach-nomadik/include/mach/mtu.h
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 20/21] ARM: keystone: move SoC headers to mach-keystone/include/mach

2015-01-24 Thread Masahiro Yamada
Move arch/arm/include/asm/arch-keystone/*
  -> arch/arm/mach-keystone/include/mach/*

Signed-off-by: Masahiro Yamada 
Cc: Tom Rini 
---

 .../{include/asm/arch-keystone => mach-keystone/include/mach}/clock-k2e.h | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/clock-k2hk.h | 0
 .../{include/asm/arch-keystone => mach-keystone/include/mach}/clock-k2l.h | 0
 .../arm/{include/asm/arch-keystone => mach-keystone/include/mach}/clock.h | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/clock_defs.h | 0
 arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/ddr3.h | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/hardware-k2e.h   | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/hardware-k2hk.h  | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/hardware-k2l.h   | 0
 .../{include/asm/arch-keystone => mach-keystone/include/mach}/hardware.h  | 0
 .../{include/asm/arch-keystone => mach-keystone/include/mach}/i2c_defs.h  | 0
 arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/mon.h  | 0
 arch/arm/{include/asm/arch-keystone => mach-keystone/include/mach}/msmc.h | 0
 .../{include/asm/arch-keystone => mach-keystone/include/mach}/psc_defs.h  | 0
 .../asm/arch-keystone => mach-keystone/include/mach}/xhci-keystone.h  | 0
 15 files changed, 0 insertions(+), 0 deletions(-)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/clock-k2e.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/clock-k2hk.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/clock-k2l.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/clock.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/clock_defs.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/ddr3.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/hardware-k2e.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/hardware-k2hk.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/hardware-k2l.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/hardware.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/i2c_defs.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/mon.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/msmc.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/psc_defs.h (100%)
 rename arch/arm/{include/asm/arch-keystone => 
mach-keystone/include/mach}/xhci-keystone.h (100%)

diff --git a/arch/arm/include/asm/arch-keystone/clock-k2e.h 
b/arch/arm/mach-keystone/include/mach/clock-k2e.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/clock-k2e.h
rename to arch/arm/mach-keystone/include/mach/clock-k2e.h
diff --git a/arch/arm/include/asm/arch-keystone/clock-k2hk.h 
b/arch/arm/mach-keystone/include/mach/clock-k2hk.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/clock-k2hk.h
rename to arch/arm/mach-keystone/include/mach/clock-k2hk.h
diff --git a/arch/arm/include/asm/arch-keystone/clock-k2l.h 
b/arch/arm/mach-keystone/include/mach/clock-k2l.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/clock-k2l.h
rename to arch/arm/mach-keystone/include/mach/clock-k2l.h
diff --git a/arch/arm/include/asm/arch-keystone/clock.h 
b/arch/arm/mach-keystone/include/mach/clock.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/clock.h
rename to arch/arm/mach-keystone/include/mach/clock.h
diff --git a/arch/arm/include/asm/arch-keystone/clock_defs.h 
b/arch/arm/mach-keystone/include/mach/clock_defs.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/clock_defs.h
rename to arch/arm/mach-keystone/include/mach/clock_defs.h
diff --git a/arch/arm/include/asm/arch-keystone/ddr3.h 
b/arch/arm/mach-keystone/include/mach/ddr3.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/ddr3.h
rename to arch/arm/mach-keystone/include/mach/ddr3.h
diff --git a/arch/arm/include/asm/arch-keystone/hardware-k2e.h 
b/arch/arm/mach-keystone/include/mach/hardware-k2e.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/hardware-k2e.h
rename to arch/arm/mach-keystone/include/mach/hardware-k2e.h
diff --git a/arch/arm/include/asm/arch-keystone/hardware-k2hk.h 
b/arch/arm/mach-keystone/include/mach/hardware-k2hk.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/hardware-k2hk.h
rename to arch/arm/mach-keystone/include/mach/hardware-k2hk.h
diff --git a/arch/arm/include/asm/arch-keystone/hardware-k2l.h 
b/arch/arm/mach-keystone/include/mach/hardware-k2l.h
similarity index 100%
rename from arch/arm/include/asm/arch-keystone/hardware-k2l.h
rename

[U-Boot] [RFC PATCH 14/21] ARM: at91: move SoC headers to mach-at91/include/mach

2015-01-24 Thread Masahiro Yamada
Move arch/arm/include/asm/arch-at91/*
  -> arch/arm/mach-at91/include/mach/*

Signed-off-by: Masahiro Yamada 
Cc: Andreas Bießmann 
---

 MAINTAINERS  | 1 -
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_common.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_dbu.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_eefc.h   | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_emac.h   | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_gpbr.h   | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_matrix.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_mc.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pdc.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pio.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pit.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pmc.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rstc.h   | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rtt.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_spi.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_st.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_tc.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_wdt.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91cap9.h| 0
 .../{include/asm/arch-at91 => mach-at91/include/mach}/at91cap9_matrix.h  | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91rm9200.h  | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9260.h | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9260_matrix.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9261.h | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9261_matrix.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9263.h | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9263_matrix.h| 0
 .../{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_matrix.h  | 0
 .../{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_sdramc.h  | 0
 .../arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9_smc.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9g45.h | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9g45_matrix.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9rl.h  | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9rl_matrix.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91sam9x5.h  | 0
 .../asm/arch-at91 => mach-at91/include/mach}/at91sam9x5_matrix.h | 0
 .../arm/{include/asm/arch-at91 => mach-at91/include/mach}/atmel_mpddrc.h | 0
 .../arm/{include/asm/arch-at91 => mach-at91/include/mach}/atmel_serial.h | 0
 .../{include/asm/arch-at91 => mach-at91/include/mach}/atmel_usba_udc.h   | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/clk.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/gpio.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/hardware.h| 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d3.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d3_smc.h | 0
 arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/sama5d4.h | 0
 45 files changed, 1 deletion(-)
 rename arch/arm/{include/asm/arch-at91 => 
mach-at91/include/mach}/at91_common.h (100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_dbu.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_eefc.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_emac.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_gpbr.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => 
mach-at91/include/mach}/at91_matrix.h (100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_mc.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pdc.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pio.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pit.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_pmc.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rstc.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_rtt.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_spi.h 
(100%)
 rename arch/arm/{include/asm/arch-at91 => mach-at91/include/mach}/at91_st.h 
(100%)
 rename arch/arm/{i

[U-Boot] [RFC PATCH 21/21] ARM: prepare for including

2015-01-24 Thread Masahiro Yamada
This commit adds $(srctree)/arch/arm/$(machdirs)/include/mach to
the headers search path.

It allows us to replace "#include " with
"#include ".  As "#include " is still
supported, we can modify each file one by one.

Signed-off-by: Masahiro Yamada 
---

 arch/arm/Makefile | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 6df3353..08946de 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -20,6 +20,8 @@ machine-$(CONFIG_ARCH_VERSATILE)  += versatile
 
 machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
 
+PLATFORM_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(machdirs))
+
 libs-y += $(machdirs)
 
 head-y := arch/arm/cpu/$(CPU)/start.o
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 19/21] ARM: orion5x: move SoC headers to mach-orion5x/include/mach

2015-01-24 Thread Masahiro Yamada
Move arch/arm/include/asm/arch-orion5x/*
  -> arch/arm/mach-orion5x/include/mach/*

Signed-off-by: Masahiro Yamada 
Cc: Albert ARIBAUD 
---

 arch/arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/cpu.h| 0
 .../{include/asm/arch-orion5x => mach-orion5x/include/mach}/mv88f5182.h   | 0
 .../arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/orion5x.h | 0
 3 files changed, 0 insertions(+), 0 deletions(-)
 rename arch/arm/{include/asm/arch-orion5x => mach-orion5x/include/mach}/cpu.h 
(100%)
 rename arch/arm/{include/asm/arch-orion5x => 
mach-orion5x/include/mach}/mv88f5182.h (100%)
 rename arch/arm/{include/asm/arch-orion5x => 
mach-orion5x/include/mach}/orion5x.h (100%)

diff --git a/arch/arm/include/asm/arch-orion5x/cpu.h 
b/arch/arm/mach-orion5x/include/mach/cpu.h
similarity index 100%
rename from arch/arm/include/asm/arch-orion5x/cpu.h
rename to arch/arm/mach-orion5x/include/mach/cpu.h
diff --git a/arch/arm/include/asm/arch-orion5x/mv88f5182.h 
b/arch/arm/mach-orion5x/include/mach/mv88f5182.h
similarity index 100%
rename from arch/arm/include/asm/arch-orion5x/mv88f5182.h
rename to arch/arm/mach-orion5x/include/mach/mv88f5182.h
diff --git a/arch/arm/include/asm/arch-orion5x/orion5x.h 
b/arch/arm/mach-orion5x/include/mach/orion5x.h
similarity index 100%
rename from arch/arm/include/asm/arch-orion5x/orion5x.h
rename to arch/arm/mach-orion5x/include/mach/orion5x.h
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 16/21] ARM: davinci: move SoC headers to mach-davinci/include/mach

2015-01-24 Thread Masahiro Yamada
Move arch/arm/include/asm/arch-davinci/*
  -> arch/arm/mach-davinci/include/mach/*

Signed-off-by: Masahiro Yamada 
Cc: Tom Rini 
---

 .../{include/asm/arch-davinci => mach-davinci/include/mach}/aintc_defs.h  | 0
 .../asm/arch-davinci => mach-davinci/include/mach}/da850_lowlevel.h   | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/da8xx-usb.h   | 0
 .../asm/arch-davinci => mach-davinci/include/mach}/davinci_misc.h | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/ddr2_defs.h   | 0
 .../asm/arch-davinci => mach-davinci/include/mach}/dm365_lowlevel.h   | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/emac_defs.h   | 0
 arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/gpio.h   | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/hardware.h| 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/i2c_defs.h| 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/pinmux_defs.h | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/pll_defs.h| 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/psc_defs.h| 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/sdmmc_defs.h  | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/syscfg_defs.h | 0
 .../{include/asm/arch-davinci => mach-davinci/include/mach}/timer_defs.h  | 0
 16 files changed, 0 insertions(+), 0 deletions(-)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/aintc_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/da850_lowlevel.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/da8xx-usb.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/davinci_misc.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/ddr2_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/dm365_lowlevel.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/emac_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => mach-davinci/include/mach}/gpio.h 
(100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/hardware.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/i2c_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/pinmux_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/pll_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/psc_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/sdmmc_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/syscfg_defs.h (100%)
 rename arch/arm/{include/asm/arch-davinci => 
mach-davinci/include/mach}/timer_defs.h (100%)

diff --git a/arch/arm/include/asm/arch-davinci/aintc_defs.h 
b/arch/arm/mach-davinci/include/mach/aintc_defs.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/aintc_defs.h
rename to arch/arm/mach-davinci/include/mach/aintc_defs.h
diff --git a/arch/arm/include/asm/arch-davinci/da850_lowlevel.h 
b/arch/arm/mach-davinci/include/mach/da850_lowlevel.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/da850_lowlevel.h
rename to arch/arm/mach-davinci/include/mach/da850_lowlevel.h
diff --git a/arch/arm/include/asm/arch-davinci/da8xx-usb.h 
b/arch/arm/mach-davinci/include/mach/da8xx-usb.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/da8xx-usb.h
rename to arch/arm/mach-davinci/include/mach/da8xx-usb.h
diff --git a/arch/arm/include/asm/arch-davinci/davinci_misc.h 
b/arch/arm/mach-davinci/include/mach/davinci_misc.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/davinci_misc.h
rename to arch/arm/mach-davinci/include/mach/davinci_misc.h
diff --git a/arch/arm/include/asm/arch-davinci/ddr2_defs.h 
b/arch/arm/mach-davinci/include/mach/ddr2_defs.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/ddr2_defs.h
rename to arch/arm/mach-davinci/include/mach/ddr2_defs.h
diff --git a/arch/arm/include/asm/arch-davinci/dm365_lowlevel.h 
b/arch/arm/mach-davinci/include/mach/dm365_lowlevel.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/dm365_lowlevel.h
rename to arch/arm/mach-davinci/include/mach/dm365_lowlevel.h
diff --git a/arch/arm/include/asm/arch-davinci/emac_defs.h 
b/arch/arm/mach-davinci/include/mach/emac_defs.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/emac_defs.h
rename to arch/arm/mach-davinci/include/mach/emac_defs.h
diff --git a/arch/arm/include/asm/arch-davinci/gpio.h 
b/arch/arm/mach-davinci/include/mach/gpio.h
similarity index 100%
rename from arch/arm/include/asm/arch-davinci/gpio.h
rename to arch/arm/mach-davinci/include/mach/gpio.h
diff --git a/arch/arm/include/asm/arch-davinc

[U-Boot] [RFC PATCH 12/21] ARM: keystone: move SoC sources to mach-keystone

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/armv7/keystone/* -> arch/arm/mach-keystone/*

Signed-off-by: Masahiro Yamada 
Cc: Tom Rini 
---

 arch/arm/Kconfig| 2 +-
 arch/arm/Makefile   | 1 +
 arch/arm/cpu/armv7/Makefile | 1 -
 arch/arm/{cpu/armv7/keystone => mach-keystone}/Kconfig  | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/Makefile | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2e.c  | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2hk.c | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2l.c  | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/clock.c  | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_clock.c  | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_ddr3.c   | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_mon.c| 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/ddr3.c   | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/init.c   | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/keystone.c   | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/msmc.c   | 0
 arch/arm/{cpu/armv7/keystone => mach-keystone}/psc.c| 0
 17 files changed, 2 insertions(+), 2 deletions(-)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/Kconfig (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/Makefile (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2e.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2hk.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock-k2l.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/clock.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_clock.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_ddr3.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/cmd_mon.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/ddr3.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/init.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/keystone.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/msmc.c (100%)
 rename arch/arm/{cpu/armv7/keystone => mach-keystone}/psc.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1530dd8..20aac5a 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -692,7 +692,7 @@ source "arch/arm/cpu/armv7/exynos/Kconfig"
 
 source "arch/arm/mach-highbank/Kconfig"
 
-source "arch/arm/cpu/armv7/keystone/Kconfig"
+source "arch/arm/mach-keystone/Kconfig"
 
 source "arch/arm/mach-kirkwood/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 11a16d8..6df3353 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -7,6 +7,7 @@
 machine-$(CONFIG_ARCH_AT91)+= at91
 machine-$(CONFIG_ARCH_DAVINCI) += davinci
 machine-$(CONFIG_ARCH_HIGHBANK)+= highbank
+machine-$(CONFIG_ARCH_KEYSTONE)+= keystone
 # TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD
 machine-$(CONFIG_KIRKWOOD) += kirkwood
 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile
index 7c63af9..85729b3 100644
--- a/arch/arm/cpu/armv7/Makefile
+++ b/arch/arm/cpu/armv7/Makefile
@@ -43,7 +43,6 @@ obj-$(if $(filter bcm281xx,$(SOC)),y) += bcm281xx/
 obj-$(if $(filter bcmcygnus,$(SOC)),y) += bcmcygnus/
 obj-$(if $(filter bcmnsp,$(SOC)),y) += bcmnsp/
 obj-$(CONFIG_ARCH_EXYNOS) += exynos/
-obj-$(CONFIG_ARCH_KEYSTONE) += keystone/
 obj-$(if $(filter ls102xa,$(SOC)),y) += ls102xa/
 obj-$(if $(filter mx5,$(SOC)),y) += mx5/
 obj-$(CONFIG_MX6) += mx6/
diff --git a/arch/arm/cpu/armv7/keystone/Kconfig 
b/arch/arm/mach-keystone/Kconfig
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/Kconfig
rename to arch/arm/mach-keystone/Kconfig
diff --git a/arch/arm/cpu/armv7/keystone/Makefile 
b/arch/arm/mach-keystone/Makefile
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/Makefile
rename to arch/arm/mach-keystone/Makefile
diff --git a/arch/arm/cpu/armv7/keystone/clock-k2e.c 
b/arch/arm/mach-keystone/clock-k2e.c
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/clock-k2e.c
rename to arch/arm/mach-keystone/clock-k2e.c
diff --git a/arch/arm/cpu/armv7/keystone/clock-k2hk.c 
b/arch/arm/mach-keystone/clock-k2hk.c
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/clock-k2hk.c
rename to arch/arm/mach-keystone/clock-k2hk.c
diff --git a/arch/arm/cpu/armv7/keystone/clock-k2l.c 
b/arch/arm/mach-keystone/clock-k2l.c
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/clock-k2l.c
rename to arch/arm/mach-keystone/clock-k2l.c
diff --git a/arch/arm/cpu/armv7/keystone/clock.c 
b/arch/arm/mach-keystone/clock.c
similarity index 100%
rename from arch/arm/cpu/armv7/keystone/clock.c
rename to arch/arm/mach-keystone/clock.c
diff --git a/arch/arm/cpu/armv7/keystone/cmd_clock.c 
b/arch/arm/mach-key

[U-Boot] [RFC PATCH 13/21] kbuild: prepare for moving headers into mach-*/include/mach

2015-01-24 Thread Masahiro Yamada
In U-Boot, SoC-specific headers are placed in
arch/$(ARCH)/include/asm/arch-$(SOC) and a symbolic link to that
directory is created at the early stage of the build process.

Creating and removing a symbolic link during the build is not
preferred.  In fact, Linux Kernel did away with include/asm-$(ARCH)
directories a long time time ago.

As for ARM, now it is possible to collect SoC sources into
arch/arm/mach-$(SOC).  It is also reasonable to move SoC headers
into arch/arm/mach-$(SOC)/include/mach.

This commit prepares for that.
If the directory arch/$(ARCH)/mach-$(SOC)/include/mach exists,
a symbolic to that directory is created.  Otherwise, a symbolic link
to arch/$(ARCH)/include/asm/arch-$(SOC) or arch-$(CPU) is created.

Signed-off-by: Masahiro Yamada 
---

 scripts/Makefile.autoconf | 19 +++
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/scripts/Makefile.autoconf b/scripts/Makefile.autoconf
index 8e9d71f..58e1642 100644
--- a/scripts/Makefile.autoconf
+++ b/scripts/Makefile.autoconf
@@ -85,15 +85,26 @@ include/config.h: scripts/Makefile.autoconf create_symlink 
FORCE
$(call filechk,config_h)
 
 # symbolic links
+# If arch/$(ARCH)/mach-$(SOC)/include/mach exists,
+# make a symbolic link to that directory.
+# Otherwise, create a symbolic link to arch/$(ARCH)/include/asm/arch-$(SOC).
 PHONY += create_symlink
 create_symlink:
 ifneq ($(KBUILD_SRC),)
$(Q)mkdir -p include/asm
-   $(Q)ln -fsn $(KBUILD_SRC)/arch/$(ARCH)/include/asm/arch-$(if 
$(SOC),$(SOC),$(CPU)) \
-   include/asm/arch
+   $(Q)if [ -d $(KBUILD_SRC)/arch/$(ARCH)/mach-$(SOC)/include/mach ]; then 
\
+   dest=arch/$(ARCH)/mach-$(SOC)/include/mach; 
\
+   else
\
+   dest=arch/$(ARCH)/include/asm/arch-$(if $(SOC),$(SOC),$(CPU));  
\
+   fi; 
\
+   ln -fsn $(KBUILD_SRC)/$$dest include/asm/arch
 else
-   $(Q)ln -fsn arch-$(if $(SOC),$(SOC),$(CPU)) \
-   arch/$(ARCH)/include/asm/arch
+   $(Q)if [ -d arch/$(ARCH)/mach-$(SOC)/include/mach ]; then   \
+   dest=../../mach-$(SOC)/include/mach;\
+   else\
+   dest=arch-$(if $(SOC),$(SOC),$(CPU));   \
+   fi; \
+   ln -fsn $$dest arch/$(ARCH)/include/asm/arch
 endif
 
 PHONY += FORCE
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 11/21] ARM: versatile: move SoC sources to mach-versatile

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/arm926ejs/versatile/* -> arch/arm/mach-versatile/*

Signed-off-by: Masahiro Yamada 
---

 arch/arm/Kconfig  | 2 +-
 arch/arm/Makefile | 1 +
 arch/arm/cpu/arm926ejs/Makefile   | 1 -
 arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Kconfig  | 0
 arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Makefile | 0
 arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/reset.S  | 0
 arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/timer.c  | 0
 7 files changed, 2 insertions(+), 2 deletions(-)
 rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Kconfig (100%)
 rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/Makefile (100%)
 rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/reset.S (100%)
 rename arch/arm/{cpu/arm926ejs/versatile => mach-versatile}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index ffd6f66..1530dd8 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -714,7 +714,7 @@ source "arch/arm/mach-tegra/Kconfig"
 
 source "arch/arm/mach-uniphier/Kconfig"
 
-source "arch/arm/cpu/arm926ejs/versatile/Kconfig"
+source "arch/arm/mach-versatile/Kconfig"
 
 source "arch/arm/cpu/armv7/zynq/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index a707f02..11a16d8 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -15,6 +15,7 @@ machine-$(CONFIG_ARCH_NOMADIK)+= nomadik
 machine-$(CONFIG_ORION5X)  += orion5x
 machine-$(CONFIG_TEGRA)+= tegra
 machine-$(CONFIG_ARCH_UNIPHIER)+= uniphier
+machine-$(CONFIG_ARCH_VERSATILE)   += versatile
 
 machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
 
diff --git a/arch/arm/cpu/arm926ejs/Makefile b/arch/arm/cpu/arm926ejs/Makefile
index 3cb741d..f5944cc 100644
--- a/arch/arm/cpu/arm926ejs/Makefile
+++ b/arch/arm/cpu/arm926ejs/Makefile
@@ -22,4 +22,3 @@ obj-$(CONFIG_MX27) += mx27/
 obj-$(if $(filter mxs,$(SOC)),y) += mxs/
 obj-$(CONFIG_PANTHEON) += pantheon/
 obj-$(if $(filter spear,$(SOC)),y) += spear/
-obj-$(CONFIG_ARCH_VERSATILE) += versatile/
diff --git a/arch/arm/cpu/arm926ejs/versatile/Kconfig 
b/arch/arm/mach-versatile/Kconfig
similarity index 100%
rename from arch/arm/cpu/arm926ejs/versatile/Kconfig
rename to arch/arm/mach-versatile/Kconfig
diff --git a/arch/arm/cpu/arm926ejs/versatile/Makefile 
b/arch/arm/mach-versatile/Makefile
similarity index 100%
rename from arch/arm/cpu/arm926ejs/versatile/Makefile
rename to arch/arm/mach-versatile/Makefile
diff --git a/arch/arm/cpu/arm926ejs/versatile/reset.S 
b/arch/arm/mach-versatile/reset.S
similarity index 100%
rename from arch/arm/cpu/arm926ejs/versatile/reset.S
rename to arch/arm/mach-versatile/reset.S
diff --git a/arch/arm/cpu/arm926ejs/versatile/timer.c 
b/arch/arm/mach-versatile/timer.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/versatile/timer.c
rename to arch/arm/mach-versatile/timer.c
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 06/21] ARM: davinci: move SoC sources to mach-davinci

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/arm926ejs/davinci/* -> arch/arm/mach-davinci/*

Signed-off-by: Masahiro Yamada 
Cc: Tom Rini 
---

 arch/arm/Kconfig  | 2 +-
 arch/arm/Makefile | 1 +
 arch/arm/cpu/arm926ejs/Makefile   | 1 -
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Kconfig  | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Makefile | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/config.mk| 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/cpu.c| 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da830_pinmux.c   | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_lowlevel.c | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_pinmux.c   | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm355.c  | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365.c  | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365_lowlevel.c | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm644x.c | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm646x.c | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dp83848.c| 2 +-
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/et1011c.c| 2 +-
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/ksz8873.c| 2 +-
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lowlevel_init.S  | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lxt972.c | 2 +-
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/misc.c   | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/pinmux.c | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/psc.c| 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/reset.c  | 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/spl.c| 0
 arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/timer.c  | 0
 26 files changed, 6 insertions(+), 6 deletions(-)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Kconfig (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/Makefile (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/config.mk (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/cpu.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da830_pinmux.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_lowlevel.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/da850_pinmux.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm355.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm365_lowlevel.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm644x.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dm646x.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/dp83848.c (98%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/et1011c.c (94%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/ksz8873.c (95%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lowlevel_init.S (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/lxt972.c (97%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/misc.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/pinmux.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/psc.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/reset.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/spl.c (100%)
 rename arch/arm/{cpu/arm926ejs/davinci => mach-davinci}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 23c5bab..8cd7c14 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -686,7 +686,7 @@ endchoice
 
 source "arch/arm/mach-at91/Kconfig"
 
-source "arch/arm/cpu/arm926ejs/davinci/Kconfig"
+source "arch/arm/mach-davinci/Kconfig"
 
 source "arch/arm/cpu/armv7/exynos/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 1b1d222..b6e9323 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -5,6 +5,7 @@
 # Machine directory name.  This list is sorted alphanumerically
 # by CONFIG_* macro name.
 machine-$(CONFIG_ARCH_AT91)+= at91
+machine-$(CONFIG_ARCH_DAVINCI) += davinci
 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
 machine-$(CONFIG_TEGRA)+= tegra
 machine-$(CONFIG_ARCH_UNIPHIER)+= uniphier
diff --git a/arch/arm/cpu/arm926ejs/Makefile b/arch/arm/cpu/arm926ejs/Makefile
index f41357a..27b4353 100644
--- a/arch/arm/cpu/arm926ejs/Makefile
+++ b/arch/arm/cpu/arm926ejs/Makefile
@@ -15,7 +15,6 @@ endif
 endif
 
 obj-$(CONFIG_ARMADA100) += armada100/
-obj-$(CONFIG_ARCH_DAVINCI) += davinci/
 obj-$(CONFIG_KIRKWOOD) += kirkwood/
 obj-$(if $(filter lpc32xx,$(SOC)),y) += lpc32xx/
 obj-$(CONFIG_MB86R0x) += mb86r0x/
diff --git a

[U-Boot] [RFC PATCH 10/21] ARM: orion5x: move SoC sources to mach-orion5x

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/arm926ejs/orion5x/* -> arch/arm/mach-orion5x/*

Signed-off-by: Masahiro Yamada 
Cc: Albert ARIBAUD 
---

 arch/arm/Kconfig | 2 +-
 arch/arm/Makefile| 2 ++
 arch/arm/cpu/arm926ejs/Makefile  | 1 -
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Kconfig | 0
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Makefile| 0
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/cpu.c   | 0
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/dram.c  | 0
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/lowlevel_init.S | 0
 arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/timer.c | 0
 9 files changed, 3 insertions(+), 2 deletions(-)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Kconfig (100%)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/Makefile (100%)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/cpu.c (100%)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/dram.c (100%)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/lowlevel_init.S (100%)
 rename arch/arm/{cpu/arm926ejs/orion5x => mach-orion5x}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index de56ddf..ffd6f66 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -704,7 +704,7 @@ source "arch/arm/cpu/armv7/omap4/Kconfig"
 
 source "arch/arm/cpu/armv7/omap5/Kconfig"
 
-source "arch/arm/cpu/arm926ejs/orion5x/Kconfig"
+source "arch/arm/mach-orion5x/Kconfig"
 
 source "arch/arm/cpu/armv7/rmobile/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 7592e20..a707f02 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -11,6 +11,8 @@ machine-$(CONFIG_ARCH_HIGHBANK)   += highbank
 machine-$(CONFIG_KIRKWOOD) += kirkwood
 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
 machine-$(CONFIG_ARCH_NOMADIK) += nomadik
+# TODO: rename CONFIG_ORION5X -> CONFIG_ARCH_ORION5X
+machine-$(CONFIG_ORION5X)  += orion5x
 machine-$(CONFIG_TEGRA)+= tegra
 machine-$(CONFIG_ARCH_UNIPHIER)+= uniphier
 
diff --git a/arch/arm/cpu/arm926ejs/Makefile b/arch/arm/cpu/arm926ejs/Makefile
index ed0cf0f..3cb741d 100644
--- a/arch/arm/cpu/arm926ejs/Makefile
+++ b/arch/arm/cpu/arm926ejs/Makefile
@@ -20,7 +20,6 @@ obj-$(CONFIG_MB86R0x) += mb86r0x/
 obj-$(CONFIG_MX25) += mx25/
 obj-$(CONFIG_MX27) += mx27/
 obj-$(if $(filter mxs,$(SOC)),y) += mxs/
-obj-$(CONFIG_ORION5X) += orion5x/
 obj-$(CONFIG_PANTHEON) += pantheon/
 obj-$(if $(filter spear,$(SOC)),y) += spear/
 obj-$(CONFIG_ARCH_VERSATILE) += versatile/
diff --git a/arch/arm/cpu/arm926ejs/orion5x/Kconfig 
b/arch/arm/mach-orion5x/Kconfig
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/Kconfig
rename to arch/arm/mach-orion5x/Kconfig
diff --git a/arch/arm/cpu/arm926ejs/orion5x/Makefile 
b/arch/arm/mach-orion5x/Makefile
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/Makefile
rename to arch/arm/mach-orion5x/Makefile
diff --git a/arch/arm/cpu/arm926ejs/orion5x/cpu.c b/arch/arm/mach-orion5x/cpu.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/cpu.c
rename to arch/arm/mach-orion5x/cpu.c
diff --git a/arch/arm/cpu/arm926ejs/orion5x/dram.c 
b/arch/arm/mach-orion5x/dram.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/dram.c
rename to arch/arm/mach-orion5x/dram.c
diff --git a/arch/arm/cpu/arm926ejs/orion5x/lowlevel_init.S 
b/arch/arm/mach-orion5x/lowlevel_init.S
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/lowlevel_init.S
rename to arch/arm/mach-orion5x/lowlevel_init.S
diff --git a/arch/arm/cpu/arm926ejs/orion5x/timer.c 
b/arch/arm/mach-orion5x/timer.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/orion5x/timer.c
rename to arch/arm/mach-orion5x/timer.c
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 08/21] ARM: nomadik: move SoC sources to mach-nomadik

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/arm926ejs/nomadik/* -> arch/arm/mach-nomadik/*

Signed-off-by: Masahiro Yamada 
Cc: Nomadik Linux Team 
Cc: Alessandro Rubini 
---

 arch/arm/Kconfig  | 2 +-
 arch/arm/Makefile | 1 +
 arch/arm/cpu/arm926ejs/Makefile   | 1 -
 arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Kconfig  | 0
 arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Makefile | 0
 arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/gpio.c   | 0
 arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/reset.S  | 0
 arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/timer.c  | 0
 8 files changed, 2 insertions(+), 2 deletions(-)
 rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Kconfig (100%)
 rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/Makefile (100%)
 rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/gpio.c (100%)
 rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/reset.S (100%)
 rename arch/arm/{cpu/arm926ejs/nomadik => mach-nomadik}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 961ab4d..2bae41a 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -696,7 +696,7 @@ source "arch/arm/cpu/armv7/keystone/Kconfig"
 
 source "arch/arm/mach-kirkwood/Kconfig"
 
-source "arch/arm/cpu/arm926ejs/nomadik/Kconfig"
+source "arch/arm/mach-nomadik/Kconfig"
 
 source "arch/arm/cpu/armv7/omap3/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 7a244af..ee25e48 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -9,6 +9,7 @@ machine-$(CONFIG_ARCH_DAVINCI)  += davinci
 # TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD
 machine-$(CONFIG_KIRKWOOD) += kirkwood
 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
+machine-$(CONFIG_ARCH_NOMADIK) += nomadik
 machine-$(CONFIG_TEGRA)+= tegra
 machine-$(CONFIG_ARCH_UNIPHIER)+= uniphier
 
diff --git a/arch/arm/cpu/arm926ejs/Makefile b/arch/arm/cpu/arm926ejs/Makefile
index 0b43a90..ed0cf0f 100644
--- a/arch/arm/cpu/arm926ejs/Makefile
+++ b/arch/arm/cpu/arm926ejs/Makefile
@@ -20,7 +20,6 @@ obj-$(CONFIG_MB86R0x) += mb86r0x/
 obj-$(CONFIG_MX25) += mx25/
 obj-$(CONFIG_MX27) += mx27/
 obj-$(if $(filter mxs,$(SOC)),y) += mxs/
-obj-$(CONFIG_ARCH_NOMADIK) += nomadik/
 obj-$(CONFIG_ORION5X) += orion5x/
 obj-$(CONFIG_PANTHEON) += pantheon/
 obj-$(if $(filter spear,$(SOC)),y) += spear/
diff --git a/arch/arm/cpu/arm926ejs/nomadik/Kconfig 
b/arch/arm/mach-nomadik/Kconfig
similarity index 100%
rename from arch/arm/cpu/arm926ejs/nomadik/Kconfig
rename to arch/arm/mach-nomadik/Kconfig
diff --git a/arch/arm/cpu/arm926ejs/nomadik/Makefile 
b/arch/arm/mach-nomadik/Makefile
similarity index 100%
rename from arch/arm/cpu/arm926ejs/nomadik/Makefile
rename to arch/arm/mach-nomadik/Makefile
diff --git a/arch/arm/cpu/arm926ejs/nomadik/gpio.c 
b/arch/arm/mach-nomadik/gpio.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/nomadik/gpio.c
rename to arch/arm/mach-nomadik/gpio.c
diff --git a/arch/arm/cpu/arm926ejs/nomadik/reset.S 
b/arch/arm/mach-nomadik/reset.S
similarity index 100%
rename from arch/arm/cpu/arm926ejs/nomadik/reset.S
rename to arch/arm/mach-nomadik/reset.S
diff --git a/arch/arm/cpu/arm926ejs/nomadik/timer.c 
b/arch/arm/mach-nomadik/timer.c
similarity index 100%
rename from arch/arm/cpu/arm926ejs/nomadik/timer.c
rename to arch/arm/mach-nomadik/timer.c
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 09/21] ARM: highbank: move SoC sources to mach-highbank

2015-01-24 Thread Masahiro Yamada
Move
arch/arm/cpu/armv7/highbank/* -> arch/arm/mach-highbank/*

Signed-off-by: Masahiro Yamada 
Cc: Rob Herring 
---

 arch/arm/Kconfig| 2 +-
 arch/arm/Makefile   | 1 +
 arch/arm/cpu/armv7/Makefile | 1 -
 arch/arm/{cpu/armv7/highbank => mach-highbank}/Kconfig  | 0
 arch/arm/{cpu/armv7/highbank => mach-highbank}/Makefile | 0
 arch/arm/{cpu/armv7/highbank => mach-highbank}/timer.c  | 0
 6 files changed, 2 insertions(+), 2 deletions(-)
 rename arch/arm/{cpu/armv7/highbank => mach-highbank}/Kconfig (100%)
 rename arch/arm/{cpu/armv7/highbank => mach-highbank}/Makefile (100%)
 rename arch/arm/{cpu/armv7/highbank => mach-highbank}/timer.c (100%)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 2bae41a..de56ddf 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -690,7 +690,7 @@ source "arch/arm/mach-davinci/Kconfig"
 
 source "arch/arm/cpu/armv7/exynos/Kconfig"
 
-source "arch/arm/cpu/armv7/highbank/Kconfig"
+source "arch/arm/mach-highbank/Kconfig"
 
 source "arch/arm/cpu/armv7/keystone/Kconfig"
 
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index ee25e48..7592e20 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -6,6 +6,7 @@
 # by CONFIG_* macro name.
 machine-$(CONFIG_ARCH_AT91)+= at91
 machine-$(CONFIG_ARCH_DAVINCI) += davinci
+machine-$(CONFIG_ARCH_HIGHBANK)+= highbank
 # TODO: rename CONFIG_KIRKWOOD -> CONFIG_ARCH_KIRKWOOD
 machine-$(CONFIG_KIRKWOOD) += kirkwood
 # TODO: rename CONFIG_TEGRA -> CONFIG_ARCH_TEGRA
diff --git a/arch/arm/cpu/armv7/Makefile b/arch/arm/cpu/armv7/Makefile
index 254ca3d..7c63af9 100644
--- a/arch/arm/cpu/armv7/Makefile
+++ b/arch/arm/cpu/armv7/Makefile
@@ -43,7 +43,6 @@ obj-$(if $(filter bcm281xx,$(SOC)),y) += bcm281xx/
 obj-$(if $(filter bcmcygnus,$(SOC)),y) += bcmcygnus/
 obj-$(if $(filter bcmnsp,$(SOC)),y) += bcmnsp/
 obj-$(CONFIG_ARCH_EXYNOS) += exynos/
-obj-$(CONFIG_ARCH_HIGHBANK) += highbank/
 obj-$(CONFIG_ARCH_KEYSTONE) += keystone/
 obj-$(if $(filter ls102xa,$(SOC)),y) += ls102xa/
 obj-$(if $(filter mx5,$(SOC)),y) += mx5/
diff --git a/arch/arm/cpu/armv7/highbank/Kconfig 
b/arch/arm/mach-highbank/Kconfig
similarity index 100%
rename from arch/arm/cpu/armv7/highbank/Kconfig
rename to arch/arm/mach-highbank/Kconfig
diff --git a/arch/arm/cpu/armv7/highbank/Makefile 
b/arch/arm/mach-highbank/Makefile
similarity index 100%
rename from arch/arm/cpu/armv7/highbank/Makefile
rename to arch/arm/mach-highbank/Makefile
diff --git a/arch/arm/cpu/armv7/highbank/timer.c 
b/arch/arm/mach-highbank/timer.c
similarity index 100%
rename from arch/arm/cpu/armv7/highbank/timer.c
rename to arch/arm/mach-highbank/timer.c
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [RFC PATCH 02/21] ARM: prepare for moving SoC sources into mach-*

2015-01-24 Thread Masahiro Yamada
In U-boot, the directory structure, arch/$(ARCH)/cpu/$(CPU)/$(SOC)/
has been adopted except that $(CPU) is missing from some
architectures and $(SOC) is missing from some CPUs.

This structure did not fit very well in some cases.

[1] AT91

AT91 SoC family have been developed across some ARM processor
generations.  Generally speaking, some IPs are often re-used in the
same SoC family (same SoC vendor) even when the main processor is
updated.  As a result, a SoC-common directory is needed in the upper
level.  Currently, AT91 source files are placed as follows:

  arch/arm/cpu/arm920t/at91/*
  arch/arm/cpu/arm926ejs/at91/*
  arch/arm/cpu/armv7/at91/*
  arch/arm/cpu/at91-common/*

Once directories are split, the motivation for refactorings across
CPU directories is lost.  Some files in arm920t/at91/ and
arm926ejs/at91/ are so similar that they could be merged.

[2] Tegra

Tegra is a little bit special case where different CPUs are used for
SPL and the main U-boot.  To obey the arch/$(ARCH)/cpu/$(CPU)/$(SOC)
structure, the source files must be placed across the CPUs,
again SoC-common directory is necessary in the upper level.

Moreover, there are several families in Tegra: Tegra20, Tegra30,
Tegra114, Tegra124.  Here again, the tegra-common directory is needed
to contain commonly-used files.

Tegra directories have been sprinkled in the directory structure.

  arch/arm/cpu/arm720t/tegra20
  arch/arm/cpu/arm720t/tegra30
  arch/arm/cpu/arm720t/tegra114
  arch/arm/cpu/arm720t/tegra124
  arch/arm/cpu/arm720t/tegra-common
  arch/arm/cpu/armv7/tegra20
  arch/arm/cpu/armv7/tegra30
  arch/arm/cpu/armv7/tegra114
  arch/arm/cpu/armv7/tegra124
  arch/arm/cpu/armv7/tegra-common
  arch/arm/cpu/tegra20-common
  arch/arm/cpu/tegra30-common
  arch/arm/cpu/tegra114-common
  arch/arm/cpu/tegra124-common
  arch/arm/cpu/tegra-common

As you see, splitting SoC code by the CPU is not going well,
especially for ARM.
Why don't we collect SoC-specific files into a single place?

A good example we can follow is Linux's arch/arm/mach-* structure.

This item was discussed in the following thread:
http://thread.gmane.org/gmane.comp.boot-loaders.u-boot/188548/

Looks like I got some positive responses and we are almost ready to
start this movement.

This commit prepares arch/arm/Makefile for describing machdirs in it.

After this commit, we can move SoC directory to arch/arm/mach-$(SOC)
in simple steps although some cases such as AT91 and Tegra need more
fixes.

What we generally have to do is:

[1] Move files arch/arm/cpu/$(CPU)/$(SOC)/* to arch/arm/mach-$(SOC)/*
[2] Add machine entry into arch/arm/Makefile
[3] Remove "obj-y += $(SOC)" from arch/arm/cpu/$(CPU)/Makefile
[4] Fix the Kconfig file path in arch/arm/Kconfig
[5] Modify MAINTAINERS if necessary

Signed-off-by: Masahiro Yamada 
---

 arch/arm/Makefile | 10 ++
 1 file changed, 10 insertions(+)

diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index ebb7dc3..5da2c23 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -2,6 +2,13 @@
 # SPDX-License-Identifier: GPL-2.0+
 #
 
+# Machine directory name.  This list is sorted alphanumerically
+# by CONFIG_* macro name.
+
+machdirs := $(patsubst %,arch/arm/mach-%/,$(machine-y))
+
+libs-y += $(machdirs)
+
 head-y := arch/arm/cpu/$(CPU)/start.o
 
 ifeq ($(CONFIG_SPL_BUILD),y)
@@ -27,3 +34,6 @@ endif
 ifneq (,$(filter $(SOC), armada-xp kirkwood))
 libs-y += arch/arm/mvebu-common/
 endif
+
+# deprecated
+-include $(machdirs)/config.mk
-- 
1.9.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [v3 PATCH 1/3] arm: mxs: Add debug outputs and comments to mxs SPL source files

2015-01-24 Thread Graeme Russ
It is difficult to track down fail to boot issues in the mxs SPL.
Implement the following to make it easier:
 - Add debug outputs to allow tracing of SPL progress in order to track
where failure to boot occurs. DEUBUG and CONFIG_SPL_SERIAL_SUPPORT must
be defined to enable debug output in SPL
 - Add TODO comments where it is not clear if the code is doing what it
is meant to be doing, even tough the board boots properly (these comments
refer to existing code, not to any code added by this patch)

Signed-off-by: Graeme Russ 
---

Changes in v2
 - Add missing newlines
 - Add commit message

Changed in v3
 - None

---
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c   |   1 +
 arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c |  13 +++-
 arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c   |  18 +
 arch/arm/cpu/arm926ejs/mxs/spl_power_init.c | 100 +++-
 4 files changed, 127 insertions(+), 5 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
index d29b9aa..2a5f817 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
@@ -147,6 +147,7 @@ void mxs_common_spl_init(const uint32_t arg, const uint32_t 
*resptr,
mxs_iomux_setup_multiple_pads(iomux_setup, iomux_size);
 
mxs_spl_console_init();
+   debug("SPL: Serial Console Initialised\n");
 
mxs_power_init();
 
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c
index cdfcddd..96bd32f 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c
@@ -18,6 +18,8 @@ void mxs_lradc_init(void)
 {
struct mxs_lradc_regs *regs = (struct mxs_lradc_regs *)MXS_LRADC_BASE;
 
+   debug("SPL: Initialisating LRADC\n");
+
writel(LRADC_CTRL0_SFTRST, ®s->hw_lradc_ctrl0_clr);
writel(LRADC_CTRL0_CLKGATE, ®s->hw_lradc_ctrl0_clr);
writel(LRADC_CTRL0_ONCHIP_GROUNDREF, ®s->hw_lradc_ctrl0_clr);
@@ -37,9 +39,15 @@ void mxs_lradc_enable_batt_measurement(void)
 {
struct mxs_lradc_regs *regs = (struct mxs_lradc_regs *)MXS_LRADC_BASE;
 
+   debug("SPL: Enabling LRADC battery measurement\n");
+
/* Check if the channel is present at all. */
-   if (!(readl(®s->hw_lradc_status) & LRADC_STATUS_CHANNEL7_PRESENT))
+   if (!(readl(®s->hw_lradc_status) & LRADC_STATUS_CHANNEL7_PRESENT)) {
+   debug("SPL: LRADC channel 7 is not present - aborting\n");
return;
+   }
+
+   debug("SPL: LRADC channel 7 is present - configuring\n");
 
writel(LRADC_CTRL1_LRADC7_IRQ_EN, ®s->hw_lradc_ctrl1_clr);
writel(LRADC_CTRL1_LRADC7_IRQ, ®s->hw_lradc_ctrl1_clr);
@@ -65,6 +73,7 @@ void mxs_lradc_enable_batt_measurement(void)
100, ®s->hw_lradc_delay3);
 
writel(0x, ®s->hw_lradc_ch7_clr);
-
writel(LRADC_DELAY_KICK, ®s->hw_lradc_delay3_set);
+
+   debug("SPL: LRADC channel 7 configuration complete\n");
 }
diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
index 97ef67d..a744e5d 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c
@@ -92,6 +92,7 @@ static uint32_t dram_vals[] = {
 
 __weak void mxs_adjust_memory_params(uint32_t *dram_vals)
 {
+   debug("SPL: Using default SDRAM parameters\n");
 }
 
 #ifdef CONFIG_MX28
@@ -99,8 +100,10 @@ static void initialize_dram_values(void)
 {
int i;
 
+   debug("SPL: Setting mx28 board specific SDRAM parameters\n");
mxs_adjust_memory_params(dram_vals);
 
+   debug("SPL: Applying SDRAM parameters\n");
for (i = 0; i < ARRAY_SIZE(dram_vals); i++)
writel(dram_vals[i], MXS_DRAM_BASE + (4 * i));
 }
@@ -109,6 +112,7 @@ static void initialize_dram_values(void)
 {
int i;
 
+   debug("SPL: Setting mx23 board specific SDRAM parameters\n");
mxs_adjust_memory_params(dram_vals);
 
/*
@@ -120,6 +124,7 @@ static void initialize_dram_values(void)
 * HW_DRAM_CTL8 is setup as the last element.
 * So skip the initialization of these HW_DRAM_CTL registers.
 */
+   debug("SPL: Applying SDRAM parameters\n");
for (i = 0; i < ARRAY_SIZE(dram_vals); i++) {
if (i == 8 || i == 27 || i == 28 || i == 35)
continue;
@@ -146,6 +151,8 @@ static void mxs_mem_init_clock(void)
const unsigned char divider = 21;
 #endif
 
+   debug("SPL: Initialising FRAC0\n");
+
/* Gate EMI clock */
writeb(CLKCTRL_FRAC_CLKGATE,
&clkctrl_regs->hw_clkctrl_frac0_set[CLKCTRL_FRAC0_EMI]);
@@ -170,6 +177,7 @@ static void mxs_mem_init_clock(void)
&clkctrl_regs->hw_clkctrl_clkseq_clr);
 
early_delay(1);
+   debug("SPL: FRAC0 Initialised\n");
 }
 
 static void mxs_mem_setup_cpu_and_hbus(void)
@@ -177,6 +185,8 @@ static void mxs_mem_setup_cpu_and_hbus

[U-Boot] [v3 PATCH 2/3] arm: mxs: Enable booting of mx28 without battery

2015-01-24 Thread Graeme Russ
Section 4.1.2 of Freescale Application Note AN4199 describes the
configuration required to operate the mx28 from a 5V source without a
battery.

This patch changes the behaviour of the dropout control of the DC-DC
converter (refer to section 11.12.9 of the mx28 Application Processor
Reference Manual - Document Number: MCIMX28RM, Rev 2, 08/2013) to the
following:
 - Always use 4P2 Linear Regulator if CONFIG_SYS_MXS_VDD5V_ONLY is defined
 - Switch between 4P2 Linear Regulator and Battery, using whichever has
   the highest voltage if CONFIG_SYS_MXS_VDD5V_ONLY isnot set (this is
   the same as the pre-patch behaviour)

Signed-off-by: Graeme Russ 
Signed-off-by: Damien Gotfroi 
---

Changes in v2
 - Implemented Damien Gotfroi's simplified version

Changes in v3
 - Updated commit message
 - Explicitly use POWER_DCDC4P2_DROPOUT_CTRL_SRC_4P2 for the
   DCDC4P2_DROPOUT_CONFIG define (it is 0x0 so it make no functional
   difference)

---
 arch/arm/cpu/arm926ejs/mxs/spl_power_init.c | 10 --
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
index 7fb734e..c342217 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_power_init.c
@@ -14,6 +14,13 @@
 
 #include "mxs_init.h"
 
+#ifdef CONFIG_SYS_MXS_VDD5V_ONLY
+#define DCDC4P2_DROPOUT_CONFIG POWER_DCDC4P2_DROPOUT_CTRL_100MV | \
+   POWER_DCDC4P2_DROPOUT_CTRL_SRC_4P2
+#else
+#define DCDC4P2_DROPOUT_CONFIG POWER_DCDC4P2_DROPOUT_CTRL_100MV | \
+   POWER_DCDC4P2_DROPOUT_CTRL_SRC_SEL
+#endif
 /**
  * mxs_power_clock2xtal() - Switch CPU core clock source to 24MHz XTAL
  *
@@ -303,8 +310,7 @@ static void mxs_power_init_4p2_params(void)
 
clrsetbits_le32(&power_regs->hw_power_dcdc4p2,
POWER_DCDC4P2_DROPOUT_CTRL_MASK,
-   POWER_DCDC4P2_DROPOUT_CTRL_100MV |
-   POWER_DCDC4P2_DROPOUT_CTRL_SRC_SEL);
+   DCDC4P2_DROPOUT_CONFIG);
 
clrsetbits_le32(&power_regs->hw_power_5vctrl,
POWER_5VCTRL_CHARGE_4P2_ILIMIT_MASK,
-- 
1.9.3

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [v3 PATCH 3/3] arm: mxs: Add 'Wait for JTAG user' if booted in JTAG mode

2015-01-24 Thread Graeme Russ
When booting in JTAG mode, there is no way to use soft break-points, and
no way of knowing when SPL has finished executing (so the user can issue
a 'halt' command to load u-boot.bin for example)

Add a debug output and simple loop to stop execution at the completion of
the SPL initialisation as a pseudo break-point when booting in JTAG mode

Signed-off-by: Graeme Russ 
---

Changes in v2
 - Added and used boot mode #defines

Changes in v3
 - Removed extra new-line

---
 arch/arm/cpu/arm926ejs/mxs/spl_boot.c |  5 +
 arch/arm/include/asm/arch-mxs/sys_proto.h | 17 +
 2 files changed, 22 insertions(+)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
index 2a5f817..d7956e5 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
@@ -157,6 +157,11 @@ void mxs_common_spl_init(const uint32_t arg, const 
uint32_t *resptr,
data->boot_mode_idx = bootmode;
 
mxs_power_wait_pswitch();
+
+   if (mxs_boot_modes[data->boot_mode_idx].boot_pads == MXS_BM_JTAG) {
+   debug("SPL: Waiting for JTAG user\n");
+   asm volatile ("x: b x");
+   }
 }
 
 /* Support aparatus */
diff --git a/arch/arm/include/asm/arch-mxs/sys_proto.h 
b/arch/arm/include/asm/arch-mxs/sys_proto.h
index 062f3de..4678723 100644
--- a/arch/arm/include/asm/arch-mxs/sys_proto.h
+++ b/arch/arm/include/asm/arch-mxs/sys_proto.h
@@ -74,6 +74,23 @@ static const struct mxs_pair mxs_boot_modes[] = {
 #endif
 };
 
+#define MXS_BM_USB 0x00
+#define MXS_BM_I2C_MASTER_3V3  0x01
+#define MXS_BM_I2C_MASTER_1V8  0x11
+#define MXS_BM_SPI2_MASTER_3V3_NOR 0x02
+#define MXS_BM_SPI2_MASTER_1V8_NOR 0x12
+#define MXS_BM_SPI3_MASTER_3V3_NOR 0x03
+#define MXS_BM_SPI3_MASTER_1V8_NOR 0x13
+#define MXS_BM_NAND_3V30x04
+#define MXS_BM_NAND_1V80x14
+#define MXS_BM_JTAG0x06
+#define MXS_BM_SPI3_MASTER_3V3_EEPROM  0x08
+#define MXS_BM_SPI3_MASTER_1V8_EEPROM  0x18
+#define MXS_BM_SDMMC0_3V3  0x09
+#define MXS_BM_SDMMC0_1V8  0x19
+#define MXS_BM_SDMMC1_3V3  0x0a
+#define MXS_BM_SDMMC1_1V8  0x1a
+
 struct mxs_spl_data {
uint8_t boot_mode_idx;
uint32_tmem_dram_size;
-- 
1.9.3

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [v3 PATCH 0/3] Add support for booting mx28 boards without a battery

2015-01-24 Thread Graeme Russ
This series adds support for booting mx28 based boards which do not
include a battery as per Freescale application note AN4199

Patch 1 adds SPL debug output to help track down where early init
of the power block and SDRAM fails (define DEBUG and
CONFIG_SPL_SERIAL_SUPPORT in order to enable)

Patch 2 (which implements booting without a battery) is based on a patch
submitted to the Freescale community forums by Damien Gotfroi (define
CONFIG_SYS_MXS_VDD5V_ONLY to enable)

Patch 3 adds a useful halt upon completion of SPL in the case that the
board is booted in JTAG mode. If SPL debug is enabled, 'Waiting for JTAG
user' will be printed to the console when SPL has completed

Changes in v2
 - Dropped patch which adds Reachtech G2C1 board in order to allow the
   'no battery' functionality to be mainlined as soon as possible
 - Removed the patch which moved the PLL power up from spl_power_init.c
   to spl_mem_init.c - This patch will be considered in future rework
   of the power block and SDRAM initialisation code

Changes in v3
 - Clarified commit message for patch 2
 - Used explicit define in patch 2 (define == 0x00, so no functional
   change)
 - Removed extra blank line from patch #3


Graeme Russ (3):
  arm: mxs: Add debug outputs and comments to mxs SPL source files
  arm: mxs: Enable booting of mx28 without battery
  arm: mxs: Add 'Wait for JTAG user' if booted in JTAG mode

 arch/arm/cpu/arm926ejs/mxs/spl_boot.c   |   6 ++
 arch/arm/cpu/arm926ejs/mxs/spl_lradc_init.c |  13 +++-
 arch/arm/cpu/arm926ejs/mxs/spl_mem_init.c   |  18 +
 arch/arm/cpu/arm926ejs/mxs/spl_power_init.c | 110 ++--
 arch/arm/include/asm/arch-mxs/sys_proto.h   |  17 +
 5 files changed, 157 insertions(+), 7 deletions(-)

-- 
1.9.3

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 03/12] net: Use new checksum functions

2015-01-24 Thread Joe Hershberger
On Mon, Jan 19, 2015 at 11:16 PM, Simon Glass  wrote:
>
> Drop the old checksum functions in favour of the new ones.
>
> Signed-off-by: Simon Glass 

Looks good to me.

Acked-by: Joe Hershberger 

Thanks!
-Joe
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] Please pull u-boot-fsl-qoriq master

2015-01-24 Thread York Sun
Tom,

The following changes since commit 37b608a52dcb13312a4f7ccea199cd6bac76d298:

  powerpc: remove icecube_5200, Lite5200, cpci5200, mecp5200, pf5200 (2015-01-23
16:56:09 -0500)

are available in the git repository at:

  git://git.denx.de/u-boot-fsl-qoriq.git master

for you to fetch changes up to 41ba57d0c7968506ddcc71604bd39131acf6ee23:

  fsl/ls1021qds: Add deep sleep support (2015-01-24 09:12:32 -0600)


Alison Wang (5):
  ls102xa: etsec: Select ge0_clk125 for eTSEC clock muxing as default
  arm: ls102xa: Update snoop settings for CCI-400
  ls102xa: fdt: Disable QSPI and DSPI in NOR/NAND/SD boot
  arm: ls102xa: Add LPUART support for LS1021AQDS board
  arm: ls102xa: Add LPUART support for LS1021ATWR board

Ruchika Gupta (2):
  arm: ls102xa: Add dummy gpio.h to enable CONFIG_OF_CONTROL
  crypto/fsl: Add fixup for crypto node

Xiubo Li (1):
  ls102xa: dcu: Add platform support for DCU on LS1021AQDS board

York Sun (1):
  arm/ls1021a: Add workaround for DDR erratum A008378

tang yuantian (2):
  ARM: HYP/non-sec: Make variable gic_dist_addr as a local one
  fsl/ls1021qds: Add deep sleep support

 arch/arm/cpu/armv7/ls102xa/fdt.c  |   49 ++
 arch/arm/cpu/armv7/virt-v7.c  |9 +-
 arch/arm/include/asm/arch-ls102xa/config.h|5 +
 arch/arm/include/asm/arch-ls102xa/gpio.h  |   15 ++
 arch/arm/include/asm/arch-ls102xa/immap_ls102xa.h |4 +
 arch/powerpc/cpu/mpc8xxx/fdt.c|  170 ---
 arch/powerpc/include/asm/config.h |1 +
 board/freescale/ls1021aqds/MAINTAINERS|1 +
 board/freescale/ls1021aqds/Makefile   |1 +
 board/freescale/ls1021aqds/dcu.c  |   92 +++
 board/freescale/ls1021aqds/ddr.c  |   17 ++
 board/freescale/ls1021aqds/ls1021aqds.c   |   86 +-
 board/freescale/ls1021aqds/ls1021aqds_qixis.h |2 +
 board/freescale/ls1021atwr/MAINTAINERS|1 +
 board/freescale/ls1021atwr/ls1021atwr.c   |   25 +--
 configs/ls1021aqds_nor_lpuart_defconfig   |3 +
 configs/ls1021atwr_nor_lpuart_defconfig   |3 +
 drivers/crypto/fsl/Makefile   |1 +
 drivers/crypto/fsl/sec.c  |  184 +
 drivers/ddr/fsl/fsl_ddr_gen4.c|8 +
 include/configs/ls1021aqds.h  |   41 -
 include/configs/ls1021atwr.h  |   12 ++
 include/fsl_ddr.h |6 +
 23 files changed, 545 insertions(+), 191 deletions(-)
 create mode 100644 arch/arm/include/asm/arch-ls102xa/gpio.h
 create mode 100644 board/freescale/ls1021aqds/dcu.c
 create mode 100644 configs/ls1021aqds_nor_lpuart_defconfig
 create mode 100644 configs/ls1021atwr_nor_lpuart_defconfig
 create mode 100644 drivers/crypto/fsl/sec.c

Thanks.

York
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v2 2/2] fsl/ls1021qds: Add deep sleep support

2015-01-24 Thread York Sun


On 12/16/2014 10:58 PM, Tang Yuantian wrote:
> Add deep sleep support on Freescale LS1021QDS platform.
> 
> Signed-off-by: Tang Yuantian 
> ---
> based on: u-boot-fsl-qoriq master.
> depends on patch: http://patchwork.ozlabs.org/patch/420999/
> which is applied to u-boot-mpc85xx master, awaiting upstream.
> v2:
>   - added sd boot deep sleep support
> 


Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/2] arm: ls102xa: Add LPUART support for LS1021ATWR board

2015-01-24 Thread York Sun


On 01/04/2015 01:30 AM, Alison Wang wrote:
> This patch adds LPUART support for LS1021ATWR board.
> For ls1021atwr_nor_lpuart_defconfig, LPUART is used as the console.
> 
> Signed-off-by: Alison Wang 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] arm: ls102xa: Add LPUART support for LS1021AQDS board

2015-01-24 Thread York Sun


On 01/04/2015 01:30 AM, Alison Wang wrote:
> This patch adds LPUART support for LS1021AQDS board.
> For ls1021aqds_nor_lpuart_defconfig, LPUART is used as the console.
> 
> Signed-off-by: Alison Wang 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] ls102xa: fdt: Disable QSPI and DSPI in NOR/NAND/SD boot

2015-01-24 Thread York Sun


On 12/25/2014 11:14 PM, Alison Wang wrote:
> As QSPI/DSPI and IFC are pin multiplexed, QSPI and DSPI are
> only enabled in QSPI boot, and disabled in other boot modes.
> IFC is enabled in NOR/NAND/SD boot, and disabled in QSPI boot.
> This patch will add fdt support for the above rules.
> 
> Signed-off-by: Alison Wang 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] arm: ls102xa: Update snoop settings for CCI-400

2015-01-24 Thread York Sun


On 01/15/2015 03:29 AM, Alison Wang wrote:
> CAAM is connected to CCI-400 S0 slave interface. Disable snooping for
> S0 will cause CAAM self test failure. This patch is to enable snooping
> for S0 slave interface. These CCI-400 operations are moved to
> board_early_init_f() to be initialized earlier. For S4 slave interface,
> issuing of snoop requests and DVM message requests are enabled.
> 
> Signed-off-by: Alison Wang 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v2 1/2] ARM: HYP/non-sec: Make variable gic_dist_addr as a local one

2015-01-24 Thread York Sun


On 12/16/2014 10:58 PM, Tang Yuantian wrote:
> Defining variable gic_dist_addr as a globe one prevents some
> functions, which use it, from being used before relocation
> which is the case in the deep sleep resume process on Freescale
> SoC platforms.
> Besides, we can always get the GIC base address by calling
> get_gicd_base_address() without referring gic_dist_addr.
> 
> Signed-off-by: Tang Yuantian 
> ---
> v2:
>   - change variable gic_dist_addr back as local
> 

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] ls102xa: dcu: Add platform support for DCU on LS1021AQDS board

2015-01-24 Thread York Sun


On 12/16/2014 12:50 AM, Xiubo Li wrote:
> This patch adds the CH7301 HDMI options and the common configuration
> for DCU on LS1021AQDS board.
> 
> Signed-off-by: Xiubo Li 
> Signed-off-by: Alison Wang 
> Cc: Jason Jin 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] crypto/fsl: Add fixup for crypto node

2015-01-24 Thread York Sun


On 12/15/2014 12:00 AM, Ruchika Gupta wrote:
> Era property is added in the crypto node in device tree.
> Move the code to do so from arch/powerpc/mpc8xxx/fdt.c to
> drivers/sec/sec.c so that it can be used across arm and
> powerpc platforms having crypto node.
> 
> Signed-off-by: Ruchika Gupta 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 1/2] arm: ls102xa: Add dummy gpio.h to enable CONFIG_OF_CONTROL

2015-01-24 Thread York Sun


On 12/10/2014 12:17 AM, Ruchika Gupta wrote:
> If CONFIG_OF_CONTROL is enabled, lib/fdtdec.c is compiled.
> It includes  and then  includes
> .  As a result, all the SoCs that enable
> CONFIG_OF_CONTROL must have  even if they
> do not support GPIO.
> 
> The right fix would be to split the lib/fdtdec.c to remove
> dependency on GPIO.This commit adds a dummy 
> to support OF_CONTROL for LS102x platform. This dummy header
> will be removed after FDT-GPIO stuff is fixed correctly.
> 
> Signed-off-by: Ruchika Gupta 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [RFC PATCH] dm:spi:fsl_qspi add DM support

2015-01-24 Thread Peng Fan

Hi, Simon

On 1/23/2015 6:29 AM, Simon Glass wrote:

Hi Peng,

On 16 January 2015 at 22:59, Peng Fan  wrote:

Hi Simon ,Jagan

This patch is based on git://git.denx.de/u-boot-spi.git master branch,
since some fsl_qspi's new feature is still in this git repo and have
not been merged to mainline.
I saw Simon sent out a new patch that remove the per_child_auto_alloc_size
from the platforms' driver code and move it to spi uclass driver. In
this patch I do not remove it, since this is a RFC version, and Jagan's
spi git repo still has it. I can remove it in formal version if needed.
Please take your time to review and comment this patch.

Thanks.

This patch adds DM support for fsl_qspi driver, the DM part needs
device tree support.

Partial of the original driver code is reused, such as the AHB part,
the LUT initialization and etc. The driver now supports new DM and original
driver by define "CONFIG_DM_SPI". Until device tree is integrated, the
original part can be discarded.

The driver code file is now as following:
  "

  Common code that needs both by DM or original driver code.

  #if defined(CONFIG_DM_SPI)

  DM part

  #else

  Original driver code

  #endif
"

In DM part, some reconstruction is done. A fsl_qspi_runcmd is included to
simplify the code, but not the original qspi_op_s. fsl_qspi_get_seqid
is included to get seqid, but not hardcoded in original qspi_op_s.

Not sure where this driver is going - I'm happy to pick it up if you
work things out with Jagan. For now I'll just make a few comments, in
case they are useful.
Thanks for your comments. Since some features in spi repo of Jagan are 
not into mainline, if DM support is not based on with the spi repo, more 
work from your side will needed to resolve merging conflict. Also i'd 
like to do this with the new qspi driver.



Signed-off-by: Peng Fan 
---
  drivers/spi/fsl_qspi.c | 420 +++--
  drivers/spi/fsl_qspi.h |   1 +
  2 files changed, 405 insertions(+), 16 deletions(-)

diff --git a/drivers/spi/fsl_qspi.c b/drivers/spi/fsl_qspi.c
index 5e0b069..ee151b3 100644
--- a/drivers/spi/fsl_qspi.c
+++ b/drivers/spi/fsl_qspi.c
@@ -13,6 +13,13 @@
  #include 
  #include "fsl_qspi.h"

+#ifdef CONFIG_DM_SPI

Shouldn't need these #ifdefs around header files.

will remove uneccesary `ifdefs`



+#include 
+#include 
+#include 
+#include 
+#endif
+
  #define RX_BUFFER_SIZE 0x80
  #ifdef CONFIG_MX6SX
  #define TX_BUFFER_SIZE 0x200
@@ -71,27 +78,41 @@
  #define qspi_write32   out_be32
  #endif

-static unsigned long spi_bases[] = {
-   QSPI0_BASE_ADDR,
-#ifdef CONFIG_MX6SX
-   QSPI1_BASE_ADDR,
-#endif
-};
+#ifdef CONFIG_DM_SPI
+DECLARE_GLOBAL_DATA_PTR;
+#define QUADSPI_AHBMAP_BANK_MAXSIZESZ_64M

-static unsigned long amba_bases[] = {
-   QSPI0_AMBA_BASE,
-#ifdef CONFIG_MX6SX
-   QSPI1_AMBA_BASE,
-#endif
+struct fsl_qspi_platdata {
+   u32 max_hz;
+   u32 reg_base;
+   u32 amba_base;
+   u32 flash_num;
  };

  struct fsl_qspi {
+   u32 reg_base;
+   u32 amba_base;

Should these be structure pointers?

Yeah. using structure pointer for reg_base is better.



+   size_t  cmd_len;
+   u8  cmd_buf[32];
+   size_t  data_len;
+   int qspi_is_init;
+   size_t  flash_size;
+   u32 bank_memmap_phy[4];
+   int cs;

Do you need cs in here? The per-child platform data has it if you base
it on u-boot-dm/i2c-working (which is what I suggest).
I need `cs` to configure qspi controller each time `sf probe bus:cs`. If 
not use `cs` to configure controller, wrong chips will be accessed. I'll 
look into i2c-working branch to see how to use it.



+   u32 sf_addr;
+   int flash_num;
+   u8  cur_seqid;
+   u32 freq;
+};
+#else

Will there still be non-driver-model users of this driver? Can we
convert them over?
yeah. The platforms that using this driver does not support DM/DT in 
their default configuration file, so i'd like this driver support DM and 
no-DM.





+struct fsl_qspi {
 struct spi_slave slave;
 unsigned long reg_base;
 unsigned long amba_base;
 u32 sf_addr;
 u8 cur_seqid;
  };
+#endif

  /* QSPI support swapping the flash read/write data
   * in hardware for LS102xA, but not for VF610 */
@@ -104,11 +125,6 @@ static inline u32 qspi_endian_xchg(u32 data)
  #endif
  }

-static inline struct fsl_qspi *to_qspi_spi(struct spi_slave *slave)
-{
-   return container_of(slave, struct fsl_qspi, slave);
-}
-
  static void qspi_set_lut(struct fsl_qspi *qspi)
  {
 struct fsl_qspi_regs *regs = (struct fsl_qspi_regs *)qspi->reg_base;
@@ -367,6 +383,377 @@ static void qspi_init_ahb_read(struct fsl_qspi_regs *regs)
  }
  #endif

+#ifdef CONFIG_DM_SPI
+/* Get the SEQID for the command 

Re: [U-Boot] [PATCH v1] ls102xa: etsec: Select ge0_clk125 for eTSEC clock muxing as default

2015-01-24 Thread York Sun


On 12/09/2014 03:38 AM, Alison Wang wrote:
> This patch reverts to use ge0_clk125 for eTSEC clock muxing. For SAI and
> CAN which are pin multiplexed with RGMII1 in EC1 of RCW, ge2_clk125 will
> be used via hwconfig.
> 
> Signed-off-by: Bhupesh Sharma 
> Signed-off-by: Alison Wang 
> ---

Applied to u-boot-fsl-qoriq master branch, awaiting upstream.

York

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 4/4] dm:gpio:mxc add DT support

2015-01-24 Thread Peng Fan

Hi Simon,

On 1/23/2015 5:26 AM, Simon Glass wrote:

Hi Peng,

On 21 January 2015 at 04:09, Peng Fan  wrote:

This patch add DT support for mxc gpio driver.

There are one place using CONFIG_OF_CONTROL macro.
1. The U_BOOT_DEVICES and mxc_plat array are complied out. To DT,
platdata is alloced using calloc, so there is no need to use mxc_plat.

The following situations are tested, and all work fine:
1. with DM, without DT
2. with DM and DT
3. without DM
Since device tree has not been upstreamed, if want to test this patch.
The followings need to be done.
  + pieces of code does not gpio_request when using gpio_direction_xxx and
etc, need to request gpio.
  + move the gpio settings from board_early_init_f to board_init
  + define CONFIG_DM ,CONFIG_DM_GPIO and CONFIG_OF_CONTROL
  + Add device tree file and do related configuration in
`make ARCH=arm menuconfig`
These will be done in future patches by step.

Signed-off-by: Peng Fan 
---
  drivers/gpio/mxc_gpio.c | 69 +
  1 file changed, 52 insertions(+), 17 deletions(-)

diff --git a/drivers/gpio/mxc_gpio.c b/drivers/gpio/mxc_gpio.c
index c52dd19..0766b78 100644
--- a/drivers/gpio/mxc_gpio.c
+++ b/drivers/gpio/mxc_gpio.c
@@ -151,6 +151,9 @@ int gpio_direction_output(unsigned gpio, int value)
  #endif

  #ifdef CONFIG_DM_GPIO
+#include 
+DECLARE_GLOBAL_DATA_PTR;
+
  static int mxc_gpio_is_output(struct gpio_regs *regs, int offset)
  {
 u32 val;
@@ -259,23 +262,6 @@ static const struct dm_gpio_ops gpio_mxc_ops = {
 .get_function   = mxc_gpio_get_function,
  };

-static const struct mxc_gpio_plat mxc_plat[] = {
-   { 0, (struct gpio_regs *)GPIO1_BASE_ADDR },
-   { 1, (struct gpio_regs *)GPIO2_BASE_ADDR },
-   { 2, (struct gpio_regs *)GPIO3_BASE_ADDR },
-#if defined(CONFIG_MX25) || defined(CONFIG_MX27) || defined(CONFIG_MX51) || \
-   defined(CONFIG_MX53) || defined(CONFIG_MX6)
-   { 3, (struct gpio_regs *)GPIO4_BASE_ADDR },
-#endif
-#if defined(CONFIG_MX27) || defined(CONFIG_MX53) || defined(CONFIG_MX6)
-   { 4, (struct gpio_regs *)GPIO5_BASE_ADDR },
-   { 5, (struct gpio_regs *)GPIO6_BASE_ADDR },
-#endif
-#if defined(CONFIG_MX53) || defined(CONFIG_MX6)
-   { 6, (struct gpio_regs *)GPIO7_BASE_ADDR },
-#endif
-};
-
  static int mxc_gpio_probe(struct udevice *dev)
  {
 struct mxc_bank_info *bank = dev_get_priv(dev);
@@ -296,12 +282,60 @@ static int mxc_gpio_probe(struct udevice *dev)
 return 0;
  }

+static int mxc_gpio_bind(struct udevice *device)

s/device/dev/ as that is the convention.

Will fix this.



+{
+   struct mxc_gpio_plat *plat = device->platdata;
+   struct gpio_regs *regs;
+
+   if (plat)
+   return 0;

Please add a comment as to why.

Ok.



+
+   regs = dev_get_addr(device);
+   if (!regs)
+   return -ENXIO;

-ENODEV I think?

Yeah. Right.

+
+   plat = calloc(1, sizeof(*plat));
+   if (!plat)
+   return -ENOMEM;

Can you use the auto-alloc feature instead? Trying to keep memory
allocations out of drivers unless it is for buffers, etc.
I want the DM code can support DT and no DT. To no DT, platdata is 
defined in U_BOOT_DEVICES.
If using auto-alloc feature, but DT is not supported, is it conflict 
with platdata in U_BOOT_DEVICES?



+
+   plat->regs = regs;
+   plat->bank_index = device->req_seq;

Why store this? You can access it anytime using the device pointer.
To no DT, bank_index is statically intialized  in mxc_plat array. I do 
not want to introudce `#ifdef CONFIG_OF_CONTROL` in probe function and 
introudce `if (dev->of_offset == -1)`, so

store it to bank_index.
To no DT, `if(plat) return 0;` will return. So plat->bank_index = 
device->req_seq will only effects for DT.

Just want to support DT and no DT.



+   device->platdata = plat;
+
+   return 0;
+}
+
+static const struct udevice_id mxc_gpio_ids[] = {
+   { .compatible = "fsl,imx35-gpio" },
+   { }
+};
+
  U_BOOT_DRIVER(gpio_mxc) = {
 .name   = "gpio_mxc",
 .id = UCLASS_GPIO,
 .ops= &gpio_mxc_ops,
 .probe  = mxc_gpio_probe,
 .priv_auto_alloc_size = sizeof(struct mxc_bank_info),
+   .of_match = mxc_gpio_ids,

Masahiro added a function for this.:

.of_match = of_match_ptr(mxc_gpio_ids),

But I'm not completely sure if this is wanted, since you include this
information even when not using device tree.
Thanks,I'll try this. I am not sure whether using of_match_ptr will make 
compiler complain mxc_gpio_ids `defined but not used` for no DT, since 
`#ifdef xx` is not recommended to compiled out `mxc_gpio_ids` for no DT.



+   .bind   = mxc_gpio_bind,
+};
+
+#ifndef CONFIG_OF_CONTROL
+static const struct mxc_gpio_plat mxc_plat[] = {
+   { 0, (struct gpio_regs *)GPIO1_BASE_ADDR },
+   { 1, (struct gpio_regs *)GPIO2_BASE_ADDR },
+   { 2, (struct gpio_regs *)GPIO3_BASE_ADDR },
+#if defined(CONF

Re: [U-Boot] [PATCH v2 06/26] dm: core: Allocate platform data when binding a device

2015-01-24 Thread Simon Glass
Hi Masahiro,

On 23 January 2015 at 22:04, Masahiro YAMADA  wrote:
> Hi Simon,
>
>
> 2015-01-24 0:50 GMT+09:00 Simon Glass :
>
>>
>> I tried to document the reasoning in the patches, but let me try to
>> expand a bit. Hopefully this can provoke further comments /
>> improvements.
>>
>> The main motivation for me was that buses want to set up the platform
>> data for their children before they are probed. In fact some children
>> may never be probed. For example a SPI bus wants to know the chip
>> select for each of its children.
>>
>> At present we have to hunt around in the device tree to figure out
>> which child is the right one, so we can probe it. Worse, the
>> children's drivers (e.g. cros_ec on a SPI bus) have to be involved in
>> setting themselves up. The device_probe_child() function was my
>> attempt to make this fit better, and it did work, but I was not happy
>> with it. You can see that from my unhappy comments in cros_ec, or SPI
>> flash probe, for example.
>>
>> The new approach makes buses easier to deal with as I hope you can
>> see. The 'bind' step is supposed to set up the entire basic framework
>> of the drivers at start-up. Everything should be visible in the tree
>> (the exception being buses which must be probed at run-time) but
>> nothing should be probed. Now, we are following that approach for
>> buses also.
>
> OK.
> I understand that this concept makes things much simpler, so
>
> Reviewed-by: Masahiro Yamada 
>

OK I will respin this series.

>
> Perhaps, we can have a flag like DM_FLAG_ALLOC_PLATDATA_LATE:
>  If this flag is set, platdata is allocated in device_probe(), not
> device_bind().
> But, I think it might make things much more complicated and
> probably make you unhappy.
> I do not have a strong option about this.
>

Well I'm keen on anything that makes it more efficient, but yes if we
can keep it simple we should do that for now. Let's see how things pan
out.

>
> Let's go with your idea!
> If something does not go well, then we can come back here.
>
>

Yes we can.

>
>
>> Re the disadvantages:
>>
>> - the per-child platform data for a bus is small, and we need not bind
>> devices which are disabled. So, a board should avoid having a lot of
>> enabled devices which are never used
>> - malloc() is very fast, it is the platform data setup that takes
>> time. I agree this slows things down. But currently it only affects
>> bus children, and only their basic information such as chip select.
>>
>> The use of ofdata_to_platdata() is stil confined to when the device is
>> actually probed. This helps to keep things fast in the common case
>> where we don't need the platform data earlier.
>>
>> I think we can refine this further, but what I have now feels a lot
>> cleaner to me.
>
> OK!
>
>
>
> I have done with a quick review of this series.
>
> I left some comments on some patches,but they are all minor issues.
>
> If you agree to fix them, please send v3.
> I am OK with the whole concept, so I guess we can get it in during  this MW.

Will do. Thanks very much for going through this in detail.

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] U-Boot on Sparc leon3

2015-01-24 Thread Simon Glass
Hi Florian,

On 23 January 2015 at 04:16, Florian Praden
 wrote:
> Hi,
>
> I'm trying to build u-boot for a new gaisler board (gr-pci-xc5v-LX110T).
>
> I have some trouble with the leon3/start.S and the linking process
> so I tried to build u-boot from a fresh clean GIT source with the board on
> board/gaisler/gr_xc3s_1500 which should be supported.
>
> And I'm having the same linking problem.
>
> I have already tried the u-boot 1.3.3 which is working on my board
> (booting, but the flash is not supported).
>
> The linking problem is the following:
>
> On version v2013.04:
>
> * In the relocation loop, the start.S define 2 variables which is set during 
> the
>   link:
> =
> /* un relocated start address of monitor */
> #define TEXT_START _text
>
> /* un relocated end address of monitor */
> #define DATA_END __init_end
>
> reloc:
> set TEXT_START,%g2
> set DATA_END,%g3
> set CONFIG_SYS_RELOC_MONITOR_BASE,%g4
> reloc_loop:
> =
>
> * compiling this start.S give the following relocation record
> =
> RELOCATION RECORDS FOR [.text]:
> OFFSET   TYPE  VALUE
> 009c R_SPARC_WDISP30   cpu_init_f
> 00a4 R_SPARC_HI22  _text
> 00a8 R_SPARC_LO10  _text
> 00ac R_SPARC_HI22  __init_end
> 00b0 R_SPARC_LO10  __init_end
> =
> with the following assembly code:
> =
> 00a4 :
>   a4:   05 00 00 00 sethi  %hi(0), %g2
>   a8:   84 10 a0 00 mov  %g2, %g2   ! 0 <_hardreset>
>   ac:   07 00 00 00 sethi  %hi(0), %g3
>   b0:   86 10 e0 00 mov  %g3, %g3   ! 0 <_hardreset>
>   b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4
>
> 00b8 :
> =
>
> For now, everythings is normal.
>
> After the linking process, I've the following elf:
>
> =
> 10a4 :
> 10a4:   05 00 00 03 sethi  %hi(0xc00), %g2
> 10a8:   84 10 a1 3c or  %g2, 0x13c, %g2 ! d3c 
> 10ac:   07 00 00 03 sethi  %hi(0xc00), %g3
> 10b0:   86 10 e1 30 or  %g3, 0x130, %g3 ! d30 
> 10b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4
> =
> And the associated .map:
>
> =
> .text   0x0x2d2b8
> 0x_load_addr = .
> 0x_text = .
> [...]
> .data.init
>  *(.data.init)
> 0x0003. = ALIGN (0x1000)
> 0x0003__init_end = .
> 0x0003__bss_start = .
> =
>
> And the others symbol in this start.S are not defined correctly either.
>
> On the v2013.01 version, I've the same intermediate file but the following  
> u-boot elf:
>
> =
> 10a4 :
> 10a4:   05 00 00 00 sethi  %hi(0), %g2
> 10a8:   84 10 a0 00 mov  %g2, %g2   ! 0 <_load_addr>
> 10ac:   07 00 00 c0 sethi  %hi(0x3), %g3
> 10b0:   86 10 e0 00 mov  %g3, %g3   ! 3 <__bss_start>
> 10b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4
> =
>
> Which is what I expected.
>
> On IRC, Marex give me the advice to check with git bisect and find the commit 
> which (I think) break the linking process.
> And It found this one:
> =
> eb33809f70e3d3a2c1fba043e56cca8fccedbe0c is the first bad commit
> commit eb33809f70e3d3a2c1fba043e56cca8fccedbe0c
> Author: Simon Glass 
> Date:   Tue Mar 5 14:40:03 2013 +
>
> sparc: Fix out-of-tree building
>
> It isn't clear why the sparc cpu Makefile has its own compile line, but
> it does not work correctly with an out-of-tree build. Removing it fixes
> this problem. Perhaps it does not introduce others.
>
> Signed-off-by: Simon Glass 
>
> :04 04 39dc0c7a3ff2feadaddeda1b7938502f30f2ed76 
> 7e77469d3aa8550d3f712470d45ef73e46b217b8 M  arch
> bisect run success
> 
>
> Which corresponds to remove the specific makefile for sparc.
>
>
> So what did i do wrong or misunderstund about the compiling u-boot process?
> Why removing specific compile process for sparc?

It looks like the compile line was needed, although I'm not sure why.
It used to say:

$(START): $(START:.o=.S)
$(CC) -D__ASSEMBLY__ $(DBGFLAGS) $(OPTFLAGS) -D__KERNEL__ \
-DCONFIG_SYS_TEXT_BASE=$(CONFIG_SYS_TEXT_BASE) -I$(TOPDIR)/include \
-fno-builtin -ffreestanding -nostdinc -isystem $(gccincdir) -pipe \
$(PLATFORM_CPPFLAGS) -Wall -Wstrict-prototypes \
-I$(TOPDIR)/board -c -o $(START) $(START:.o=.S)

I don't see anything in there that does something special with
compiler flags, but there must be some difference.

You could try comparing the compiler flags that are used with start.S
in each case. There may be some sort of difference, and then you can
add it to PLATFORM_CPPFLAGS or perhaps your arch/xxx/config.mk.

Re your second question, compilation is handled

Re: [U-Boot] [PATCH v4 2/3] pmic:pfuze implement pmic_mode_init

2015-01-24 Thread Peng Fan

Hi, Stefano

On 1/22/2015 6:30 PM, Stefano Babic wrote:

On 16/01/2015 17:05, Peng Fan wrote:

This patch is to implement pmic_mode_init function, and add prototype
in header file.

This function is to set switching mode for pmic buck regulators to
improve system efficiency.

Mode:
OFF: The regulator is switched off and the output voltage is discharged.
PFM: In this mode, the regulator is always in PFM mode, which
  is useful at light loads for optimized efficiency.
PWM: In this mode, the regulator is always in PWM mode operation
  regardless of load conditions.
APS: In this mode, the regulator moves automatically between
  pulse skipping mode and PWM mode depending on load conditions.

Signed-off-by: Peng Fan 
---

Changes v4:
  Take Fabio's comments, fix return value using -EINVAL when error.

Changes v3:
  delete the new feature, it is fine to use the original v1 patch version

Changes v2:
  implement new feature to configure one regulator

  board/freescale/common/pfuze.c | 36 
  board/freescale/common/pfuze.h |  1 +
  2 files changed, 37 insertions(+)

diff --git a/board/freescale/common/pfuze.c b/board/freescale/common/pfuze.c
index 2cd1794..c2a0105 100644
--- a/board/freescale/common/pfuze.c
+++ b/board/freescale/common/pfuze.c
@@ -8,6 +8,42 @@
  #include 
  #include 
  
+int pfuze_mode_init(struct pmic *p, u32 mode)

+{
+   unsigned char offset, i, switch_num;
+   u32 id, ret;
+
+   pmic_reg_read(p, PFUZE100_DEVICEID, &id);
+   id = id & 0xf;
+
+   if (id == 0) {
+   switch_num = 6;
+   offset = PFUZE100_SW1CMODE;
+   } else if (id == 1) {
+   switch_num = 4;
+   offset = PFUZE100_SW2MODE;
+   } else {
+   printf("Not supported, id=%d\n", id);
+   return -EINVAL;
+   }
+
+   ret = pmic_reg_write(p, PFUZE100_SW1ABMODE, mode);
+   if (ret < 0) {
+   printf("Set SW1AB mode error!\n");
+   return ret;
+   }
+
+   for (i = 0; i < switch_num - 1; i++) {
+   ret = pmic_reg_write(p, offset + i * 7, mode);

Even if it looks clear why, I would suggest a define into
pfuze100_pmic.h such as "SIZEOF_SWITCH (or what you prefer)" and drop
the constant here.
The switch_num is dynamically set according to deviceid. I think 
hardcode it using a macro is not a good idea.



+   if (ret < 0) {
+   printf("Set switch%x mode error!\n", offset + i * 7);
+   return ret;
+   }
+   }
+
+   return ret;
+}
+
  struct pmic *pfuze_common_init(unsigned char i2cbus)
  {
struct pmic *p;
diff --git a/board/freescale/common/pfuze.h b/board/freescale/common/pfuze.h
index 7a4126c..53cfc99 100644
--- a/board/freescale/common/pfuze.h
+++ b/board/freescale/common/pfuze.h
@@ -8,5 +8,6 @@
  #define __PFUZE_BOARD_HELPER__
  
  struct pmic *pfuze_common_init(unsigned char i2cbus);

+int pfuze_mode_init(struct pmic *p, u32 mode);
  
  #endif



Best regards,
Stefano Babic


Regards,
Peng.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] x86: Remove CONFIG_SATA_INTEL from x86-common.h

2015-01-24 Thread Simon Glass
On 24 January 2015 at 02:17, Bin Meng  wrote:
> CONFIG_SATA_INTEL is not referenced anywhere, so remove it.
>
> Signed-off-by: Bin Meng 
> ---
>
>  include/configs/x86-common.h | 1 -
>  1 file changed, 1 deletion(-)

Acked-by: Simon Glass 
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 10/12] x86: config: Enable hook for saving MRC configuration

2015-01-24 Thread Simon Glass
On 19 January 2015 at 23:04, Bin Meng  wrote:
> On Tue, Jan 20, 2015 at 1:16 PM, Simon Glass  wrote:
>> Add a hook to ensure that this information is saved.
>>
>> Signed-off-by: Simon Glass 
>> ---
>>
>> Changes in v3:
>> - Add misc_init_r() call for link now that it is shared with chromebook_link
>>
>> Changes in v2: None
>>
>>  arch/x86/cpu/coreboot/coreboot.c  | 5 +
>>  include/configs/chromebook_link.h | 1 +
>>  2 files changed, 6 insertions(+)
>>
>> diff --git a/arch/x86/cpu/coreboot/coreboot.c 
>> b/arch/x86/cpu/coreboot/coreboot.c
>> index 6d06d5a..4cdd0d4 100644
>> --- a/arch/x86/cpu/coreboot/coreboot.c
>> +++ b/arch/x86/cpu/coreboot/coreboot.c
>> @@ -99,3 +99,8 @@ void panic_puts(const char *str)
>> while (*str)
>> NS16550_putc(port, *str++);
>>  }
>> +
>> +int misc_init_r(void)
>> +{
>> +   return 0;
>> +}
>> diff --git a/include/configs/chromebook_link.h 
>> b/include/configs/chromebook_link.h
>> index 7e6d239..6e8b9ef 100644
>> --- a/include/configs/chromebook_link.h
>> +++ b/include/configs/chromebook_link.h
>> @@ -20,6 +20,7 @@
>>
>>  #define CONFIG_DCACHE_RAM_MRC_VAR_SIZE 0x4000
>>  #define CONFIG_BOARD_EARLY_INIT_F
>> +#define CONFIG_MISC_INIT_R
>>
>>  #define CONFIG_NR_DRAM_BANKS   8
>>  #define CONFIG_X86_MRC_ADDR0xfffa
>> --
>
> Reviewed-by: Bin Meng 

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 11/12] x86: ivybridge: Drop the Kconfig MRC cache information

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> This is now stored in the device tree.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3: None
> Changes in v2: None
>
>  arch/x86/cpu/ivybridge/Kconfig | 28 
>  1 file changed, 28 deletions(-)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 12/12] x86: config: chromebook_link: Enable environment

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> Enable an environment area.
>
> Signed-off-by: Simon Glass 
> Reviewed-by: Bin Meng 
> ---
>
> Changes in v3: None
> Changes in v2: None
>
>  include/configs/chromebook_link.h | 7 +++
>  1 file changed, 7 insertions(+)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 04/12] x86: Use ipchecksum from net/

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> The existing IP checksum function is only accessible to the 'coreboot' cpu.
> Drop it in favour of the new code in the network subsystem.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3:
> - Use checksum code that is now in net/checksum.c
>
> Changes in v2:
> - Refactor IP checksum patches
>
>  arch/x86/cpu/coreboot/Makefile  |  1 -
>  arch/x86/cpu/coreboot/ipchecksum.c  | 55 
> -
>  arch/x86/cpu/coreboot/tables.c  |  8 ++--
>  arch/x86/include/asm/arch-coreboot/ipchecksum.h | 37 -
>  4 files changed, 4 insertions(+), 97 deletions(-)
>  delete mode 100644 arch/x86/cpu/coreboot/ipchecksum.c
>  delete mode 100644 arch/x86/include/asm/arch-coreboot/ipchecksum.h

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 07/12] Allow architecture-specific memory reservation

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> All memory to be reserved for use after relocation by adding a new call
> to perform this reservation.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3: None
> Changes in v2: None
>
>  common/board_f.c | 7 +++
>  1 file changed, 7 insertions(+)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 08/12] x86: dts: Add SPI flash MRC details for chromebook_link

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> Correct the SPI flash compatible string, add an alias and specify the
> position of the MRC cache, used to store SDRAM training settings for the
> Memory Reference Code.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3:
> - Drop accidental creation of link.dts due to bad rebase
>
> Changes in v2:
> - Make changes to chromebook_link.dts since link.dts is gone
> - Use intel,ich-spi as the compatible string
>
>  arch/x86/dts/chromebook_link.dts | 15 ++-
>  1 file changed, 14 insertions(+), 1 deletion(-)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 06/12] x86: spi: Add device tree support

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> As a temporary measure before the ICH driver moves over to driver model,
> add device tree support to the driver.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3: None
> Changes in v2: None
>
>  drivers/spi/ich.c| 7 +++
>  include/configs/x86-common.h | 1 +
>  2 files changed, 8 insertions(+)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 09/12] x86: Implement a cache for Memory Reference Code parameters

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> The memory reference code takes a very long time to 'train' its SDRAM
> interface, around half a second. To avoid this delay on every boot we can
> store the parameters from the last training sessions to speed up the next.
>
> Add an implementation of this, storing the training data in CMOS RAM and
> SPI flash.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3:
> - Use checksum code from net/checksum.c
>
> Changes in v2:
> - Update for the new CMOS RAM access functions in the RTC
> - Add a comment about why both CMOS RAM and SPI flash are used for the cache
>
>  arch/x86/cpu/ivybridge/Makefile|   1 +
>  arch/x86/cpu/ivybridge/mrccache.c  | 156 +++
>  arch/x86/cpu/ivybridge/sdram.c | 253 
> +
>  arch/x86/include/asm/arch-ivybridge/mrccache.h |  51 +
>  arch/x86/include/asm/global_data.h |   3 +
>  5 files changed, 464 insertions(+)
>  create mode 100644 arch/x86/cpu/ivybridge/mrccache.c
>  create mode 100644 arch/x86/include/asm/arch-ivybridge/mrccache.h

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 05/12] x86: rtc: mc146818: Add helpers to read/write CMOS RAM

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> On x86 we use CMOS RAM to read and write some settings. Add basic support
> for this, including access to registers 128-255.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3:
> - Adjust functions to remain compatible with other RTC drivers
>
> Changes in v2:
> - Adjust the mc146818 driver instead of adding a new cmos.h header
>
>  drivers/rtc/mc146818.c | 121 
> +
>  include/rtc.h  |  32 +
>  2 files changed, 105 insertions(+), 48 deletions(-)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 02/12] net: Add a separate file for IP checksumming

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> Move the checksum code out into its own file so it can be used elsewhere.
> Also use a new version which supports a length which is not a multiple of
> 2 and add a new function to add two checksums.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3:
> - Add new patch to move checksum to its own file in net/
>
> Changes in v2: None
>
>  include/net.h  | 30 +
>  net/Makefile   |  1 +
>  net/checksum.c | 60 
> ++
>  3 files changed, 91 insertions(+)
>  create mode 100644 net/checksum.c

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 01/12] x86: dts: Add compatible string for Intel ICH9 SPI controller

2015-01-24 Thread Simon Glass
On 19 January 2015 at 22:16, Simon Glass  wrote:
> Add this to the enum so that we can use the various fdtdec functions. A
> later commit will move this driver to driver model.
>
> Signed-off-by: Simon Glass 
> ---
>
> Changes in v3: None
> Changes in v2:
> - Use intel,ich-spi as the compatible string
>
>  include/fdtdec.h | 1 +
>  lib/fdtdec.c | 1 +
>  2 files changed, 2 insertions(+)

Applied to u-boot-x86.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 0/12] Add support for caching Memory Reference Code data

2015-01-24 Thread Simon Glass
On 23 January 2015 at 20:56, Bin Meng  wrote:
> Hi Simon,
>
> On Sat, Jan 24, 2015 at 5:17 AM, Simon Glass  wrote:
>> Hi Bin,
>>
>> On 19 January 2015 at 22:16, Simon Glass  wrote:
>>> Since the memory reference code is so slow on x86, add a feature to bypass
>>> this, storing the previous parameters in SPI flash. This saves around 500ms
>>> on each boot.
>>>
>>> Also enable a SPI flash environment.
>>>
>>> Changes in v3:
>>> - Add new patch to move checksum to its own file in net/
>>> - Adjust net/ code to use the new checksum functions
>>> - Use checksum code that is now in net/checksum.c
>>> - Adjust functions to remain compatible with other RTC drivers
>>> - Drop accidental creation of link.dts due to bad rebase
>>> - Use checksum code from net/checksum.c
>>> - Add misc_init_r() call for link now that it is shared with chromebook_link
>>
>> I'd like to get this applied. Do you have any comments on the new
>> checksum approach?
>>
>
> I did not perform a thorough review to the new checksum thus did not
> offer a 'Reviewed-by', but generally it looks good to me. Please go
> ahead.

OK, going ahead, thanks.

I'll leave out the net/ patch until I get some word on that.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] pci: tegra: Fix port information parsing

2015-01-24 Thread Simon Glass
Hi Stephen,

On 23 January 2015 at 23:35, Stephen Warren  wrote:
> On 01/23/2015 09:37 PM, Bin Meng wrote:
>> Hi Stephen,
>>
>> On Sat, Jan 24, 2015 at 12:49 AM, Stephen Warren  
>> wrote:
>>> On 01/23/2015 03:19 AM, Thierry Reding wrote:

 On Thu, Jan 22, 2015 at 12:04:06AM +0800, Bin Meng wrote:
>
> Hi Thierry,
>
> On Wed, Jan 21, 2015 at 5:40 PM, Thierry Reding 
> wrote:
>>
>> On Wed, Jan 21, 2015 at 05:15:42PM +0800, Bin Meng wrote:
>>>
>>> Hi Thierry,
>>>
>>> On Wed, Jan 21, 2015 at 4:24 PM, Thierry Reding 
>>> wrote:

 On Wed, Jan 21, 2015 at 10:37:07AM +0800, Bin Meng wrote:
>
> Hi,
>
> On Wed, Jan 21, 2015 at 3:05 AM, Simon Glass 
> wrote:
>>
>> Hi Sjoerd,
>>
>> On 20 January 2015 at 10:06, Sjoerd Simons
>>  wrote:
>>>
>>> commit a62e84d7b1824a202dd incorrectly changed the tegra pci code
>>> to the
>>> new fdtdec pci helpers. To get the device index of the root port,
>>> the
>>> "reg" property should be parsed from the dtb (as was previously the
>>> case).
>>>
>>> With this patch i can successfully network boot my jetson tk1
>>>
>>> Signed-off-by: Sjoerd Simons 
>>> ---
>>>   drivers/pci/pci_tegra.c | 5 ++---
>>>   1 file changed, 2 insertions(+), 3 deletions(-)
>>
>>
>> Can you also please take a look at this patch?
>>
>> http://patchwork.ozlabs.org/patch/430815/
>>
>> It tries to support both options.
>
>
> Although I still don't see how the Tegra's dts is written, I feel
> this
> patch is doing correctly.


 It's in the U-Boot tree, look at arch/arm/dts/tegra124.dtsi for an
 example.
>>>
>>>
>>> Got it. I see:
>>>
>>>  pci@1,0 {
>>>  device_type = "pci";
>>>  assigned-addresses = <0x82000800 0 0x0100
>>> 0 0x1000>;
>>>  reg = <0x000800 0 0 0 0>;
>>>  status = "disabled";
>>>
>>>  #address-cells = <3>;
>>>  #size-cells = <2>;
>>>  ranges;
>>>
>>>  nvidia,num-lanes = <2>;
>>>  };
>>>
>>> So I would read this 'reg = <0x000800 0 0 0 0>' as this is a
>>> downstream port with device number 1 of the root complex.
>>
>>
>> Correct. Note that these root ports don't appear on the bus using the
>> regular configuration space accesses, so the definition here is
>> arbitrary, though in a way to mirror what PCI would typically look like
>> (host bridge 00:00.0, root ports 00:01.0..00:0N.0).
>>
>> The Linux kernel driver (and the U-Boot driver for that matter) rely on
>> this numbering, though, for some aspects of configuration of the root
>> ports.
>>
>>> diff --git a/drivers/pci/pci_tegra.c b/drivers/pci/pci_tegra.c
>>> index f9e05ad..67b5fdf 100644
>>> --- a/drivers/pci/pci_tegra.c
>>> +++ b/drivers/pci/pci_tegra.c
>>> @@ -459,7 +459,6 @@ static int tegra_pcie_parse_port_info(const
>>> void *fdt, int node,
>>>unsigned int *lanes)
>>>   {
>>>  struct fdt_pci_addr addr;
>>> -   pci_dev_t bdf;
>>>  int err;
>>>
>>>  err = fdtdec_get_int(fdt, node, "nvidia,num-lanes", 0);
>>> @@ -470,13 +469,13 @@ static int tegra_pcie_parse_port_info(const
>>> void *fdt, int node,
>>>
>>>  *lanes = err;
>>>
>>> -   err = fdtdec_get_pci_bdf(fdt, node, &addr, &bdf);
>>> +   err = fdtdec_get_pci_addr(fdt, node, 0, "reg", &addr);
>
>
> I suggest replace 0 to FDT_PCI_SPACE_CONFIG.


 I do like how 0 actually transports the meaning of "don't care" here.
 The reg property encodes only the BDF, whereas the configuration space
 region for the root ports is encoded in the assigned-addresses
 property.

 Looking at the fdtdec_get_pci_addr() implementation I notice that it
 uses the type parameter to match on the type of region. Devices can
 have
 more than one region of the same type. How is that supposed to work
 with
 this function. Perhaps it's nothing we care about for the fdtdec API
 since we don't access those regions anyway from FDT code?
>>>
>>>
>>> Ah, yes, some devices may have multiple regions of the same type.
>>> Perhaps we need another parameter bar_index for this api? So far this
>>> API is not used b

Re: [U-Boot] x86 FSP - delayed SDRAM init?

2015-01-24 Thread Simon Glass
Hi Bin,

On 22 January 2015 at 18:32, Bin Meng  wrote:
> Hi Simon,
>
> On Fri, Jan 23, 2015 at 12:36 AM, Simon Glass  wrote:
>> Hi Bin,
>>
>> On 21 January 2015 at 22:39, Bin Meng  wrote:
>>>
>>> Hi Simon,
>>>
>>> On Thu, Jan 22, 2015 at 1:02 PM, Simon Glass  wrote:
>>> > Hi Bin,
>>> >
>>> > On 21 January 2015 at 21:45, Bin Meng  wrote:
>>> >> Hi Simon,
>>> >>
>>> >> On Thu, Jan 22, 2015 at 11:42 AM, Simon Glass  wrote:
>>> >>> Hi Bin,
>>> >>>
>>> >>> In the Baytrail FSP docs I see a note about the HOB passing back the
>>> >>> 'Boot Loader Temporary Memory Data HOB'. This seems to be a copy of
>>> >>> the entire temporary memory space. I wonder if we could recover struct
>>> >>> global_data from this?
>>> >>>
>>> >>
>>> >> Yes, I think so. And I have verified this temporary memory space
>>> >> indeed contains stack contents before fsp_init() from U-Boot shell on
>>> >> Crown Bay. But the overall process might be complicated. See below.
>>> >>
>>> >>> If so, then we could move the fsp_init stuff to dram_init(), perhaps?
>>> >>>
>>> >>> But perhaps this is a feature of only this FSP?
>>> >>>
>>> >>
>>> >> I believe this is a feature defined by the FSP architecture spec, so
>>> >> every FSP should support that.
>>> >>
>>> >> Technically it should be no problem to call fsp_init() from
>>> >> arch_cpu_init() or even later dram_init(). However, I would say doing
>>> >> so brings us more harm than good. The following points are what I
>>> >> thought about before:
>>> >>
>>> >> 1). fsp_init() takes one parameter 'stack_top' to setup another stack
>>> >> after DRAM is initialized. This means everything on the previous CAR
>>> >> stack will need to migrate to the new stack below 'stack_top'. This
>>> >> includes global data, early malloc pointers, arch_cpu_init() stack
>>> >> variables and its return address.
>>> >> 2). Copy previous global_data to the new places under stack_top, and
>>> >> fix up gd->arch.gd_addr.
>>> >> 3). The initf_malloc() is called before arch_cpu_init() so we need fix
>>> >> up the early malloc pointers manually (gd->malloc_base and
>>> >> gd->malloc_limit)
>>> >> 4). Fix up the stack variables and return address of arch_cpu_init()
>>> >> on the new stack.
>>> >> 5). On Tunnel Creek, if we call setup_gdt() in start.S, later
>>> >> fsp_init() in arch_cpu_init() will fail to bring up the thread 1
>>> >> (Tunnel Creek supports SMT), the reason of which is unknown to me yet
>>> >> (FSP is a black box). It looks to me that FSP is assuming GDT only
>>> >> contains two entries (32-bit 4G flat address) before calling
>>> >> fsp_init().
>>> >>
>>> >> I have not looked into this any further, so the above points might not
>>> >> be 100% right. I would say with these modifications, the codes are
>>> >> more difficult to understand.
>>> >
>>> > I don't disagree with any of this, but I've had a bit more of a look.
>>> >
>>> > How about something awful like this:
>>> >
>>> > - start.S
>>> > - do the initram thing
>>> > - call board_init_f()
>>> > - there is no hob pointer, so CPU init does very little
>>> > - it runs only to dram_init()
>>> > - dram_init() calls the fsp_init() and ends up back at another function
>>> > - that function sets up global_data again, calls board_init_f() again
>>> >- passes a boot flag to suppress the banner the second time
>>> > - this time there is a hob pointer, so CPU init can complete
>>> > - things boot normally
>>> >
>>> > It is hideous. The question is which way is worse.
>>>
>>> So this way we avoid migrating the stack.
>>>
>>> > What we really need is to split fsp_init() into two parts:
>>> >
>>> > 1. Set up DRAM
>>> > 2. Turn off CAR (called when WE decide we no-longer need it)
>>> >
>>> > Then we could make this work as with the non-FSP mode.
>>> >
>>> > By joining the two, they have made it even harder than it should be.
>>> > Of course, no one wins with binary blobs, but the 'continuation
>>> > function' should have been a red flag when this design was done at
>>> > Intel.
>>>
>>> I agree. I wish the design done at Intel should have considered more
>>> use cases about the FSP integration into existing bootloaders. Even in
>>> coreboot, the FSP integration is not perfectly fit into the coreboot
>>> model.
>>>
>>> > BTW for me on minnowmax fsp_init() hangs. Since it is a binary blob I
>>> > am not sure how to debug it. There is no error printed / returned. I'm
>>> > not even sure how to make it output debug info. No post codes are
>>> > available. Sigh.
>>>
>>> I see coreboot has the minnow max board support already with Intel
>>> FSP. You can generate a coreboot for minnow max and program it onto
>>> the board to see how things go.
>>>
>>> Does this link help?
>>> http://review.coreboot.org/gitweb?p=coreboot.git;a=commitdiff;h=e6df041b8bf8e37debc0d6a871080b64eea7a372.
>>> It looks that the BayTrail FSP has several parameters configurable for
>>> DRAM.
>>
>> Thanks - yes I saw that code although didn't look at the particular
>> commit. It's just painful trying n r

Re: [U-Boot] [v2 PATCH 2/3] arm: mxs: Enable booting of mx28 without battery

2015-01-24 Thread Fabio Estevam
Hi Graeme,

This looks so much better!

On Sat, Jan 24, 2015 at 1:32 AM, Graeme Russ  wrote:
> Section 4.1.2 of Freescale Application Note AN4199 describes the
> configuration required to operate the mx28 from a 5V source without a
> battery. This patch implements the changes to the Freescale bootlets

Minor nit in case you send a v3: we are not implementing changes to
the FSL bootlets. We are changing U-boot code ;-)

> which allow this configuration to properly boot the mx28 processor
>
> Signed-off-by: Graeme Russ 
> Signed-off-by: Damien Gotfroi 

Acked-by: Fabio Estevam 

Thanks for working on this Damien and Graeme.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH 2/4] usb: add 'bcm_udc_otg' support

2015-01-24 Thread Marek Vasut
On Saturday, January 24, 2015 at 12:48:15 AM, Steve Rae wrote:
> On 15-01-21 11:05 PM, Marek Vasut wrote:
> > On Tuesday, January 20, 2015 at 11:42:08 PM, Steve Rae wrote:
> >> Implement the UDC support for the USB OTG interface.
> >> 
> >> Signed-off-by: Steve Rae 
> >> ---
> > 
> > General question -- this bcm controller you're adding here isn't by
> > any chance a DWC2 controller, or is it ? There's already a driver
> > for DWC2 in drivers/usb/gadget/s3c_udc_otg.c . This driver should really
> > be properly renamed though ;-/
> > 
> > If this is not DWC2, do you know what controller this is please ?
> 
> yes -- it is a DWC2
> 
> So, I have had a quick look at the s3c_udc_otg*.c code
> 
> First observation is that there is a completely different philosophy in
> the implementation. For example, the the interrupt handler routine(s),
> Broadcom is using #defines (sysmap.h which BTW are autogenerated by our
> Device Team) whereas "S3C" is using a "s3c_usbotg_reg" structure for the
> 'address' and #defines for the 'data/masks'. I'm not suggesting that one
> is better than the other, they are just different.

Hi!

The later is accepted by U-Boot as the preferred way, so the s3c is doing
things right.

> So, how do we proceed?

At this point, the Altera SoCFPGA and Samsung Exynos both use this s3c
driver to operate the DWC2 core in gadget mode. It should be trivial to
add support for the boardcom SoC, just follow the Altera example.

I would like to avoid situation where we have two drivers for a single
IP block.

> - is the ultimate goal to get to a proper gadget driver for DWC2? (I
> don't really know enough about this yet, so I apologize for these
> questions)

Yes, but we already have one to my knowledge.

> - is the "S3C" code a proper 'gadget' driver and/or is it a better
> starting point to get to a gadget driver?

Yes, and it's thoroughly tested already.

> - I don't have enough time right now to really investigate the existing
> "S3C" and implement it on our board(s); they are significantly different
> and it looks like it will take a lot of effort - is there someone (Denx
> or community) that could assist me?

Sure, just start asking the questions.

> - Could we continue to review this patchset and accept it; then
> establish a team to provide a "DWC2 gadget" that could be used going
> forward?

No, unless there's a convincing technical argument that the currently
mainline DWC2 gadget driver (the s3c one) can absolutelly not be used
for the broadcom SoC, I want to avoid having two drivers for the same
IP core in mainline, sorry.

[...]

Sorry, at this point I have to push back a little.

Best regards,
Marek Vasut
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH v3 0/9] sf: Update flash params for supported read commands and sector size

2015-01-24 Thread Bin Meng
Hi Jagan,

On Mon, Jan 12, 2015 at 2:52 PM, Jagan Teki  wrote:
> On 12 January 2015 at 09:12, Bin Meng  wrote:
>> Hi Jagan,
>>
>> On Wed, Dec 17, 2014 at 4:39 PM, Jagan Teki  wrote:
>>> On 17 December 2014 at 13:32, Bin Meng  wrote:
 Hi Jagan,

 On Wed, Dec 17, 2014 at 3:59 PM, Jagan Teki  
 wrote:
> On 15 December 2014 at 19:21, Bin Meng  wrote:
>> Hi Jagan,
>>
>> On Thu, Dec 11, 2014 at 3:40 PM, Bin Meng  wrote:
>>> Hi Jagan,
>>>
>>> On Thu, Dec 11, 2014 at 3:26 PM, Jagan Teki  
>>> wrote:
 Hi Bin,

 On 11 December 2014 at 08:34, Bin Meng  wrote:
> Hi Jagan,
>
> On Thu, Dec 11, 2014 at 2:41 AM, Jagan Teki 
>  wrote:
>> Hi Bin,
>>
>> On 10 December 2014 at 18:21, Bin Meng  wrote:
>>> This series update SPI flash supported read commands per datasheet
>>> in the flash params table, and change flash sector size to 4KiB as
>>> long as flash supports sector erase (20h) command, to ensure
>>> 'sf erase offset +len' work on 4KiB boundary instead of 64KiB when
>>> given SECT_4K.
>>>
>>> Changes in v3:
>>> - Rebase with Jagan's patch series @ 
>>> http://patchwork.ozlabs.org/patch/419154/
>>>
>>>
>>> Bin Meng (9):
>>>   sf: Update SST flash params
>>>   sf: Update Atmel flash params
>>>   sf: Update EON flash params
>>>   sf: Update GigaDevice flash params
>>>   sf: Update Macronix flash params
>>>   sf: Update Spansion flash params
>>>   sf: Update Micron flash params
>>>   sf: Update Winbond flash params
>>>   sf: Give proper spacing between flash table params
>>
>> Thanks for the updates - have you verified these changes?
>
> I verified some, but not all of these flash parts. The update is based
> on flash datasheet, so if something is broken, eg before this series
> the flash advertises only READ_NORM and after my series it is changed
> to READ_FULL, and let's say QUAD_IO_FAST is not working, it is very
> likely that the SPI controller driver has some bugs when supporting
> QUAD_IO_FAST.

 Since these updates were tested before, I will skip these for this PR.
 Will test all the rest (except these) and send the PR soon.

 Let me know your inputs?
>>>
>>> I am fine, as long as this PR will not contains other commits which
>>> modify the same sf_params.c to introduce more flash support. We can
>>> test these updates and if everything looks fine, apply these first and
>>> ask other commits to rebase on this series to introduce more flash
>>> support.
>>>
>>
>> Do you have any additional comments about this patch series besides
>> the S25FL128S_64K and S25FL256S_64K sector size? If not, I can send
>> the v4.
>
> I'm thinking about the other flashes too,  since these params were taken 
> from
> previous working and Linux mtd.
>

 You mean 'thinking about' or 'testing'? I should say previously they
 might not be 100% working as per datasheet some flash params currently
 are apparently wrong.
>>>
>>> Yes - about testing.
>>>
>>
>> Ping? What about your test results about this patch series?
>
> Some were pending - Will comment, pls- wait.
>
> thanks!
> --

I still don't see any additional comments. Looking at the history this
patch series has been sitting there for months. Would you please let
me know what you think about this series?

Regards,
Bin
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [v2 PATCH 3/3] arm: mxs: Add 'Wait for JTAG user' if booted in JTAG mode

2015-01-24 Thread Graeme Russ



On 24/01/15 14:32, Graeme Russ wrote:

When booting in JTAG mode, there is no way to use soft break-points, and
no way of knowing when SPL has finished executing (so the user can issue
a 'halt' command to load u-boot.bin for example)

Add a debug output and simple loop to stop execution at the completion of
the SPL initialisation as a pseudo break-point when booting in JTAG mode

Signed-off-by: Graeme Russ 
---

Changes in v2
  - Added and used boot mode #defines

---
  arch/arm/cpu/arm926ejs/mxs/spl_boot.c |  6 ++
  arch/arm/include/asm/arch-mxs/sys_proto.h | 17 +
  2 files changed, 23 insertions(+)

diff --git a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c 
b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
index 2a5f817..d1457e0 100644
--- a/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
+++ b/arch/arm/cpu/arm926ejs/mxs/spl_boot.c
@@ -157,6 +157,12 @@ void mxs_common_spl_init(const uint32_t arg, const 
uint32_t *resptr,
data->boot_mode_idx = bootmode;

mxs_power_wait_pswitch();
+
+


My bad - I missed this. I'll post a v3


+   if (mxs_boot_modes[data->boot_mode_idx].boot_pads == MXS_BM_JTAG) {
+   debug("SPL: Waiting for JTAG user\n");
+   asm volatile ("x: b x");
+   }
  }


Regards,


Graeme
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] [PATCH] x86: Remove CONFIG_SATA_INTEL from x86-common.h

2015-01-24 Thread Bin Meng
CONFIG_SATA_INTEL is not referenced anywhere, so remove it.

Signed-off-by: Bin Meng 
---

 include/configs/x86-common.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h
index f16ae32..dd19c02 100644
--- a/include/configs/x86-common.h
+++ b/include/configs/x86-common.h
@@ -39,7 +39,6 @@
 /* SATA AHCI storage */
 
 #define CONFIG_SCSI_AHCI
-#define CONFIG_SATA_INTEL
 #ifdef CONFIG_SCSI_AHCI
 #define CONFIG_LIBATA
 #define CONFIG_SYS_64BIT_LBA
-- 
1.8.2.1

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


Re: [U-Boot] [PATCH] arm: spl: Allow board_init_r() to run with a larger stack

2015-01-24 Thread Masahiro Yamada
Hi Simon,


On Thu, 22 Jan 2015 08:10:07 -0700
Simon Glass  wrote:

> Hi Masahiro,
> 
> On 22 January 2015 at 00:33, Masahiro Yamada  
> wrote:
> > Simon, Heiko,
> >
> >
> > On Thu, 22 Jan 2015 07:28:37 +0100
> > Heiko Schocher  wrote:
> >
> >> > But for your particular case, I certainly would like the UART to be
> >> > available early in SPL. We are in the very early days of driver model
> >> > for SPL. Once we get it merged (thanks to Tom's work this should be
> >> > soon) we can look at how to get the UART available early. One hacky
> >> > idea is to do the DM scan in board_init_f() in SPL, for serial only.
> >> > But it can be done.
> >> >
> >> > Yes generic board for SPL is where I'd like to head (but hopefully
> >> > using driver model for all init). This patch is a step along the way.
> >>
> >> I know, I am geting annoying, but we should not forget boards/SoCs
> >> which have minimal sram ... like the sam9260 with 4k only! So we must
> >> have an option to get SPL running there ... to set BSS and stack
> >> into RAM is a great option, so we have no problems with that anymore,
> >> but there is currently no place to get an UART running on it... so I
> >> feel DM is also to big ...
> >
> >
> > Simon,
> > Have you ever estimated how much the DM increase the binary image size?
> > (for ARM)
> 
> I did originally (around 2.2KB for the core) but it has grown since.
> When I revisit SPL (soon) I suppose we will get another data point.
> 
> One problem is that the new bus functionality is likely not needed in
> SPL for things like AT91. I have a SAM9260 board so can try it out.
> However, that chip is very old. Are there chips in common use still
> which are so limited in SRAM?
> 
> Also Masahiro you should badger your hardware guys to add e.g. 128KB
> of SRAM to their next chip!

I do not think this would happen.

Some old Panasonic SoCs could load 128KB,
but newer ones can only load 64KB.

Looks like SRAM is the first thing hardware folks want to cut down
for chip-shrinking.

Anyway, the SPL image size for my board is around 35KB;  29KB space available.
No problem with enabling SPL DM on my boards!


Best Regards
Masahiro Yamada

___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot


[U-Boot] U-Boot on Sparc leon3

2015-01-24 Thread Florian Praden
Hi, 

I'm trying to build u-boot for a new gaisler board (gr-pci-xc5v-LX110T).

I have some trouble with the leon3/start.S and the linking process 
so I tried to build u-boot from a fresh clean GIT source with the board on 
board/gaisler/gr_xc3s_1500 which should be supported.

And I'm having the same linking problem.

I have already tried the u-boot 1.3.3 which is working on my board
(booting, but the flash is not supported).

The linking problem is the following:

On version v2013.04:

* In the relocation loop, the start.S define 2 variables which is set during 
the 
  link: 
=
/* un relocated start address of monitor */
#define TEXT_START _text

/* un relocated end address of monitor */
#define DATA_END __init_end

reloc:
set TEXT_START,%g2
set DATA_END,%g3
set CONFIG_SYS_RELOC_MONITOR_BASE,%g4
reloc_loop:
=

* compiling this start.S give the following relocation record
=
RELOCATION RECORDS FOR [.text]:
OFFSET   TYPE  VALUE 
009c R_SPARC_WDISP30   cpu_init_f
00a4 R_SPARC_HI22  _text
00a8 R_SPARC_LO10  _text
00ac R_SPARC_HI22  __init_end
00b0 R_SPARC_LO10  __init_end
=
with the following assembly code:
=
00a4 :
  a4:   05 00 00 00 sethi  %hi(0), %g2
  a8:   84 10 a0 00 mov  %g2, %g2   ! 0 <_hardreset>
  ac:   07 00 00 00 sethi  %hi(0), %g3
  b0:   86 10 e0 00 mov  %g3, %g3   ! 0 <_hardreset>
  b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4

00b8 :
=

For now, everythings is normal.

After the linking process, I've the following elf:

=
10a4 :
10a4:   05 00 00 03 sethi  %hi(0xc00), %g2
10a8:   84 10 a1 3c or  %g2, 0x13c, %g2 ! d3c 
10ac:   07 00 00 03 sethi  %hi(0xc00), %g3
10b0:   86 10 e1 30 or  %g3, 0x130, %g3 ! d30 
10b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4
=
And the associated .map:

=
.text   0x0x2d2b8
0x_load_addr = .
0x_text = .
[...]
.data.init
 *(.data.init)
0x0003. = ALIGN (0x1000)
0x0003__init_end = .
0x0003__bss_start = .
=

And the others symbol in this start.S are not defined correctly either.

On the v2013.01 version, I've the same intermediate file but the following  
u-boot elf:

=
10a4 :
10a4:   05 00 00 00 sethi  %hi(0), %g2
10a8:   84 10 a0 00 mov  %g2, %g2   ! 0 <_load_addr>
10ac:   07 00 00 c0 sethi  %hi(0x3), %g3
10b0:   86 10 e0 00 mov  %g3, %g3   ! 3 <__bss_start>
10b4:   09 10 fe 38 sethi  %hi(0x43f8e000), %g4
=

Which is what I expected.

On IRC, Marex give me the advice to check with git bisect and find the commit 
which (I think) break the linking process.
And It found this one:
=
eb33809f70e3d3a2c1fba043e56cca8fccedbe0c is the first bad commit
commit eb33809f70e3d3a2c1fba043e56cca8fccedbe0c
Author: Simon Glass 
Date:   Tue Mar 5 14:40:03 2013 +

sparc: Fix out-of-tree building

It isn't clear why the sparc cpu Makefile has its own compile line, but
it does not work correctly with an out-of-tree build. Removing it fixes
this problem. Perhaps it does not introduce others.

Signed-off-by: Simon Glass 

:04 04 39dc0c7a3ff2feadaddeda1b7938502f30f2ed76 
7e77469d3aa8550d3f712470d45ef73e46b217b8 M  arch
bisect run success


Which corresponds to remove the specific makefile for sparc.


So what did i do wrong or misunderstund about the compiling u-boot process?
Why removing specific compile process for sparc?

Best, 

--
Florian.
___
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot