| /* |
| * Copyright (C) 2012 Samsung Electronics |
| * |
| * SPDX-License-Identifier: GPL-2.0+ |
| */ |
| |
| #include <common.h> |
| #include <cros_ec.h> |
| #include <fdtdec.h> |
| #include <asm/io.h> |
| #include <errno.h> |
| #include <i2c.h> |
| #include <netdev.h> |
| #include <spi.h> |
| #include <asm/arch/cpu.h> |
| #include <asm/arch/dwmmc.h> |
| #include <asm/arch/gpio.h> |
| #include <asm/arch/mmc.h> |
| #include <asm/arch/pinmux.h> |
| #include <asm/arch/power.h> |
| #include <asm/arch/sromc.h> |
| #include <power/pmic.h> |
| #include <power/max77686_pmic.h> |
| #include <tmu.h> |
| |
| DECLARE_GLOBAL_DATA_PTR; |
| |
| #ifdef CONFIG_SOUND_MAX98095 |
| static void board_enable_audio_codec(void) |
| { |
| struct exynos5_gpio_part1 *gpio1 = (struct exynos5_gpio_part1 *) |
| samsung_get_base_gpio_part1(); |
| |
| /* Enable MAX98095 Codec */ |
| s5p_gpio_direction_output(&gpio1->x1, 7, 1); |
| s5p_gpio_set_pull(&gpio1->x1, 7, GPIO_PULL_NONE); |
| } |
| #endif |
| |
| int exynos_init(void) |
| { |
| #ifdef CONFIG_SOUND_MAX98095 |
| board_enable_audio_codec(); |
| #endif |
| return 0; |
| } |
| |
| #ifdef CONFIG_DISPLAY_BOARDINFO |
| int checkboard(void) |
| { |
| const char *board_name; |
| |
| board_name = fdt_getprop(gd->fdt_blob, 0, "model", NULL); |
| if (board_name == NULL) |
| printf("\nUnknown Board\n"); |
| else |
| printf("\nBoard: %s\n", board_name); |
| |
| return 0; |
| } |
| #endif |
| |
| #ifdef CONFIG_LCD |
| void exynos_cfg_lcd_gpio(void) |
| { |
| struct exynos5_gpio_part1 *gpio1 = |
| (struct exynos5_gpio_part1 *)samsung_get_base_gpio_part1(); |
| |
| /* For Backlight */ |
| s5p_gpio_cfg_pin(&gpio1->b2, 0, GPIO_OUTPUT); |
| s5p_gpio_set_value(&gpio1->b2, 0, 1); |
| |
| /* LCD power on */ |
| s5p_gpio_cfg_pin(&gpio1->x1, 5, GPIO_OUTPUT); |
| s5p_gpio_set_value(&gpio1->x1, 5, 1); |
| |
| /* Set Hotplug detect for DP */ |
| s5p_gpio_cfg_pin(&gpio1->x0, 7, GPIO_FUNC(0x3)); |
| } |
| |
| void exynos_set_dp_phy(unsigned int onoff) |
| { |
| set_dp_phy_ctrl(onoff); |
| } |
| #endif |