cmd-db.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #ifndef __QCOM_COMMAND_DB_H__
  7. #define __QCOM_COMMAND_DB_H__
  8. #include <linux/err.h>
  9. enum cmd_db_hw_type {
  10. CMD_DB_HW_INVALID = 0,
  11. CMD_DB_HW_MIN = 3,
  12. CMD_DB_HW_ARC = CMD_DB_HW_MIN,
  13. CMD_DB_HW_VRM = 4,
  14. CMD_DB_HW_BCM = 5,
  15. CMD_DB_HW_MAX = CMD_DB_HW_BCM,
  16. CMD_DB_HW_ALL = 0xff,
  17. };
  18. #if IS_ENABLED(CONFIG_QCOM_COMMAND_DB)
  19. u32 cmd_db_read_addr(const char *resource_id);
  20. const void *cmd_db_read_aux_data(const char *resource_id, size_t *len);
  21. bool cmd_db_match_resource_addr(u32 addr1, u32 addr2);
  22. enum cmd_db_hw_type cmd_db_read_slave_id(const char *resource_id);
  23. int cmd_db_ready(void);
  24. #else
  25. static inline u32 cmd_db_read_addr(const char *resource_id)
  26. { return 0; }
  27. static inline const void *cmd_db_read_aux_data(const char *resource_id, size_t *len)
  28. { return ERR_PTR(-ENODEV); }
  29. static inline bool cmd_db_match_resource_addr(u32 addr1, u32 addr2)
  30. { return false; }
  31. static inline enum cmd_db_hw_type cmd_db_read_slave_id(const char *resource_id)
  32. { return -ENODEV; }
  33. static inline int cmd_db_ready(void)
  34. { return -ENODEV; }
  35. #endif /* CONFIG_QCOM_COMMAND_DB */
  36. #endif /* __QCOM_COMMAND_DB_H__ */