1a3fc56b1SAlejandro Lucero /* SPDX-License-Identifier: GPL-2.0-only */ 2a3fc56b1SAlejandro Lucero /**************************************************************************** 3a3fc56b1SAlejandro Lucero * Driver for AMD network controllers and boards 4a3fc56b1SAlejandro Lucero * Copyright (C) 2025, Advanced Micro Devices, Inc. 5a3fc56b1SAlejandro Lucero * 6a3fc56b1SAlejandro Lucero * This program is free software; you can redistribute it and/or modify it 7a3fc56b1SAlejandro Lucero * under the terms of the GNU General Public License version 2 as published 8a3fc56b1SAlejandro Lucero * by the Free Software Foundation, incorporated herein by reference. 9a3fc56b1SAlejandro Lucero */ 10a3fc56b1SAlejandro Lucero 11a3fc56b1SAlejandro Lucero #ifndef EFX_CXL_H 12a3fc56b1SAlejandro Lucero #define EFX_CXL_H 13a3fc56b1SAlejandro Lucero 14a3fc56b1SAlejandro Lucero #ifdef CONFIG_SFC_CXL 15a3fc56b1SAlejandro Lucero 16a3fc56b1SAlejandro Lucero #include <cxl/cxl.h> 17a3fc56b1SAlejandro Lucero 18a3fc56b1SAlejandro Lucero struct efx_probe_data; 19a3fc56b1SAlejandro Lucero 20a3fc56b1SAlejandro Lucero struct efx_cxl { 21a3fc56b1SAlejandro Lucero struct cxl_dev_state cxlds; 22a3fc56b1SAlejandro Lucero struct cxl_memdev *cxlmd; 23*0418860eSAlejandro Lucero void __iomem *ctpio_cxl; 24a3fc56b1SAlejandro Lucero }; 25a3fc56b1SAlejandro Lucero 26a3fc56b1SAlejandro Lucero int efx_cxl_init(struct efx_probe_data *probe_data); 27*0418860eSAlejandro Lucero void efx_cxl_exit(struct efx_probe_data *probe_data); 28a3fc56b1SAlejandro Lucero #else efx_cxl_init(struct efx_probe_data * probe_data)29a3fc56b1SAlejandro Lucerostatic inline int efx_cxl_init(struct efx_probe_data *probe_data) { return 0; } efx_cxl_exit(struct efx_probe_data * probe_data)30*0418860eSAlejandro Lucerostatic inline void efx_cxl_exit(struct efx_probe_data *probe_data) {} 31a3fc56b1SAlejandro Lucero #endif 32a3fc56b1SAlejandro Lucero #endif 33