Esempio n. 1
0
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software Foundation,
 * Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 */

#include <xboot.h>
#include <led/led-gpio.h>
#include <s5p6818-gpio.h>

static struct led_gpio_data_t led_gpio_datas[] = {
	[0] = {
		.gpio		= S5P6818_GPIOB(28),
		.active_low	= 1,
	},
	[1] = {
		.gpio		= S5P6818_GPIOC(11),
		.active_low	= 1,
	},
	[2] = {
		.gpio		= S5P6818_GPIOC(7),
		.active_low	= 1,
	},
	[3] = {
		.gpio		= S5P6818_GPIOC(12),
		.active_low	= 1,
	},
};
Esempio n. 2
0
static void s5p6818_uart_init(struct uart_t * uart)
{
	struct resource_t * res = (struct resource_t *)uart->priv;
	struct s5p6818_uart_data_t * dat = (struct s5p6818_uart_data_t *)res->data;

	switch(res->id)
	{
	case 0:
		s5p6818_ip_reset(RESET_ID_UART0, 0);
		clk_enable("GATE-UART0");
		gpio_set_cfg(S5P6818_GPIOD(18), 0x1);
		gpio_set_cfg(S5P6818_GPIOD(14), 0x1);
		gpio_set_direction(S5P6818_GPIOD(18), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOD(14), GPIO_DIRECTION_INPUT);
		break;

	case 1:
		s5p6818_ip_reset(RESET_ID_UART1, 0);
		clk_enable("GATE-UART1");
		gpio_set_cfg(S5P6818_GPIOD(19), 0x1);
		gpio_set_cfg(S5P6818_GPIOD(15), 0x1);
		gpio_set_direction(S5P6818_GPIOD(19), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOD(15), GPIO_DIRECTION_INPUT);
		break;

	case 2:
		s5p6818_ip_reset(RESET_ID_UART2, 0);
		clk_enable("GATE-UART2");
		gpio_set_cfg(S5P6818_GPIOD(20), 0x1);
		gpio_set_cfg(S5P6818_GPIOD(16), 0x1);
		gpio_set_direction(S5P6818_GPIOD(20), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOD(16), GPIO_DIRECTION_INPUT);
		break;

	case 3:
		s5p6818_ip_reset(RESET_ID_UART3, 0);
		clk_enable("GATE-UART3");
		gpio_set_cfg(S5P6818_GPIOD(21), 0x1);
		gpio_set_cfg(S5P6818_GPIOD(17), 0x1);
		gpio_set_direction(S5P6818_GPIOD(21), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOD(17), GPIO_DIRECTION_INPUT);
		break;

	case 4:
		s5p6818_ip_reset(RESET_ID_UART4, 0);
		clk_enable("GATE-UART4");
		gpio_set_cfg(S5P6818_GPIOB(29), 0x3);
		gpio_set_cfg(S5P6818_GPIOB(28), 0x3);
		gpio_set_direction(S5P6818_GPIOB(29), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOB(28), GPIO_DIRECTION_INPUT);
		break;

	case 5:
		s5p6818_ip_reset(RESET_ID_UART5, 0);
		clk_enable("GATE-UART5");
		gpio_set_cfg(S5P6818_GPIOB(31), 0x3);
		gpio_set_cfg(S5P6818_GPIOB(30), 0x3);
		gpio_set_direction(S5P6818_GPIOB(31), GPIO_DIRECTION_OUTPUT);
		gpio_set_direction(S5P6818_GPIOB(30), GPIO_DIRECTION_INPUT);
		break;

	default:
		return;
	}

	write32(dat->regbase + UART_UCON, 0x00000005);
	write32(dat->regbase + UART_UFCON, 0x00000777);
	write32(dat->regbase + UART_UMCON, 0x00000000);
	s5p6818_uart_set(uart, dat->baud, dat->data, dat->parity, dat->stop);
}
Esempio n. 3
0
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software Foundation,
 * Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 */

#include <xboot.h>
#include <input/key-gpio.h>
#include <s5p6818-gpio.h>

static struct gpio_button_t buttons[] = {
	{
		.key = KEY_MENU,
		.gpio = S5P6818_GPIOB(9),
		.active_low = 1,
	}, {
		.key = KEY_UP,
		.gpio = S5P6818_GPIOB(31),
		.active_low = 1,
	}, {
		.key = KEY_DOWN,
		.gpio = S5P6818_GPIOB(30),
		.active_low = 1,
	}, {
		.key = KEY_ENTER,
		.gpio = S5P6818_GPIOA(28),
		.active_low = 1,
	}, {
		.key = KEY_POWER,