1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2013-2021 Intel Corporation 4 */ 5 6 #ifndef _VLV_IOSF_SB_H_ 7 #define _VLV_IOSF_SB_H_ 8 9 #include <linux/types.h> 10 11 #include <drm/intel/vlv_iosf_sb_regs.h> 12 13 struct drm_device; 14 struct drm_i915_private; 15 16 void vlv_iosf_sb_init(struct drm_i915_private *i915); 17 void vlv_iosf_sb_fini(struct drm_i915_private *i915); 18 19 void vlv_iosf_sb_get(struct drm_device *drm, unsigned long unit_mask); 20 void vlv_iosf_sb_put(struct drm_device *drm, unsigned long unit_mask); 21 22 u32 vlv_iosf_sb_read(struct drm_device *drm, enum vlv_iosf_sb_unit unit, u32 addr); 23 int vlv_iosf_sb_write(struct drm_device *drm, enum vlv_iosf_sb_unit unit, u32 addr, u32 val); 24 25 extern const struct intel_display_vlv_iosf_interface i915_display_vlv_iosf_interface; 26 27 #endif /* _VLV_IOSF_SB_H_ */ 28