Lines Matching refs:ctx
44 static u32 fimc_hw_get_in_flip(struct fimc_ctx *ctx) in fimc_hw_get_in_flip() argument
48 if (ctx->hflip) in fimc_hw_get_in_flip()
50 if (ctx->vflip) in fimc_hw_get_in_flip()
53 if (ctx->rotation <= 90) in fimc_hw_get_in_flip()
59 static u32 fimc_hw_get_target_flip(struct fimc_ctx *ctx) in fimc_hw_get_target_flip() argument
63 if (ctx->hflip) in fimc_hw_get_target_flip()
65 if (ctx->vflip) in fimc_hw_get_target_flip()
68 if (ctx->rotation <= 90) in fimc_hw_get_target_flip()
74 void fimc_hw_set_rotation(struct fimc_ctx *ctx) in fimc_hw_set_rotation() argument
77 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_rotation()
88 if (ctx->rotation == 90 || ctx->rotation == 270) { in fimc_hw_set_rotation()
89 if (ctx->out_path == FIMC_IO_LCDFIFO) in fimc_hw_set_rotation()
95 if (ctx->out_path == FIMC_IO_DMA) { in fimc_hw_set_rotation()
96 cfg |= fimc_hw_get_target_flip(ctx); in fimc_hw_set_rotation()
102 flip |= fimc_hw_get_in_flip(ctx); in fimc_hw_set_rotation()
107 void fimc_hw_set_target_format(struct fimc_ctx *ctx) in fimc_hw_set_target_format() argument
110 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_target_format()
111 struct fimc_frame *frame = &ctx->d_frame; in fimc_hw_set_target_format()
137 if (ctx->rotation == 90 || ctx->rotation == 270) in fimc_hw_set_target_format()
150 static void fimc_hw_set_out_dma_size(struct fimc_ctx *ctx) in fimc_hw_set_out_dma_size() argument
152 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_out_dma_size()
153 struct fimc_frame *frame = &ctx->d_frame; in fimc_hw_set_out_dma_size()
169 void fimc_hw_set_out_dma(struct fimc_ctx *ctx) in fimc_hw_set_out_dma() argument
171 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_out_dma()
172 struct fimc_frame *frame = &ctx->d_frame; in fimc_hw_set_out_dma()
187 fimc_hw_set_out_dma_size(ctx); in fimc_hw_set_out_dma()
198 cfg |= ctx->out_order_1p; in fimc_hw_set_out_dma()
200 cfg |= ctx->out_order_2p | FIMC_REG_CIOCTRL_YCBCR_2PLANE; in fimc_hw_set_out_dma()
234 void fimc_hw_set_prescaler(struct fimc_ctx *ctx) in fimc_hw_set_prescaler() argument
236 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_prescaler()
237 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_prescaler()
250 static void fimc_hw_set_scaler(struct fimc_ctx *ctx) in fimc_hw_set_scaler() argument
252 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_scaler()
253 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_scaler()
254 struct fimc_frame *src_frame = &ctx->s_frame; in fimc_hw_set_scaler()
255 struct fimc_frame *dst_frame = &ctx->d_frame; in fimc_hw_set_scaler()
265 if (!(ctx->flags & FIMC_COLOR_RANGE_NARROW)) in fimc_hw_set_scaler()
281 if (ctx->in_path == FIMC_IO_DMA) { in fimc_hw_set_scaler()
295 if (ctx->out_path == FIMC_IO_DMA) { in fimc_hw_set_scaler()
307 if (ctx->flags & FIMC_SCAN_MODE_INTERLACED) in fimc_hw_set_scaler()
314 void fimc_hw_set_mainscaler(struct fimc_ctx *ctx) in fimc_hw_set_mainscaler() argument
316 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_mainscaler()
318 struct fimc_scaler *sc = &ctx->scaler; in fimc_hw_set_mainscaler()
324 fimc_hw_set_scaler(ctx); in fimc_hw_set_mainscaler()
349 void fimc_hw_enable_capture(struct fimc_ctx *ctx) in fimc_hw_enable_capture() argument
351 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_enable_capture()
357 if (ctx->scaler.enabled) in fimc_hw_enable_capture()
374 void fimc_hw_set_effect(struct fimc_ctx *ctx) in fimc_hw_set_effect() argument
376 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_effect()
377 struct fimc_effect *effect = &ctx->effect; in fimc_hw_set_effect()
391 void fimc_hw_set_rgb_alpha(struct fimc_ctx *ctx) in fimc_hw_set_rgb_alpha() argument
393 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_rgb_alpha()
394 struct fimc_frame *frame = &ctx->d_frame; in fimc_hw_set_rgb_alpha()
406 static void fimc_hw_set_in_dma_size(struct fimc_ctx *ctx) in fimc_hw_set_in_dma_size() argument
408 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_in_dma_size()
409 struct fimc_frame *frame = &ctx->s_frame; in fimc_hw_set_in_dma_size()
413 if (FIMC_IO_LCDFIFO == ctx->out_path) in fimc_hw_set_in_dma_size()
423 void fimc_hw_set_in_dma(struct fimc_ctx *ctx) in fimc_hw_set_in_dma() argument
425 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_in_dma()
426 struct fimc_frame *frame = &ctx->s_frame; in fimc_hw_set_in_dma()
441 fimc_hw_set_in_dma_size(ctx); in fimc_hw_set_in_dma()
444 fimc_hw_en_autoload(dev, ctx->out_path == FIMC_IO_LCDFIFO); in fimc_hw_set_in_dma()
467 cfg |= ctx->in_order_2p | FIMC_REG_MSCTRL_C_INT_IN_2PLANE; in fimc_hw_set_in_dma()
474 cfg |= ctx->in_order_1p in fimc_hw_set_in_dma()
480 cfg |= ctx->in_order_2p in fimc_hw_set_in_dma()
496 if (tiled_fmt(ctx->s_frame.fmt)) in fimc_hw_set_in_dma()
499 if (tiled_fmt(ctx->d_frame.fmt)) in fimc_hw_set_in_dma()
506 void fimc_hw_set_input_path(struct fimc_ctx *ctx) in fimc_hw_set_input_path() argument
508 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_input_path()
513 if (ctx->in_path == FIMC_IO_DMA) in fimc_hw_set_input_path()
521 void fimc_hw_set_output_path(struct fimc_ctx *ctx) in fimc_hw_set_output_path() argument
523 struct fimc_dev *dev = ctx->fimc_dev; in fimc_hw_set_output_path()
527 if (ctx->out_path == FIMC_IO_LCDFIFO) in fimc_hw_set_output_path()
605 struct fimc_frame *f = &vc->ctx->s_frame; in fimc_hw_set_camera_source()
790 void fimc_activate_capture(struct fimc_ctx *ctx) in fimc_activate_capture() argument
792 fimc_hw_enable_scaler(ctx->fimc_dev, ctx->scaler.enabled); in fimc_activate_capture()
793 fimc_hw_enable_capture(ctx); in fimc_activate_capture()