blob: 379a45cc23c51a24213afbaa89ab9d58f5bf1cee [file] [log] [blame]
Amarbb54b752013-04-27 11:42:57 +05301/*
2 * Copyright (C) 2012 Samsung Electronics
3 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02004 * SPDX-License-Identifier: GPL-2.0+
Amarbb54b752013-04-27 11:42:57 +05305 */
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
25DECLARE_GLOBAL_DATA_PTR;
26
Amarbb54b752013-04-27 11:42:57 +053027#ifdef CONFIG_SOUND_MAX98095
Rajeshwari Birje987b0dd2013-12-26 09:44:17 +053028static void board_enable_audio_codec(void)
Amarbb54b752013-04-27 11:42:57 +053029{
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
Rajeshwari Birje987b0dd2013-12-26 09:44:17 +053039int exynos_init(void)
Hung-ying Tyana4ed85d2013-05-15 18:27:34 +080040{
Amarbb54b752013-04-27 11:42:57 +053041#ifdef CONFIG_SOUND_MAX98095
42 board_enable_audio_codec();
43#endif
Amarbb54b752013-04-27 11:42:57 +053044 return 0;
45}
46
Amarbb54b752013-04-27 11:42:57 +053047#ifdef CONFIG_LCD
48void 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
65void exynos_set_dp_phy(unsigned int onoff)
66{
67 set_dp_phy_ctrl(onoff);
68}
69#endif