diff options
-rw-r--r-- | src/commonlib/include/commonlib/region.h | 10 | ||||
-rw-r--r-- | src/commonlib/region.c | 5 | ||||
-rw-r--r-- | src/drivers/spi/winbond.c | 9 |
3 files changed, 13 insertions, 11 deletions
diff --git a/src/commonlib/include/commonlib/region.h b/src/commonlib/include/commonlib/region.h index f27a494d39..39db1bb627 100644 --- a/src/commonlib/include/commonlib/region.h +++ b/src/commonlib/include/commonlib/region.h @@ -122,6 +122,11 @@ static inline size_t region_sz(const struct region *r) return r->size; } +static inline size_t region_end(const struct region *r) +{ + return region_offset(r) + region_sz(r); +} + static inline const struct region *region_device_region( const struct region_device *rdev) { @@ -138,6 +143,11 @@ static inline size_t region_device_offset(const struct region_device *rdev) return region_offset(region_device_region(rdev)); } +static inline size_t region_device_end(const struct region_device *rdev) +{ + return region_end(region_device_region(rdev)); +} + /* Memory map entire region device. Same semantics as rdev_mmap() above. */ static inline void *rdev_mmap_full(const struct region_device *rd) { diff --git a/src/commonlib/region.c b/src/commonlib/region.c index ca7b6efe4b..4a7e285747 100644 --- a/src/commonlib/region.c +++ b/src/commonlib/region.c @@ -15,11 +15,6 @@ #include <commonlib/region.h> #include <string.h> -static inline size_t region_end(const struct region *r) -{ - return region_sz(r) + region_offset(r); -} - int region_is_subregion(const struct region *p, const struct region *c) { if (region_offset(c) < region_offset(p)) diff --git a/src/drivers/spi/winbond.c b/src/drivers/spi/winbond.c index 00a7bf90cd..fa9140ec01 100644 --- a/src/drivers/spi/winbond.c +++ b/src/drivers/spi/winbond.c @@ -431,8 +431,7 @@ static int winbond_get_write_protection(const struct spi_flash *flash, } printk(BIOS_DEBUG, "WINBOND: flash protected range 0x%08zx-0x%08zx\n", - region_offset(&wp_region), - region_offset(&wp_region) + region_sz(&wp_region)); + region_offset(&wp_region), region_end(&wp_region)); return region_is_subregion(&wp_region, region); } @@ -562,8 +561,7 @@ winbond_set_write_protection(const struct spi_flash *flash, int ret; /* Need to touch TOP or BOTTOM */ - if (region_offset(region) != 0 && - (region_offset(region) + region_sz(region)) != flash->size) + if (region_offset(region) != 0 && region_end(region) != flash->size) return -1; params = (const struct winbond_spi_flash_params *)flash->driver_private; @@ -654,8 +652,7 @@ winbond_set_write_protection(const struct spi_flash *flash, return ret; printk(BIOS_DEBUG, "WINBOND: write-protection set to range " - "0x%08zx-0x%08zx\n", region_offset(region), - region_offset(region) + region_sz(region)); + "0x%08zx-0x%08zx\n", region_offset(region), region_end(region)); return ret; } |