summaryrefslogtreecommitdiff
path: root/common/util.c
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2020-05-14 10:16:37 -0700
committerCommit Bot <commit-bot@chromium.org>2020-05-15 03:03:15 +0000
commitf21e39083c70a3a04aed865cef65ce4ef95d78b8 (patch)
tree88488d70442770d1db63805532902eefaf5f4e99 /common/util.c
parentbca6d843094cbc8bc49aea01c87b8338b529fd7b (diff)
downloadchrome-ec-f21e39083c70a3a04aed865cef65ce4ef95d78b8.tar.gz
common/util: Add is_aligned
Helper function to check power-of-two alignment. BRANCH=none BUG=b:155229277, b:156501835 TEST=make buildall -j TEST=make run-utils Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: Iadcdaeb59e496f10035bd6c7f9660a3cc33a4898 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2202849 Commit-Queue: Ting Shen <phoenixshen@chromium.org> Reviewed-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'common/util.c')
-rw-r--r--common/util.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/common/util.c b/common/util.c
index 8d12dc59f4..48374ed08a 100644
--- a/common/util.c
+++ b/common/util.c
@@ -552,6 +552,14 @@ bool bytes_are_trivial(const uint8_t *buffer, size_t size)
return (result0 == 0) || (result1 == 0);
}
+bool is_aligned(uint32_t addr, uint32_t align)
+{
+ if (!POWER_OF_TWO(align))
+ return false;
+
+ return (addr & (align - 1)) == 0;
+}
+
/****************************************************************************/
/* stateful conditional stuff */