LCOV - code coverage report
Current view: top level - include/drm - drm_privacy_screen_consumer.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 2 0.0 %
Date: 2023-04-06 08:38:28 Functions: 0 0 -

          Line data    Source code
       1             : /* SPDX-License-Identifier: MIT */
       2             : /*
       3             :  * Copyright (C) 2020 Red Hat, Inc.
       4             :  *
       5             :  * Authors:
       6             :  * Hans de Goede <hdegoede@redhat.com>
       7             :  */
       8             : 
       9             : #ifndef __DRM_PRIVACY_SCREEN_CONSUMER_H__
      10             : #define __DRM_PRIVACY_SCREEN_CONSUMER_H__
      11             : 
      12             : #include <linux/device.h>
      13             : #include <drm/drm_connector.h>
      14             : 
      15             : struct drm_privacy_screen;
      16             : 
      17             : #if IS_ENABLED(CONFIG_DRM_PRIVACY_SCREEN)
      18             : struct drm_privacy_screen *drm_privacy_screen_get(struct device *dev,
      19             :                                                   const char *con_id);
      20             : void drm_privacy_screen_put(struct drm_privacy_screen *priv);
      21             : 
      22             : int drm_privacy_screen_set_sw_state(struct drm_privacy_screen *priv,
      23             :                                     enum drm_privacy_screen_status sw_state);
      24             : void drm_privacy_screen_get_state(struct drm_privacy_screen *priv,
      25             :                                   enum drm_privacy_screen_status *sw_state_ret,
      26             :                                   enum drm_privacy_screen_status *hw_state_ret);
      27             : 
      28             : int drm_privacy_screen_register_notifier(struct drm_privacy_screen *priv,
      29             :                                          struct notifier_block *nb);
      30             : int drm_privacy_screen_unregister_notifier(struct drm_privacy_screen *priv,
      31             :                                            struct notifier_block *nb);
      32             : #else
      33             : static inline struct drm_privacy_screen *drm_privacy_screen_get(struct device *dev,
      34             :                                                                 const char *con_id)
      35             : {
      36             :         return ERR_PTR(-ENODEV);
      37             : }
      38             : static inline void drm_privacy_screen_put(struct drm_privacy_screen *priv)
      39             : {
      40             : }
      41             : static inline int drm_privacy_screen_set_sw_state(struct drm_privacy_screen *priv,
      42             :                                                   enum drm_privacy_screen_status sw_state)
      43             : {
      44             :         return -ENODEV;
      45             : }
      46             : static inline void drm_privacy_screen_get_state(struct drm_privacy_screen *priv,
      47             :                                                 enum drm_privacy_screen_status *sw_state_ret,
      48             :                                                 enum drm_privacy_screen_status *hw_state_ret)
      49             : {
      50           0 :         *sw_state_ret = PRIVACY_SCREEN_DISABLED;
      51           0 :         *hw_state_ret = PRIVACY_SCREEN_DISABLED;
      52             : }
      53             : static inline int drm_privacy_screen_register_notifier(struct drm_privacy_screen *priv,
      54             :                                                        struct notifier_block *nb)
      55             : {
      56             :         return -ENODEV;
      57             : }
      58             : static inline int drm_privacy_screen_unregister_notifier(struct drm_privacy_screen *priv,
      59             :                                                          struct notifier_block *nb)
      60             : {
      61             :         return -ENODEV;
      62             : }
      63             : #endif
      64             : 
      65             : #endif

Generated by: LCOV version 1.14