| .. | .. |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
|---|
| 1 | 2 | /* Copyright (c) 2015-2018, The Linux Foundation. All rights reserved. |
|---|
| 2 | | - * |
|---|
| 3 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 4 | | - * it under the terms of the GNU General Public License version 2 and |
|---|
| 5 | | - * only version 2 as published by the Free Software Foundation. |
|---|
| 6 | | - * |
|---|
| 7 | | - * This program is distributed in the hope that it will be useful, |
|---|
| 8 | | - * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|---|
| 9 | | - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|---|
| 10 | | - * GNU General Public License for more details. |
|---|
| 11 | 3 | */ |
|---|
| 12 | 4 | |
|---|
| 13 | 5 | #ifndef _DPU_HW_INTF_H |
|---|
| .. | .. |
|---|
| 59 | 51 | * @ setup_prog_fetch : enables/disables the programmable fetch logic |
|---|
| 60 | 52 | * @ enable_timing: enable/disable timing engine |
|---|
| 61 | 53 | * @ get_status: returns if timing engine is enabled or not |
|---|
| 62 | | - * @ setup_misr: enables/disables MISR in HW register |
|---|
| 63 | | - * @ collect_misr: reads and stores MISR data from HW register |
|---|
| 64 | 54 | * @ get_line_count: reads current vertical line counter |
|---|
| 55 | + * @bind_pingpong_blk: enable/disable the connection with pingpong which will |
|---|
| 56 | + * feed pixels to this interface |
|---|
| 65 | 57 | */ |
|---|
| 66 | 58 | struct dpu_hw_intf_ops { |
|---|
| 67 | 59 | void (*setup_timing_gen)(struct dpu_hw_intf *intf, |
|---|
| .. | .. |
|---|
| 77 | 69 | void (*get_status)(struct dpu_hw_intf *intf, |
|---|
| 78 | 70 | struct intf_status *status); |
|---|
| 79 | 71 | |
|---|
| 80 | | - void (*setup_misr)(struct dpu_hw_intf *intf, |
|---|
| 81 | | - bool enable, u32 frame_count); |
|---|
| 82 | | - |
|---|
| 83 | | - u32 (*collect_misr)(struct dpu_hw_intf *intf); |
|---|
| 84 | | - |
|---|
| 85 | 72 | u32 (*get_line_count)(struct dpu_hw_intf *intf); |
|---|
| 73 | + |
|---|
| 74 | + void (*bind_pingpong_blk)(struct dpu_hw_intf *intf, |
|---|
| 75 | + bool enable, |
|---|
| 76 | + const enum dpu_pingpong pp); |
|---|
| 86 | 77 | }; |
|---|
| 87 | 78 | |
|---|
| 88 | 79 | struct dpu_hw_intf { |
|---|
| .. | .. |
|---|
| 117 | 108 | */ |
|---|
| 118 | 109 | struct dpu_hw_intf *dpu_hw_intf_init(enum dpu_intf idx, |
|---|
| 119 | 110 | void __iomem *addr, |
|---|
| 120 | | - struct dpu_mdss_cfg *m); |
|---|
| 111 | + const struct dpu_mdss_cfg *m); |
|---|
| 121 | 112 | |
|---|
| 122 | 113 | /** |
|---|
| 123 | 114 | * dpu_hw_intf_destroy(): Destroys INTF driver context |
|---|