194742Sobrien/* SPDX-License-Identifier: GPL-2.0-only */
294742Sobrien/*
394742Sobrien * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
495253Sru */
594742Sobrien
696991Srwatson#ifndef _DPU_WRITEBACK_H
796991Srwatson#define _DPU_WRITEBACK_H
896991Srwatson
9102773Srwatson#include <drm/drm_crtc.h>
10102773Srwatson#include <drm/drm_file.h>
1194854Ssos#include <drm/drm_probe_helper.h>
1294917Simp#include <drm/drm_writeback.h>
13126445Sobrien
1494917Simp#include "msm_drv.h"
1594917Simp#include "dpu_kms.h"
1694917Simp#include "dpu_encoder_phys.h"
17117751Smarkm
18117751Smarkmstruct dpu_wb_connector {
19116149Smarkm	struct drm_writeback_connector base;
20116149Smarkm	struct drm_encoder *wb_enc;
21125244Snectar	u32 maxlinewidth;
22125244Snectar};
2394847Sjhb
2494847Sjhbstatic inline struct dpu_wb_connector *to_dpu_wb_conn(struct drm_writeback_connector *conn)
2594847Sjhb{
26126337Svkashyap	return container_of(conn, struct dpu_wb_connector, base);
27128023Svkashyap}
2894855Sscottl
29126054Sscottlint dpu_writeback_init(struct drm_device *dev, struct drm_encoder *enc,
30126054Sscottl		const u32 *format_list, u32 num_formats, u32 maxlinewidth);
31126054Sscottl
32126054Sscottl#endif /*_DPU_WRITEBACK_H */
33126054Sscottl