vlock.h 933 B

123456789101112131415161718192021222324252627282930
  1. /*
  2. * vlock.h - simple voting lock implementation
  3. *
  4. * Created by: Dave Martin, 2012-08-16
  5. * Copyright: (C) 2012-2013 Linaro Limited
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License version 2 as
  9. * published by the Free Software Foundation.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU General Public License for more details.
  15. */
  16. #ifndef __VLOCK_H
  17. #define __VLOCK_H
  18. #include <asm/mcpm.h>
  19. /* Offsets and sizes are rounded to a word (4 bytes) */
  20. #define VLOCK_OWNER_OFFSET 0
  21. #define VLOCK_VOTING_OFFSET 4
  22. #define VLOCK_VOTING_SIZE ((MAX_CPUS_PER_CLUSTER + 3) / 4 * 4)
  23. #define VLOCK_SIZE (VLOCK_VOTING_OFFSET + VLOCK_VOTING_SIZE)
  24. #define VLOCK_OWNER_NONE 0
  25. #endif /* ! __VLOCK_H */