1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Surface System Aggregator Module bus and device integration.
4  *
5  * Copyright (C) 2019-2021 Maximilian Luz <luzmaximilian@gmail.com>
6  */
7 
8 #ifndef _SURFACE_AGGREGATOR_BUS_H
9 #define _SURFACE_AGGREGATOR_BUS_H
10 
11 #include <linux/surface_aggregator/controller.h>
12 
13 #ifdef CONFIG_SURFACE_AGGREGATOR_BUS
14 
15 void ssam_controller_remove_clients(struct ssam_controller *ctrl);
16 
17 int ssam_bus_register(void);
18 void ssam_bus_unregister(void);
19 
20 #else /* CONFIG_SURFACE_AGGREGATOR_BUS */
21 
22 static inline void ssam_controller_remove_clients(struct ssam_controller *ctrl) {}
23 static inline int ssam_bus_register(void) { return 0; }
24 static inline void ssam_bus_unregister(void) {}
25 
26 #endif /* CONFIG_SURFACE_AGGREGATOR_BUS */
27 #endif /* _SURFACE_AGGREGATOR_BUS_H */
28