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