BCM_GPIO_GPFSEL
func = (BCM_GPIO_READ(sc, BCM_GPIO_GPFSEL(bank)) >> offset) & 7;
data = BCM_GPIO_READ(sc, BCM_GPIO_GPFSEL(bank));
BCM_GPIO_WRITE(sc, BCM_GPIO_GPFSEL(bank), data);