Beispiel #1
0
static void __pl011_uart1_prepare(void)
{
    NX_UART_CH_INIT(1);
    NX_GPIO_SetPadFunction (PAD_GET_GROUP(PAD_GPIO_D), 15, NX_GPIO_PADFUNC_1);	// RX
    NX_GPIO_SetPadFunction (PAD_GET_GROUP(PAD_GPIO_D), 19, NX_GPIO_PADFUNC_1);	// TX
    NX_GPIO_SetOutputEnable(PAD_GET_GROUP(PAD_GPIO_D), 15, CFALSE);
    NX_GPIO_SetOutputEnable(PAD_GET_GROUP(PAD_GPIO_D), 19, CTRUE);
}
Beispiel #2
0
static void __pl011_uart5_prepare(void)
{
    NX_UART_CH_INIT(5);
    NX_GPIO_SetPadFunction (PAD_GET_GROUP(PAD_GPIO_B), 30, NX_GPIO_PADFUNC_3);	// RX
    NX_GPIO_SetPadFunction (PAD_GET_GROUP(PAD_GPIO_B), 31, NX_GPIO_PADFUNC_3);	// TX
    NX_GPIO_SetOutputEnable(PAD_GET_GROUP(PAD_GPIO_B), 30, CFALSE);
    NX_GPIO_SetOutputEnable(PAD_GET_GROUP(PAD_GPIO_B), 31, CTRUE);
}
Beispiel #3
0
static void auto_update(int io, int wait)
{
	unsigned int grp = PAD_GET_GROUP(io);
	unsigned int bit = PAD_GET_BITNO(io);
	int level = 1, i = 0;
	char *cmd = "fastboot";

	for (i = 0; wait > i; i++) {
		switch (io & ~(32-1)) {
		case PAD_GPIO_A:
		case PAD_GPIO_B:
		case PAD_GPIO_C:
		case PAD_GPIO_D:
		case PAD_GPIO_E:
			level = NX_GPIO_GetInputValue(grp, bit);	break;
		case PAD_GPIO_ALV:
			level = NX_ALIVE_GetInputValue(bit);	break;
		};
		if (level)
			break;
		mdelay(1);
	}

	if (i == wait)
		run_command (cmd, 0);
}
Beispiel #4
0
static void uart_device_init(int hwport)
{

	switch(hwport)
	{
		case 0: UART_CHARNNEL_INIT(0);break;
		case 1: UART_CHARNNEL_INIT(1);break;
		case 2: UART_CHARNNEL_INIT(2);break;
		case 3: UART_CHARNNEL_INIT(3);break;
		case 4: UART_CHARNNEL_INIT(4);break;
		case 5: UART_CHARNNEL_INIT(5);break;
	}		
	NX_GPIO_SetPadFunction (PAD_GET_GROUP(uart_port[hwport][0]), uart_port[hwport][1], uart_port[hwport][4] );	// RX
	NX_GPIO_SetPadFunction (PAD_GET_GROUP(uart_port[hwport][2]), uart_port[hwport][3], uart_port[hwport][4] );	// TX
	NX_GPIO_SetOutputEnable(PAD_GET_GROUP(uart_port[hwport][0]), uart_port[hwport][1], CFALSE);
	NX_GPIO_SetOutputEnable(PAD_GET_GROUP(uart_port[hwport][2]), uart_port[hwport][3], CTRUE);
}
Beispiel #5
0
void disp_lcd_device(int io)
{
	int grp = PAD_GET_GROUP(io);
	int bit = PAD_GET_BITNO(io);
	int wait;
	CBOOL Level = CTRUE;
	#ifdef CFG_IO_LCD_PWR_ENB_LEVEL
	Level = CFG_IO_LCD_PWR_ENB_LEVEL
	#endif

	NX_GPIO_SetOutputValue(grp, bit, Level);
	for (wait=0; 100 > wait; wait++) { ; }
}