Please, ignore this patch. Pushed by mistake.

>Signed-off-by: Akshay Saraswat <aksha...@samsung.com>
>---
> arch/arm/cpu/armv7/exynos/clock.c              | 20 +++++++++++---------
> arch/arm/cpu/armv7/exynos/clock_init_exynos5.c |  2 +-
> arch/arm/cpu/armv7/exynos/pinmux.c             |  2 +-
> arch/arm/include/asm/arch-exynos/cpu.h         | 11 ++++++++++-
> arch/arm/include/asm/arch-exynos/gpio.h        |  4 ++--
> drivers/gpio/s5p_gpio.c                        |  2 +-
> 6 files changed, 26 insertions(+), 15 deletions(-)
>
>diff --git a/arch/arm/cpu/armv7/exynos/clock.c 
>b/arch/arm/cpu/armv7/exynos/clock.c
>index 7558eff..9c0d507 100644
>--- a/arch/arm/cpu/armv7/exynos/clock.c
>+++ b/arch/arm/cpu/armv7/exynos/clock.c
>@@ -118,7 +118,9 @@ static int exynos_get_pll_clk(int pllreg, unsigned int r, 
>unsigned int k)
>                       div = PLL_DIV_1024;
>               else if (proid_is_exynos4412())
>                       div = PLL_DIV_65535;
>-              else if (proid_is_exynos5250() || proid_is_exynos5420())
>+              else if (proid_is_exynos5250()
>+                       || proid_is_exynos5420()
>+                       || proid_is_exynos5800())
>                       div = PLL_DIV_65536;
>               else
>                       return 0;
>@@ -1581,7 +1583,7 @@ static unsigned long exynos4_get_i2c_clk(void)
> unsigned long get_pll_clk(int pllreg)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_get_pll_clk(pllreg);
>               return exynos5_get_pll_clk(pllreg);
>       } else {
>@@ -1617,7 +1619,7 @@ unsigned long get_i2c_clk(void)
> unsigned long get_pwm_clk(void)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_get_pwm_clk();
>               return clock_get_periph_rate(PERIPH_ID_PWM0);
>       } else {
>@@ -1630,7 +1632,7 @@ unsigned long get_pwm_clk(void)
> unsigned long get_uart_clk(int dev_index)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_get_uart_clk(dev_index);
>               return exynos5_get_uart_clk(dev_index);
>       } else {
>@@ -1643,7 +1645,7 @@ unsigned long get_uart_clk(int dev_index)
> unsigned long get_mmc_clk(int dev_index)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_get_mmc_clk(dev_index);
>               return exynos5_get_mmc_clk(dev_index);
>       } else {
>@@ -1654,7 +1656,7 @@ unsigned long get_mmc_clk(int dev_index)
> void set_mmc_clk(int dev_index, unsigned int div)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       exynos5420_set_mmc_clk(dev_index, div);
>               else
>                       exynos5_set_mmc_clk(dev_index, div);
>@@ -1668,7 +1670,7 @@ unsigned long get_lcd_clk(void)
>       if (cpu_is_exynos4())
>               return exynos4_get_lcd_clk();
>       else {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_get_lcd_clk();
>               else
>                       return exynos5_get_lcd_clk();
>@@ -1682,7 +1684,7 @@ void set_lcd_clk(void)
>       else {
>               if (proid_is_exynos5250())
>                       exynos5_set_lcd_clk();
>-              else if (proid_is_exynos5420())
>+              else if (proid_is_exynos5420() || proid_is_exynos5800())
>                       exynos5420_set_lcd_clk();
>       }
> }
>@@ -1696,7 +1698,7 @@ void set_mipi_clk(void)
> int set_spi_clk(int periph_id, unsigned int rate)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_set_spi_clk(periph_id, rate);
>               return exynos5_set_spi_clk(periph_id, rate);
>       } else {
>diff --git a/arch/arm/cpu/armv7/exynos/clock_init_exynos5.c 
>b/arch/arm/cpu/armv7/exynos/clock_init_exynos5.c
>index b6a9bc1..0aff3d0 100644
>--- a/arch/arm/cpu/armv7/exynos/clock_init_exynos5.c
>+++ b/arch/arm/cpu/armv7/exynos/clock_init_exynos5.c
>@@ -971,7 +971,7 @@ static void exynos5420_system_clock_init(void)
> 
> void system_clock_init(void)
> {
>-      if (proid_is_exynos5420())
>+      if (proid_is_exynos5420() || proid_is_exynos5800())
>               exynos5420_system_clock_init();
>       else
>               exynos5250_system_clock_init();
>diff --git a/arch/arm/cpu/armv7/exynos/pinmux.c 
>b/arch/arm/cpu/armv7/exynos/pinmux.c
>index b929486..17ae2e6 100644
>--- a/arch/arm/cpu/armv7/exynos/pinmux.c
>+++ b/arch/arm/cpu/armv7/exynos/pinmux.c
>@@ -834,7 +834,7 @@ static int exynos4x12_pinmux_config(int peripheral, int 
>flags)
> int exynos_pinmux_config(int peripheral, int flags)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_pinmux_config(peripheral, flags);
>               else if (proid_is_exynos5250())
>                       return exynos5_pinmux_config(peripheral, flags);
>diff --git a/arch/arm/include/asm/arch-exynos/cpu.h 
>b/arch/arm/include/asm/arch-exynos/cpu.h
>index ba71714..9f3672b 100644
>--- a/arch/arm/include/asm/arch-exynos/cpu.h
>+++ b/arch/arm/include/asm/arch-exynos/cpu.h
>@@ -218,6 +218,13 @@ static inline void s5p_set_cpu_id(void)
>               /* Exynos5420 */
>               s5p_cpu_id = 0x5420;
>               break;
>+      case 0x422:
>+              /*
>+               * Exynos5800 is a variant of Exynos5422
>+               * and has the same product id
>+               */
>+              s5p_cpu_id = 0x5800;
>+              break;
>       }
> }
> 
>@@ -246,6 +253,7 @@ IS_EXYNOS_TYPE(exynos4210, 0x4210)
> IS_EXYNOS_TYPE(exynos4412, 0x4412)
> IS_EXYNOS_TYPE(exynos5250, 0x5250)
> IS_EXYNOS_TYPE(exynos5420, 0x5420)
>+IS_EXYNOS_TYPE(exynos5800, 0x5800)
> 
> #define SAMSUNG_BASE(device, base)                            \
> static inline unsigned int __attribute__((no_instrument_function)) \
>@@ -256,7 +264,8 @@ static inline unsigned int 
>__attribute__((no_instrument_function)) \
>                       return EXYNOS4X12_##base;               \
>               return EXYNOS4_##base;                          \
>       } else if (cpu_is_exynos5()) {                          \
>-              if (proid_is_exynos5420())                      \
>+              if (proid_is_exynos5420()                       \
>+                  || proid_is_exynos5800())                   \
>                       return EXYNOS5420_##base;               \
>               return EXYNOS5_##base;                          \
>       }                                                       \
>diff --git a/arch/arm/include/asm/arch-exynos/gpio.h 
>b/arch/arm/include/asm/arch-exynos/gpio.h
>index 8fb5c23..32e045a 100644
>--- a/arch/arm/include/asm/arch-exynos/gpio.h
>+++ b/arch/arm/include/asm/arch-exynos/gpio.h
>@@ -1379,7 +1379,7 @@ static struct gpio_info 
>exynos5420_gpio_data[EXYNOS5420_GPIO_NUM_PARTS] = {
> static inline struct gpio_info *get_gpio_data(void)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return exynos5420_gpio_data;
>               else
>                       return exynos5_gpio_data;
>@@ -1396,7 +1396,7 @@ static inline struct gpio_info *get_gpio_data(void)
> static inline unsigned int get_bank_num(void)
> {
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420())
>+              if (proid_is_exynos5420() || proid_is_exynos5800())
>                       return EXYNOS5420_GPIO_NUM_PARTS;
>               else
>                       return EXYNOS5_GPIO_NUM_PARTS;
>diff --git a/drivers/gpio/s5p_gpio.c b/drivers/gpio/s5p_gpio.c
>index db7b673..bcf44eb 100644
>--- a/drivers/gpio/s5p_gpio.c
>+++ b/drivers/gpio/s5p_gpio.c
>@@ -57,7 +57,7 @@ static inline int s5p_name_to_gpio(const char *name)
>        */
> #if defined(CONFIG_EXYNOS4) || defined(CONFIG_EXYNOS5)
>       if (cpu_is_exynos5()) {
>-              if (proid_is_exynos5420()) {
>+              if (proid_is_exynos5420() || proid_is_exynos5800()) {
>                       tabp = exynos5420_gpio_table;
>                       irregular_bank_name = 'y';
>                       irregular_set_number = '7';
>-- 
>1.9.1
>
>_______________________________________________
>U-Boot mailing list
>U-Boot@lists.denx.de
>http://lists.denx.de/mailman/listinfo/u-boot

Regards,
Akshay Saraswat
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to