1*71e2f4ddSJiaxun Yang /* SPDX-License-Identifier: GPL-2.0 */ 2*71e2f4ddSJiaxun Yang /* 3*71e2f4ddSJiaxun Yang * the read/write interfaces for Virtual Support Module(VSM) 4*71e2f4ddSJiaxun Yang * 5*71e2f4ddSJiaxun Yang * Copyright (C) 2009 Lemote, Inc. 6*71e2f4ddSJiaxun Yang * Author: Wu Zhangjin <wuzhangjin@gmail.com> 7*71e2f4ddSJiaxun Yang */ 8*71e2f4ddSJiaxun Yang 9*71e2f4ddSJiaxun Yang #ifndef _CS5536_VSM_H 10*71e2f4ddSJiaxun Yang #define _CS5536_VSM_H 11*71e2f4ddSJiaxun Yang 12*71e2f4ddSJiaxun Yang #include <linux/types.h> 13*71e2f4ddSJiaxun Yang 14*71e2f4ddSJiaxun Yang typedef void (*cs5536_pci_vsm_write)(int reg, u32 value); 15*71e2f4ddSJiaxun Yang typedef u32 (*cs5536_pci_vsm_read)(int reg); 16*71e2f4ddSJiaxun Yang 17*71e2f4ddSJiaxun Yang #define DECLARE_CS5536_MODULE(name) \ 18*71e2f4ddSJiaxun Yang extern void pci_##name##_write_reg(int reg, u32 value); \ 19*71e2f4ddSJiaxun Yang extern u32 pci_##name##_read_reg(int reg); 20*71e2f4ddSJiaxun Yang 21*71e2f4ddSJiaxun Yang /* ide module */ 22*71e2f4ddSJiaxun Yang DECLARE_CS5536_MODULE(ide) 23*71e2f4ddSJiaxun Yang /* acc module */ 24*71e2f4ddSJiaxun Yang DECLARE_CS5536_MODULE(acc) 25*71e2f4ddSJiaxun Yang /* ohci module */ 26*71e2f4ddSJiaxun Yang DECLARE_CS5536_MODULE(ohci) 27*71e2f4ddSJiaxun Yang /* isa module */ 28*71e2f4ddSJiaxun Yang DECLARE_CS5536_MODULE(isa) 29*71e2f4ddSJiaxun Yang /* ehci module */ 30*71e2f4ddSJiaxun Yang DECLARE_CS5536_MODULE(ehci) 31*71e2f4ddSJiaxun Yang 32*71e2f4ddSJiaxun Yang #endif /* _CS5536_VSM_H */ 33