18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+
28c2ecf20Sopenharmony_ci// Copyright 2017 IBM Corp.
38c2ecf20Sopenharmony_ci#ifndef _OCXL_CONFIG_H_
48c2ecf20Sopenharmony_ci#define _OCXL_CONFIG_H_
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ci/*
78c2ecf20Sopenharmony_ci * This file lists the various constants used to read the
88c2ecf20Sopenharmony_ci * configuration space of an opencapi adapter.
98c2ecf20Sopenharmony_ci *
108c2ecf20Sopenharmony_ci * It follows the specification for opencapi 3.0
118c2ecf20Sopenharmony_ci */
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci#define OCXL_EXT_CAP_ID_DVSEC                 0x23
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ci#define OCXL_DVSEC_VENDOR_OFFSET              0x4
168c2ecf20Sopenharmony_ci#define OCXL_DVSEC_ID_OFFSET                  0x8
178c2ecf20Sopenharmony_ci#define OCXL_DVSEC_TL_ID                      0xF000
188c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_TL_BACKOFF_TIMERS          0x10
198c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_TL_RECV_CAP                0x18
208c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_TL_SEND_CAP                0x20
218c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_TL_RECV_RATE               0x30
228c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_TL_SEND_RATE               0x50
238c2ecf20Sopenharmony_ci#define OCXL_DVSEC_FUNC_ID                    0xF001
248c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_FUNC_OFF_INDEX             0x08
258c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_FUNC_OFF_ACTAG             0x0C
268c2ecf20Sopenharmony_ci#define OCXL_DVSEC_AFU_INFO_ID                0xF003
278c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_INFO_AFU_IDX           0x0A
288c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_INFO_OFF               0x0C
298c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_INFO_DATA              0x10
308c2ecf20Sopenharmony_ci#define OCXL_DVSEC_AFU_CTRL_ID                0xF004
318c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_AFU_IDX           0x0A
328c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_TERM_PASID        0x0C
338c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_ENABLE            0x0F
348c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_PASID_SUP         0x10
358c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_PASID_EN          0x11
368c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_PASID_BASE        0x14
378c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_ACTAG_SUP         0x18
388c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_ACTAG_EN          0x1A
398c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_AFU_CTRL_ACTAG_BASE        0x1C
408c2ecf20Sopenharmony_ci#define OCXL_DVSEC_VENDOR_ID                  0xF0F0
418c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_VENDOR_CFG_VERS            0x0C
428c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_VENDOR_TLX_VERS            0x10
438c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_VENDOR_DLX_VERS            0x20
448c2ecf20Sopenharmony_ci#define   OCXL_DVSEC_VENDOR_RESET_RELOAD        0x38
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci#endif /* _OCXL_CONFIG_H_ */
47