sde_hw_rc.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2020, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #ifndef _SDE_HW_RC_H
  7. #define _SDE_HW_RC_H
  8. #include "sde_hw_mdss.h"
  9. /**
  10. * sde_hw_rc_init - Initialize RC internal state object and ops
  11. * @hw_dspp: DSPP instance.
  12. * Return: 0 on success, non-zero otherwise.
  13. */
  14. int sde_hw_rc_init(struct sde_hw_dspp *hw_dspp);
  15. /**
  16. * sde_hw_rc_check_mask - Validate RC mask configuration
  17. * @hw_dspp: DSPP instance.
  18. * @cfg: Pointer to configuration blob.
  19. * Return: 0 on success, non-zero otherwise.
  20. */
  21. int sde_hw_rc_check_mask(struct sde_hw_dspp *hw_dspp, void *cfg);
  22. /**
  23. * sde_hw_rc_setup_mask - Setup RC mask configuration
  24. * @hw_dspp: DSPP instance.
  25. * @cfg: Pointer to configuration blob.
  26. * Return: 0 on success, non-zero otherwise.
  27. */
  28. int sde_hw_rc_setup_mask(struct sde_hw_dspp *hw_dspp, void *cfg);
  29. /**
  30. * sde_hw_rc_check_pu_roi - Validate RC partial update region of interest
  31. * @hw_dspp: DSPP instance.
  32. * @cfg: Pointer to configuration blob.
  33. * Return: 0 on success.
  34. * > 0 on early return.
  35. * < 0 on error.
  36. */
  37. int sde_hw_rc_check_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg);
  38. /**
  39. * sde_hw_rc_setup_pu_roi - Setup RC partial update region of interest
  40. * @hw_dspp: DSPP instance.
  41. * @cfg: Pointer to configuration blob.
  42. * Return: 0 on success.
  43. * > 0 on early return.
  44. * < 0 on error.
  45. */
  46. int sde_hw_rc_setup_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg);
  47. #endif