1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * rcar-fcp.h -- R-Car Frame Compression Processor Driver 4 * 5 * Copyright (C) 2016 Renesas Electronics Corporation 6 * 7 * Contact: Laurent Pinchart (laurent.pinchart@ideasonboard.com) 8 */ 9 #ifndef __MEDIA_RCAR_FCP_H__ 10 #define __MEDIA_RCAR_FCP_H__ 11 12 struct device_node; 13 struct rcar_fcp_device; 14 15 #if IS_ENABLED(CONFIG_VIDEO_RENESAS_FCP) 16 struct rcar_fcp_device *rcar_fcp_get(const struct device_node *np); 17 void rcar_fcp_put(struct rcar_fcp_device *fcp); 18 struct device *rcar_fcp_get_device(struct rcar_fcp_device *fcp); 19 int rcar_fcp_enable(struct rcar_fcp_device *fcp); 20 void rcar_fcp_disable(struct rcar_fcp_device *fcp); 21 int rcar_fcp_soft_reset(struct rcar_fcp_device *fcp); 22 #else rcar_fcp_get(const struct device_node * np)23static inline struct rcar_fcp_device *rcar_fcp_get(const struct device_node *np) 24 { 25 return ERR_PTR(-ENOENT); 26 } rcar_fcp_put(struct rcar_fcp_device * fcp)27static inline void rcar_fcp_put(struct rcar_fcp_device *fcp) { } rcar_fcp_get_device(struct rcar_fcp_device * fcp)28static inline struct device *rcar_fcp_get_device(struct rcar_fcp_device *fcp) 29 { 30 return NULL; 31 } rcar_fcp_enable(struct rcar_fcp_device * fcp)32static inline int rcar_fcp_enable(struct rcar_fcp_device *fcp) 33 { 34 return 0; 35 } rcar_fcp_disable(struct rcar_fcp_device * fcp)36static inline void rcar_fcp_disable(struct rcar_fcp_device *fcp) { } rcar_fcp_soft_reset(struct rcar_fcp_device * fcp)37static inline int rcar_fcp_soft_reset(struct rcar_fcp_device *fcp) 38 { 39 return 0; 40 } 41 #endif 42 43 #endif /* __MEDIA_RCAR_FCP_H__ */ 44