blob: af97222239251b72dffcdd49a32178eef67c55c6 [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001/* SPDX-License-Identifier: GPL-2.0 */
2/* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. */
3
4#ifndef __QCOM_COMMAND_DB_H__
5#define __QCOM_COMMAND_DB_H__
6
7
8enum cmd_db_hw_type {
9 CMD_DB_HW_INVALID = 0,
10 CMD_DB_HW_MIN = 3,
11 CMD_DB_HW_ARC = CMD_DB_HW_MIN,
12 CMD_DB_HW_VRM = 4,
13 CMD_DB_HW_BCM = 5,
14 CMD_DB_HW_MAX = CMD_DB_HW_BCM,
15 CMD_DB_HW_ALL = 0xff,
16};
17
18#if IS_ENABLED(CONFIG_QCOM_COMMAND_DB)
19u32 cmd_db_read_addr(const char *resource_id);
20
David Brazdil0f672f62019-12-10 10:32:29 +000021const void *cmd_db_read_aux_data(const char *resource_id, size_t *len);
Andrew Scullb4b6d4a2019-01-02 15:54:55 +000022
23enum cmd_db_hw_type cmd_db_read_slave_id(const char *resource_id);
24
25int cmd_db_ready(void);
26#else
27static inline u32 cmd_db_read_addr(const char *resource_id)
28{ return 0; }
29
David Brazdil0f672f62019-12-10 10:32:29 +000030static inline const void *cmd_db_read_aux_data(const char *resource_id, size_t *len)
31{ return ERR_PTR(-ENODEV); }
Andrew Scullb4b6d4a2019-01-02 15:54:55 +000032
33static inline enum cmd_db_hw_type cmd_db_read_slave_id(const char *resource_id)
34{ return -ENODEV; }
35
36static inline int cmd_db_ready(void)
37{ return -ENODEV; }
38#endif /* CONFIG_QCOM_COMMAND_DB */
39#endif /* __QCOM_COMMAND_DB_H__ */