debug_symbol.h 773 B

12345678910111213141516171819202122232425262728293031323334
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
  4. *
  5. */
  6. #ifndef _DEBUG_SYMBOL_H
  7. #define _DEBUG_SYMBOL_H
  8. #include <linux/types.h>
  9. #include <linux/kallsyms.h>
  10. #if IS_ENABLED(CONFIG_QCOM_DEBUG_SYMBOL)
  11. #define DEBUG_SYMBOL_LOOKUP(symbol_name) \
  12. ((void *)debug_symbol_lookup_name(#symbol_name))
  13. extern bool debug_symbol_available(void);
  14. extern unsigned long debug_symbol_lookup_name(const char *name);
  15. #else
  16. #define DEBUG_SYMBOL_LOOKUP(symbol_name) \
  17. ((void *)kallsyms_lookup_name(#symbol_name))
  18. static inline bool debug_symbol_available(void)
  19. {
  20. return true;
  21. }
  22. static inline unsigned long debug_symbol_lookup_name(const char *name)
  23. {
  24. return 0;
  25. }
  26. #endif /* CONFIG_QCOM_DEBUG_SYMBOL */
  27. #endif