| .. | .. |
|---|
| 49 | 49 | SRI(CURSOR_HOT_SPOT, CURSOR, id), \ |
|---|
| 50 | 50 | SRI(CURSOR_DST_OFFSET, CURSOR, id) |
|---|
| 51 | 51 | |
|---|
| 52 | +#define IPP_REG_LIST_DCN20(id) \ |
|---|
| 53 | + IPP_REG_LIST_DCN(id), \ |
|---|
| 54 | + SRI(CURSOR_SETTINGS, HUBPREQ, id), \ |
|---|
| 55 | + SRI(CURSOR_SURFACE_ADDRESS_HIGH, CURSOR0_, id), \ |
|---|
| 56 | + SRI(CURSOR_SURFACE_ADDRESS, CURSOR0_, id), \ |
|---|
| 57 | + SRI(CURSOR_SIZE, CURSOR0_, id), \ |
|---|
| 58 | + SRI(CURSOR_CONTROL, CURSOR0_, id), \ |
|---|
| 59 | + SRI(CURSOR_POSITION, CURSOR0_, id), \ |
|---|
| 60 | + SRI(CURSOR_HOT_SPOT, CURSOR0_, id), \ |
|---|
| 61 | + SRI(CURSOR_DST_OFFSET, CURSOR0_, id) |
|---|
| 62 | + |
|---|
| 52 | 63 | #define CURSOR0_CURSOR_CONTROL__CURSOR_2X_MAGNIFY__SHIFT 0x4 |
|---|
| 53 | 64 | #define CURSOR0_CURSOR_CONTROL__CURSOR_2X_MAGNIFY_MASK 0x00000010L |
|---|
| 54 | 65 | #define CURSOR1_CURSOR_CONTROL__CURSOR_2X_MAGNIFY__SHIFT 0x4 |
|---|
| .. | .. |
|---|
| 91 | 102 | IPP_SF(CURSOR0_CURSOR_HOT_SPOT, CURSOR_HOT_SPOT_Y, mask_sh), \ |
|---|
| 92 | 103 | IPP_SF(CURSOR0_CURSOR_DST_OFFSET, CURSOR_DST_X_OFFSET, mask_sh), \ |
|---|
| 93 | 104 | IPP_SF(CNVC_CFG0_FORMAT_CONTROL, OUTPUT_FP, mask_sh) |
|---|
| 105 | + |
|---|
| 106 | +#define IPP_MASK_SH_LIST_DCN20(mask_sh) \ |
|---|
| 107 | + IPP_MASK_SH_LIST_DCN(mask_sh), \ |
|---|
| 108 | + IPP_SF(HUBPREQ0_CURSOR_SETTINGS, CURSOR0_DST_Y_OFFSET, mask_sh), \ |
|---|
| 109 | + IPP_SF(HUBPREQ0_CURSOR_SETTINGS, CURSOR0_CHUNK_HDL_ADJUST, mask_sh), \ |
|---|
| 110 | + IPP_SF(CURSOR0_0_CURSOR_SURFACE_ADDRESS_HIGH, CURSOR_SURFACE_ADDRESS_HIGH, mask_sh), \ |
|---|
| 111 | + IPP_SF(CURSOR0_0_CURSOR_SURFACE_ADDRESS, CURSOR_SURFACE_ADDRESS, mask_sh), \ |
|---|
| 112 | + IPP_SF(CURSOR0_0_CURSOR_SIZE, CURSOR_WIDTH, mask_sh), \ |
|---|
| 113 | + IPP_SF(CURSOR0_0_CURSOR_SIZE, CURSOR_HEIGHT, mask_sh), \ |
|---|
| 114 | + IPP_SF(CURSOR0_0_CURSOR_CONTROL, CURSOR_MODE, mask_sh), \ |
|---|
| 115 | + IPP_SF(CURSOR0_0_CURSOR_CONTROL, CURSOR_2X_MAGNIFY, mask_sh), \ |
|---|
| 116 | + IPP_SF(CURSOR0_0_CURSOR_CONTROL, CURSOR_PITCH, mask_sh), \ |
|---|
| 117 | + IPP_SF(CURSOR0_0_CURSOR_CONTROL, CURSOR_LINES_PER_CHUNK, mask_sh), \ |
|---|
| 118 | + IPP_SF(CURSOR0_0_CURSOR_CONTROL, CURSOR_ENABLE, mask_sh), \ |
|---|
| 119 | + IPP_SF(CURSOR0_0_CURSOR_POSITION, CURSOR_X_POSITION, mask_sh), \ |
|---|
| 120 | + IPP_SF(CURSOR0_0_CURSOR_POSITION, CURSOR_Y_POSITION, mask_sh), \ |
|---|
| 121 | + IPP_SF(CURSOR0_0_CURSOR_HOT_SPOT, CURSOR_HOT_SPOT_X, mask_sh), \ |
|---|
| 122 | + IPP_SF(CURSOR0_0_CURSOR_HOT_SPOT, CURSOR_HOT_SPOT_Y, mask_sh), \ |
|---|
| 123 | + IPP_SF(CURSOR0_0_CURSOR_DST_OFFSET, CURSOR_DST_X_OFFSET, mask_sh) |
|---|
| 94 | 124 | |
|---|
| 95 | 125 | #define IPP_DCN10_REG_FIELD_LIST(type) \ |
|---|
| 96 | 126 | type CNVC_SURFACE_PIXEL_FORMAT; \ |
|---|
| .. | .. |
|---|
| 162 | 192 | const struct dcn10_ipp_shift *ipp_shift, |
|---|
| 163 | 193 | const struct dcn10_ipp_mask *ipp_mask); |
|---|
| 164 | 194 | |
|---|
| 195 | +void dcn20_ipp_construct(struct dcn10_ipp *ippn10, |
|---|
| 196 | + struct dc_context *ctx, |
|---|
| 197 | + int inst, |
|---|
| 198 | + const struct dcn10_ipp_registers *regs, |
|---|
| 199 | + const struct dcn10_ipp_shift *ipp_shift, |
|---|
| 200 | + const struct dcn10_ipp_mask *ipp_mask); |
|---|
| 201 | + |
|---|
| 165 | 202 | #endif /* _DCN10_IPP_H_ */ |
|---|