Lines Matching defs:par

140 static void c_set_disp_reg(const struct carmine_fb *par,
143 writel(val, par->display_reg + offset);
146 static u32 c_get_disp_reg(const struct carmine_fb *par,
149 return readl(par->display_reg + offset);
221 static void carmine_init_display_param(struct carmine_fb *par)
227 u32 soffset = par->smem_offset;
229 c_set_disp_reg(par, CARMINE_DISP_REG_C_TRANS, 0);
230 c_set_disp_reg(par, CARMINE_DISP_REG_MLMR_TRANS, 0);
231 c_set_disp_reg(par, CARMINE_DISP_REG_CURSOR_MODE,
237 c_set_disp_reg(par, CARMINE_DISP_REG_CUR1_POS, 0 << 16 | 0);
238 c_set_disp_reg(par, CARMINE_DISP_REG_CUR2_POS, 0 << 16 | 0);
241 c_set_disp_reg(par, CARMINE_DISP_REG_L0_EXT_MODE, CARMINE_WINDOW_MODE |
243 c_set_disp_reg(par, CARMINE_DISP_REG_L1_EXT_MODE,
245 c_set_disp_reg(par, CARMINE_DISP_REG_L2_EXT_MODE, CARMINE_EXTEND_MODE |
247 c_set_disp_reg(par, CARMINE_DISP_REG_L3_EXT_MODE, CARMINE_EXTEND_MODE |
249 c_set_disp_reg(par, CARMINE_DISP_REG_L4_EXT_MODE, CARMINE_EXTEND_MODE |
251 c_set_disp_reg(par, CARMINE_DISP_REG_L5_EXT_MODE, CARMINE_EXTEND_MODE |
253 c_set_disp_reg(par, CARMINE_DISP_REG_L6_EXT_MODE, CARMINE_EXTEND_MODE |
255 c_set_disp_reg(par, CARMINE_DISP_REG_L7_EXT_MODE, CARMINE_EXTEND_MODE |
259 width = par->res->hdp * 4 / CARMINE_DISP_WIDTH_UNIT;
262 height = par->res->vdp - 1;
265 c_set_disp_reg(par, CARMINE_DISP_REG_L0_MODE_W_H, param);
266 c_set_disp_reg(par, CARMINE_DISP_REG_L1_WIDTH, width);
267 c_set_disp_reg(par, CARMINE_DISP_REG_L2_MODE_W_H, param);
268 c_set_disp_reg(par, CARMINE_DISP_REG_L3_MODE_W_H, param);
269 c_set_disp_reg(par, CARMINE_DISP_REG_L4_MODE_W_H, param);
270 c_set_disp_reg(par, CARMINE_DISP_REG_L5_MODE_W_H, param);
271 c_set_disp_reg(par, CARMINE_DISP_REG_L6_MODE_W_H, param);
272 c_set_disp_reg(par, CARMINE_DISP_REG_L7_MODE_W_H, param);
275 window_size = (par->res->vdp - 1) << CARMINE_DISP_WIN_H_SHIFT;
276 window_size |= par->res->hdp;
278 c_set_disp_reg(par, CARMINE_DISP_REG_L0_WIN_POS, 0);
279 c_set_disp_reg(par, CARMINE_DISP_REG_L0_WIN_SIZE, window_size);
280 c_set_disp_reg(par, CARMINE_DISP_REG_L1_WIN_POS, 0);
281 c_set_disp_reg(par, CARMINE_DISP_REG_L1_WIN_SIZE, window_size);
282 c_set_disp_reg(par, CARMINE_DISP_REG_L2_WIN_POS, 0);
283 c_set_disp_reg(par, CARMINE_DISP_REG_L2_WIN_SIZE, window_size);
284 c_set_disp_reg(par, CARMINE_DISP_REG_L3_WIN_POS, 0);
285 c_set_disp_reg(par, CARMINE_DISP_REG_L3_WIN_SIZE, window_size);
286 c_set_disp_reg(par, CARMINE_DISP_REG_L4_WIN_POS, 0);
287 c_set_disp_reg(par, CARMINE_DISP_REG_L4_WIN_SIZE, window_size);
288 c_set_disp_reg(par, CARMINE_DISP_REG_L5_WIN_POS, 0);
289 c_set_disp_reg(par, CARMINE_DISP_REG_L5_WIN_SIZE, window_size);
290 c_set_disp_reg(par, CARMINE_DISP_REG_L6_WIN_POS, 0);
291 c_set_disp_reg(par, CARMINE_DISP_REG_L6_WIN_SIZE, window_size);
292 c_set_disp_reg(par, CARMINE_DISP_REG_L7_WIN_POS, 0);
293 c_set_disp_reg(par, CARMINE_DISP_REG_L7_WIN_SIZE, window_size);
296 c_set_disp_reg(par, CARMINE_DISP_REG_L0_ORG_ADR, soffset);
297 c_set_disp_reg(par, CARMINE_DISP_REG_L1_ORG_ADR, soffset);
298 c_set_disp_reg(par, CARMINE_DISP_REG_L2_ORG_ADR1, soffset);
299 c_set_disp_reg(par, CARMINE_DISP_REG_L3_ORG_ADR1, soffset);
300 c_set_disp_reg(par, CARMINE_DISP_REG_L4_ORG_ADR1, soffset);
301 c_set_disp_reg(par, CARMINE_DISP_REG_L5_ORG_ADR1, soffset);
302 c_set_disp_reg(par, CARMINE_DISP_REG_L6_ORG_ADR1, soffset);
303 c_set_disp_reg(par, CARMINE_DISP_REG_L7_ORG_ADR1, soffset);
306 c_set_disp_reg(par, CARMINE_DISP_REG_L0_DISP_ADR, soffset);
307 c_set_disp_reg(par, CARMINE_DISP_REG_L2_DISP_ADR1, soffset);
308 c_set_disp_reg(par, CARMINE_DISP_REG_L3_DISP_ADR1, soffset);
309 c_set_disp_reg(par, CARMINE_DISP_REG_L4_DISP_ADR1, soffset);
310 c_set_disp_reg(par, CARMINE_DISP_REG_L5_DISP_ADR1, soffset);
311 c_set_disp_reg(par, CARMINE_DISP_REG_L6_DISP_ADR0, soffset);
312 c_set_disp_reg(par, CARMINE_DISP_REG_L7_DISP_ADR0, soffset);
315 c_set_disp_reg(par, CARMINE_DISP_REG_L0_DISP_POS, 0);
316 c_set_disp_reg(par, CARMINE_DISP_REG_L2_DISP_POS, 0);
317 c_set_disp_reg(par, CARMINE_DISP_REG_L3_DISP_POS, 0);
318 c_set_disp_reg(par, CARMINE_DISP_REG_L4_DISP_POS, 0);
319 c_set_disp_reg(par, CARMINE_DISP_REG_L5_DISP_POS, 0);
320 c_set_disp_reg(par, CARMINE_DISP_REG_L6_DISP_POS, 0);
321 c_set_disp_reg(par, CARMINE_DISP_REG_L7_DISP_POS, 0);
324 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L0, 0);
325 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L1, 0);
326 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L2, 0);
327 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L3, 0);
328 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L4, 0);
329 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L5, 0);
330 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L6, 0);
331 c_set_disp_reg(par, CARMINE_DISP_REG_BLEND_MODE_L7, 0);
334 c_set_disp_reg(par, CARMINE_DISP_REG_L0_TRANS, 0);
335 c_set_disp_reg(par, CARMINE_DISP_REG_L1_TRANS, 0);
336 c_set_disp_reg(par, CARMINE_DISP_REG_L2_TRANS, 0);
337 c_set_disp_reg(par, CARMINE_DISP_REG_L3_TRANS, 0);
338 c_set_disp_reg(par, CARMINE_DISP_REG_L4_TRANS, 0);
339 c_set_disp_reg(par, CARMINE_DISP_REG_L5_TRANS, 0);
340 c_set_disp_reg(par, CARMINE_DISP_REG_L6_TRANS, 0);
341 c_set_disp_reg(par, CARMINE_DISP_REG_L7_TRANS, 0);
344 c_set_disp_reg(par, CARMINE_DISP_REG_L0RM, 0);
345 c_set_disp_reg(par, CARMINE_DISP_REG_L2RM, 0);
346 c_set_disp_reg(par, CARMINE_DISP_REG_L3RM, 0);
347 c_set_disp_reg(par, CARMINE_DISP_REG_L4RM, 0);
348 c_set_disp_reg(par, CARMINE_DISP_REG_L5RM, 0);
349 c_set_disp_reg(par, CARMINE_DISP_REG_L6RM, 0);
350 c_set_disp_reg(par, CARMINE_DISP_REG_L7RM, 0);
352 c_set_disp_reg(par, CARMINE_DISP_REG_L0PX, 0);
353 c_set_disp_reg(par, CARMINE_DISP_REG_L2PX, 0);
354 c_set_disp_reg(par, CARMINE_DISP_REG_L3PX, 0);
355 c_set_disp_reg(par, CARMINE_DISP_REG_L4PX, 0);
356 c_set_disp_reg(par, CARMINE_DISP_REG_L5PX, 0);
357 c_set_disp_reg(par, CARMINE_DISP_REG_L6PX, 0);
358 c_set_disp_reg(par, CARMINE_DISP_REG_L7PX, 0);
360 c_set_disp_reg(par, CARMINE_DISP_REG_L0PY, 0);
361 c_set_disp_reg(par, CARMINE_DISP_REG_L2PY, 0);
362 c_set_disp_reg(par, CARMINE_DISP_REG_L3PY, 0);
363 c_set_disp_reg(par, CARMINE_DISP_REG_L4PY, 0);
364 c_set_disp_reg(par, CARMINE_DISP_REG_L5PY, 0);
365 c_set_disp_reg(par, CARMINE_DISP_REG_L6PY, 0);
366 c_set_disp_reg(par, CARMINE_DISP_REG_L7PY, 0);
369 static void set_display_parameters(struct carmine_fb *par)
378 hdp = par->res->hdp - 1;
379 vdp = par->res->vdp - 1;
380 htp = par->res->htp - 1;
381 hsp = par->res->hsp - 1;
382 hsw = par->res->hsw - 1;
383 vtr = par->res->vtr - 1;
384 vsp = par->res->vsp - 1;
385 vsw = par->res->vsw - 1;
387 c_set_disp_reg(par, CARMINE_DISP_REG_H_TOTAL,
389 c_set_disp_reg(par, CARMINE_DISP_REG_H_PERIOD,
391 c_set_disp_reg(par, CARMINE_DISP_REG_V_H_W_H_POS,
395 c_set_disp_reg(par, CARMINE_DISP_REG_V_TOTAL,
397 c_set_disp_reg(par, CARMINE_DISP_REG_V_PERIOD_POS,
401 mode = c_get_disp_reg(par, CARMINE_DISP_REG_DCM1);
403 (par->res->disp_mode & CARMINE_DISP_DCM_MASK);
406 c_set_disp_reg(par, CARMINE_DISP_REG_DCM1, mode);
411 struct carmine_fb *par = info->par;
418 par->new_mode = ret;
419 if (par->cur_mode != par->new_mode) {
421 par->cur_mode = par->new_mode;
422 par->res = &car_modes[par->new_mode];
424 carmine_init_display_param(par);
425 set_display_parameters(par);
545 struct carmine_fb *par;
547 info = framebuffer_alloc(sizeof *par, device);
551 par = info->par;
552 par->display_reg = regs;
553 par->smem_offset = smem_offset;
560 info->pseudo_palette = par->pseudo_palette;
569 par->cur_mode = par->new_mode = ~0;