blob: 230c871ba0840723d0c08efd7167a1dc4790adac [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Dan Williamsbfa9cb32016-12-02 19:31:02 +01002#ifndef _LINUX_AHCI_REMAP_H
3#define _LINUX_AHCI_REMAP_H
4
5#include <linux/sizes.h>
6
7#define AHCI_VSCAP 0xa4
8#define AHCI_REMAP_CAP 0x800
9
10/* device class code */
11#define AHCI_REMAP_N_DCC 0x880
12
13/* remap-device base relative to ahci-bar */
14#define AHCI_REMAP_N_OFFSET SZ_16K
15#define AHCI_REMAP_N_SIZE SZ_16K
16
17#define AHCI_MAX_REMAP 3
18
19static inline unsigned int ahci_remap_dcc(int i)
20{
21 return AHCI_REMAP_N_DCC + i * 0x80;
22}
23
24static inline unsigned int ahci_remap_base(int i)
25{
26 return AHCI_REMAP_N_OFFSET + i * AHCI_REMAP_N_SIZE;
27}
28
29#endif /* _LINUX_AHCI_REMAP_H */