예제 #1
0
파일: bs_chip.c 프로젝트: chenhbzl/BooxApp
void init_gpio( void )
{
    int i = 0;
    set_gpio_dir( GPIO_CNF1, 1 );
    set_gpio_dir( GPIO_HRDY, 0 );
    set_gpio_dir( GPIO_HDC, 1 );
    set_gpio_dir( GPIO_RESET_L, 1 );
    set_gpio_dir( GPIO_HRD_L, 1 );
    set_gpio_dir( GPIO_HWE_L, 1 );
    set_gpio_dir( GPIO_HCS_L, 1 );
    set_gpio_dir( GPIO_HIRQ, 0 );
    for ( i = 0; i < 16; i++ ) set_gpio_dir( GPIO_HDB0 + i, 0 );
    hdb_dir = 0;

    assert( get_gpio_dir( GPIO_CNF1 ) == 1 );
    assert( get_gpio_dir( GPIO_HRDY ) == 0 );
    assert( get_gpio_dir( GPIO_HDC ) == 1 );
    assert( get_gpio_dir( GPIO_RESET_L ) == 1 );
    assert( get_gpio_dir( GPIO_HRD_L ) == 1 );
    assert( get_gpio_dir( GPIO_HWE_L ) == 1 );
    assert( get_gpio_dir( GPIO_HCS_L ) == 1 );
    assert( get_gpio_dir( GPIO_HIRQ ) == 0 );
    for ( i = 0; i < 16; i++ ) assert( get_gpio_dir( GPIO_HDB0 + i ) == 0 );

    set_gpio_val( GPIO_RESET_L, 0 );
    set_gpio_val( GPIO_CNF1, 0 );
    set_gpio_val( GPIO_HDC, 0 );
    set_gpio_val( GPIO_HRD_L, 1 );
    set_gpio_val( GPIO_HWE_L, 1 );
    set_gpio_val( GPIO_HCS_L, 1 );
    set_gpio_val( GPIO_RESET_L, 1 );
}
예제 #2
0
파일: gpio.c 프로젝트: 0s4l/u-boot-xlnx
void gpio_labels(void)
{
	int c, gpio;

	for (c = 0; c < MAX_RESOURCES; c++) {
		gpio = is_reserved(gpio, c, 1);
		if (!check_gpio(c) && gpio)
			printf("GPIO_%d:\t%s\tGPIO %s\n", c,
				get_label(c),
				get_gpio_dir(c) ? "OUTPUT" : "INPUT");
		else if (is_reserved(peri, c, 1))
			printf("GPIO_%d:\t%s\tPeripheral\n", c, get_label(c));
		else
			continue;
	}
}