GPIO_EDGE_CAUSE
cause |= readl(GPIO_EDGE_CAUSE(ochip)) & readl(GPIO_EDGE_MASK(ochip));
cause = readl_relaxed(GPIO_EDGE_CAUSE(ochip));
writel(0, GPIO_EDGE_CAUSE(ochip));