]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - board/samsung/smdk5250/exynos5-dt.c
b22fba502d4adfdaf1a2273bb8db849f53ffddb5
[karo-tx-uboot.git] / board / samsung / smdk5250 / exynos5-dt.c
1 /*
2  * Copyright (C) 2012 Samsung Electronics
3  *
4  * SPDX-License-Identifier:     GPL-2.0+
5  */
6
7 #include <common.h>
8 #include <cros_ec.h>
9 #include <fdtdec.h>
10 #include <asm/io.h>
11 #include <errno.h>
12 #include <i2c.h>
13 #include <netdev.h>
14 #include <spi.h>
15 #include <asm/arch/cpu.h>
16 #include <asm/arch/dwmmc.h>
17 #include <asm/arch/gpio.h>
18 #include <asm/arch/mmc.h>
19 #include <asm/arch/pinmux.h>
20 #include <asm/arch/power.h>
21 #include <asm/arch/sromc.h>
22 #include <power/pmic.h>
23 #include <power/max77686_pmic.h>
24 #include <tmu.h>
25
26 DECLARE_GLOBAL_DATA_PTR;
27
28 #ifdef CONFIG_SOUND_MAX98095
29 static void board_enable_audio_codec(void)
30 {
31         struct exynos5_gpio_part1 *gpio1 = (struct exynos5_gpio_part1 *)
32                                                 samsung_get_base_gpio_part1();
33
34         /* Enable MAX98095 Codec */
35         s5p_gpio_direction_output(&gpio1->x1, 7, 1);
36         s5p_gpio_set_pull(&gpio1->x1, 7, GPIO_PULL_NONE);
37 }
38 #endif
39
40 int exynos_init(void)
41 {
42 #ifdef CONFIG_SOUND_MAX98095
43         board_enable_audio_codec();
44 #endif
45         return 0;
46 }
47
48 #ifdef CONFIG_LCD
49 void exynos_cfg_lcd_gpio(void)
50 {
51         struct exynos5_gpio_part1 *gpio1 =
52                 (struct exynos5_gpio_part1 *)samsung_get_base_gpio_part1();
53
54         /* For Backlight */
55         s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT);
56         s5p_gpio_set_value(&gpio1->b2, 0, 1);
57
58         /* LCD power on */
59         s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT);
60         s5p_gpio_set_value(&gpio1->x1, 5, 1);
61
62         /* Set Hotplug detect for DP */
63         s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3));
64 }
65
66 void exynos_set_dp_phy(unsigned int onoff)
67 {
68         set_dp_phy_ctrl(onoff);
69 }
70 #endif