[ create a new paste ] login | about

Link: http://codepad.org/UiMlbm1E    [ raw code | fork ]

C, pasted on Aug 9:
//
// Set up a memory regions to access GPIO
//
void setup_io()
{
	/* open /dev/mem */
	mem_fd = open("/dev/mem", O_RDWR|O_SYNC);
	if (mem_fd == -1) {
		perror("Cannot open /dev/mem");
		exit(1);
	}

	/* mmap GPIO */
	gpio_map = mmap(NULL, BLOCK_SIZE, PROT_READ|PROT_WRITE, MAP_SHARED, mem_fd, GPIO_BASE);
	if (gpio_map == MAP_FAILED) {
		perror("mmap() failed");
		exit(1);
	}

	// Always use volatile pointer!
	gpio = (volatile uint32_t *)gpio_map;
}


Create a new paste based on this one


Comments: