Lines Matching refs:stream
42 static inline void etna_emit_load_state(struct etna_cmd_stream *stream,
50 etna_cmd_stream_emit(stream, v);
53 static inline void etna_set_state(struct etna_cmd_stream *stream, uint32_t address, uint32_t value)
55 etna_cmd_stream_reserve(stream, 2);
56 etna_emit_load_state(stream, address >> 2, 1);
57 etna_cmd_stream_emit(stream, value);
60 static inline void etna_set_state_from_bo(struct etna_cmd_stream *stream,
63 etna_cmd_stream_reserve(stream, 2);
64 etna_emit_load_state(stream, address >> 2, 1);
66 etna_cmd_stream_reloc(stream, &(struct etna_reloc){
73 static void gen_cmd_stream(struct etna_cmd_stream *stream, struct etna_bo *bmp, const int width, const int height)
78 etna_set_state(stream, VIVS_DE_SRC_STRIDE, 0);
79 etna_set_state(stream, VIVS_DE_SRC_ROTATION_CONFIG, 0);
80 etna_set_state(stream, VIVS_DE_SRC_CONFIG, 0);
81 etna_set_state(stream, VIVS_DE_SRC_ORIGIN, 0);
82 etna_set_state(stream, VIVS_DE_SRC_SIZE, 0);
83 etna_set_state(stream, VIVS_DE_SRC_COLOR_BG, 0);
84 etna_set_state(stream, VIVS_DE_SRC_COLOR_FG, 0);
85 etna_set_state(stream, VIVS_DE_STRETCH_FACTOR_LOW, 0);
86 etna_set_state(stream, VIVS_DE_STRETCH_FACTOR_HIGH, 0);
87 etna_set_state_from_bo(stream, VIVS_DE_DEST_ADDRESS, bmp);
88 etna_set_state(stream, VIVS_DE_DEST_STRIDE, width*4);
89 etna_set_state(stream, VIVS_DE_DEST_ROTATION_CONFIG, 0);
90 etna_set_state(stream, VIVS_DE_DEST_CONFIG,
97 etna_set_state(stream, VIVS_DE_ROP,
99 etna_set_state(stream, VIVS_DE_CLIP_TOP_LEFT,
103 etna_set_state(stream, VIVS_DE_CLIP_BOTTOM_RIGHT,
107 etna_set_state(stream, VIVS_DE_CONFIG, 0); /* TODO */
108 etna_set_state(stream, VIVS_DE_SRC_ORIGIN_FRACTION, 0);
109 etna_set_state(stream, VIVS_DE_ALPHA_CONTROL, 0);
110 etna_set_state(stream, VIVS_DE_ALPHA_MODES, 0);
111 etna_set_state(stream, VIVS_DE_DEST_ROTATION_HEIGHT, 0);
112 etna_set_state(stream, VIVS_DE_SRC_ROTATION_HEIGHT, 0);
113 etna_set_state(stream, VIVS_DE_ROT_ANGLE, 0);
116 etna_set_state(stream, VIVS_DE_CLEAR_PIXEL_VALUE32, 0xff40ff40);
118 etna_set_state(stream, VIVS_DE_CLEAR_BYTE_MASK, 0xff);
119 etna_set_state(stream, VIVS_DE_CLEAR_PIXEL_VALUE_LOW, 0xff40ff40);
120 etna_set_state(stream, VIVS_DE_CLEAR_PIXEL_VALUE_HIGH, 0xff40ff40);
122 etna_set_state(stream, VIVS_DE_DEST_COLOR_KEY, 0);
123 etna_set_state(stream, VIVS_DE_GLOBAL_SRC_COLOR, 0);
124 etna_set_state(stream, VIVS_DE_GLOBAL_DEST_COLOR, 0);
125 etna_set_state(stream, VIVS_DE_COLOR_MULTIPLY_MODES, 0);
126 etna_set_state(stream, VIVS_DE_PE_TRANSPARENCY, 0);
127 etna_set_state(stream, VIVS_DE_PE_CONTROL, 0);
128 etna_set_state(stream, VIVS_DE_PE_DITHER_LOW, 0xffffffff);
129 etna_set_state(stream, VIVS_DE_PE_DITHER_HIGH, 0xffffffff);
132 etna_cmd_stream_emit(stream,
135 etna_cmd_stream_emit(stream, 0x0); /* rectangles start aligned */
140 etna_cmd_stream_emit(stream, VIV_FE_DRAW_2D_TOP_LEFT_X(x*8) | VIV_FE_DRAW_2D_TOP_LEFT_Y(y*8));
141 etna_cmd_stream_emit(stream, VIV_FE_DRAW_2D_BOTTOM_RIGHT_X(x*8+4) | VIV_FE_DRAW_2D_BOTTOM_RIGHT_Y(y*8+4));
143 etna_set_state(stream, 1, 0);
144 etna_set_state(stream, 1, 0);
145 etna_set_state(stream, 1, 0);
147 etna_set_state(stream, VIVS_GL_FLUSH_CACHE, VIVS_GL_FLUSH_CACHE_PE2D);
181 struct etna_cmd_stream *stream;
254 stream = etna_cmd_stream_new(pipe, 0x300, NULL, NULL);
255 if (!stream) {
262 gen_cmd_stream(stream, bmp, width, height);
264 etna_cmd_stream_finish(stream);
272 etna_cmd_stream_del(stream);