static u32 alloc_pin(user_gpio_set_t *gpio_list)
{
	u32 pin_handle = 0;

	pin_handle = sunxi_gpio_request_array(gpio_list, 1);
	if (pin_handle == 0) {
		DMSG_PANIC("ERR: gpio_request failed\n");
		return 0;
	}

	/* set config, ouput */
	gpio_set_one_pin_io_status(pin_handle, 1, NULL);

	/* reserved is pull down */
	gpio_set_one_pin_pull(pin_handle, 2, NULL);

	return pin_handle;
}
Example #2
0
static int __init aw_pin_test_init(void)
{
	int ret;
	u32 gpio_handle;
	printk("aw_pin_test_init: enter\n");

	ret = script_parser_mainkey_get_gpio_cfg("uart_para", (void *)gpio_set, 38);
	if(!ret) {
		gpio_handle = sunxi_gpio_request_array(gpio_set, 38);
		printk("gpio_handle=0x%08x, ret=%d\n", gpio_handle,ret);

		ret = gpio_release(gpio_handle, 2);
		printk("gpio_Release: ret=%d\n", ret);
	}
	else {
		printk("ERR: script_parser_mainkey_get_gpio_cfg\n");
	}

	return 0;
}