static inline void s3c_rotator_set_source(ro_params *params) { __raw_writel(S3C_ROT_SRC_HEIGHT(params->src_height) | S3C_ROT_SRC_WIDTH( params->src_width) , s3c_rotator_base + S3C_ROTATOR_SRCSIZEREG); __raw_writel(params->src_addr_rgb_y, s3c_rotator_base + S3C_ROTATOR_SRCADDRREG0); __raw_writel(params->src_addr_cb, s3c_rotator_base + S3C_ROTATOR_SRCADDRREG1); __raw_writel(params->src_addr_cr, s3c_rotator_base + S3C_ROTATOR_SRCADDRREG2); }
void s3c_rotator_set_source(ro_params *params) { /* address */ __raw_writel(params->src_addr_rgb_y, s3c_rotator_base + S3C_ROTATOR_SRCBASEADDR0); __raw_writel(params->src_addr_cb, s3c_rotator_base + S3C_ROTATOR_SRCBASEADDR1); __raw_writel(params->src_addr_cr, s3c_rotator_base + S3C_ROTATOR_SRCBASEADDR2); /* src size */ __raw_writel(S3C_ROT_SRC_HEIGHT(params->src_height) | S3C_ROT_SRC_WIDTH(params->src_width), s3c_rotator_base + S3C_ROTATOR_SRCIMGSIZE); /* src window offset */ __raw_writel(S3C_ROT_SRC_X_OFFSET(params->src_window_offset_x) | S3C_ROT_SRC_Y_OFFSET(params->src_window_offset_y), s3c_rotator_base + S3C_ROTATOR_SRC_XY); /* src window size */ __raw_writel(S3C_ROT_SRC_HEIGHT(params->src_window_height) | S3C_ROT_SRC_WIDTH(params->src_window_width), s3c_rotator_base + S3C_ROTATOR_SRCROTSIZE); }
void s3c_rotator_set_dest(ro_params *params) { /* address */ __raw_writel(params->dst_addr_rgb_y, s3c_rotator_base + S3C_ROTATOR_DSTBASEADDR0); __raw_writel(params->dst_addr_cb, s3c_rotator_base + S3C_ROTATOR_DSTBASEADDR1); __raw_writel(params->dst_addr_cr, s3c_rotator_base + S3C_ROTATOR_DSTBASEADDR2); /* dst window offset */ __raw_writel(S3C_ROT_SRC_X_OFFSET(params->dst_window_offset_x) | S3C_ROT_SRC_Y_OFFSET(params->dst_window_offset_y), s3c_rotator_base + S3C_ROTATOR_DST_XY); /* dst window size */ __raw_writel(S3C_ROT_SRC_HEIGHT(params->dst_window_height) | S3C_ROT_SRC_WIDTH(params->dst_window_width), s3c_rotator_base + S3C_ROTATOR_DSTIMGSIZE); }