Since the [start, end) is a half-open interval, a range with the end equal to the start of another range should not be considered as overlapped.
Signed-off-by: Jiahui Cen <cenjia...@huawei.com> --- lib/logic_pio.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/logic_pio.c b/lib/logic_pio.c index f32fe481b492..445d611f1dc1 100644 --- a/lib/logic_pio.c +++ b/lib/logic_pio.c @@ -57,7 +57,7 @@ int logic_pio_register_range(struct logic_pio_hwaddr *new_range) new_range->flags == LOGIC_PIO_CPU_MMIO) { /* for MMIO ranges we need to check for overlap */ if (start >= range->hw_start + range->size || - end < range->hw_start) { + end <= range->hw_start) { mmio_end = range->io_start + range->size; } else { ret = -EFAULT; -- 2.28.0