diff options
author | davidcunado-arm <david.cunado@arm.com> | 2017-03-18 12:16:27 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-03-18 12:16:27 +0000 |
commit | 3944adca5943a050ca7e7e9cc802a9ae04dec186 (patch) | |
tree | 5cf7136c202a31ff67477bc76d7f3ffa4ec66ced /lib | |
parent | effe0dcab170a524dffde76dd88c582814c6b8a9 (diff) | |
parent | a6b3954b2ffd695972ec099089cb2dde92ebaaa3 (diff) |
Merge pull request #861 from soby-mathew/sm/aarch32_fixes
Misc AArch32 fixes
Diffstat (limited to 'lib')
-rw-r--r-- | lib/locks/bakery/bakery_lock_normal.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lib/locks/bakery/bakery_lock_normal.c b/lib/locks/bakery/bakery_lock_normal.c index 5a2fb071..a3a6c002 100644 --- a/lib/locks/bakery/bakery_lock_normal.c +++ b/lib/locks/bakery/bakery_lock_normal.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015-2016, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -178,8 +178,11 @@ void bakery_lock_get(bakery_lock_t *lock) unsigned int their_bakery_data; me = plat_my_core_pos(); - +#ifdef AARCH32 + is_cached = read_sctlr() & SCTLR_C_BIT; +#else is_cached = read_sctlr_el3() & SCTLR_C_BIT; +#endif /* Get a ticket */ my_ticket = bakery_get_ticket(lock, me, is_cached); @@ -231,7 +234,11 @@ void bakery_lock_get(bakery_lock_t *lock) void bakery_lock_release(bakery_lock_t *lock) { bakery_info_t *my_bakery_info; +#ifdef AARCH32 + unsigned int is_cached = read_sctlr() & SCTLR_C_BIT; +#else unsigned int is_cached = read_sctlr_el3() & SCTLR_C_BIT; +#endif my_bakery_info = get_bakery_info(plat_my_core_pos(), lock); |