Lines Matching +full:fimc +full:- +full:is
1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * Samsung EXYNOS4x12 FIMC-IS (Imaging Subsystem) driver
21 #include <media/videobuf2-v4l2.h>
22 #include <media/v4l2-ctrls.h>
24 #include "fimc-isp.h"
25 #include "fimc-is-command.h"
26 #include "fimc-is-sensor.h"
27 #include "fimc-is-param.h"
28 #include "fimc-is-regs.h"
30 #define FIMC_IS_DRV_NAME "exynos4-fimc-is"
42 #define FIMC_IS_CPU_BASE_MASK ((1 << 26) - 1)
59 #define FIMC_IS_FW_ADDR_MASK ((1 << 26) - 1)
231 * struct fimc_is - fimc-is data structure
232 * @pdev: pointer to FIMC-IS platform device
234 * @fw: data structure describing the FIMC-IS firmware binary
235 * @memory: memory region assigned for the FIMC-IS (firmware)
237 * @sensor: fimc-is sensor subdevice array
242 * @clocks: FIMC-LITE gate clock
245 * @irq: FIMC-IS interrupt
250 * @i2h_cmd: FIMC-IS to the host (CPU) mailbox command data structure
251 * @h2i_cmd: the host (CPU) to FIMC-IS mailbox command data structure
257 * @is_shared_region: pointer to the IS shared region data structure
307 static inline struct chain_config *__get_curr_is_config(struct fimc_is *is) in __get_curr_is_config() argument
309 return &is->config[is->config_index]; in __get_curr_is_config()
317 static inline void fimc_is_set_param_bit(struct fimc_is *is, int num) in fimc_is_set_param_bit() argument
319 struct chain_config *cfg = &is->config[is->config_index]; in fimc_is_set_param_bit()
321 set_bit(num, &cfg->p_region_index[0]); in fimc_is_set_param_bit()
324 static inline void fimc_is_set_param_ctrl_cmd(struct fimc_is *is, int cmd) in fimc_is_set_param_ctrl_cmd() argument
326 is->is_p_region->parameter.isp.control.cmd = cmd; in fimc_is_set_param_ctrl_cmd()
329 static inline void mcuctl_write(u32 v, struct fimc_is *is, unsigned int offset) in mcuctl_write() argument
331 writel(v, is->regs + offset); in mcuctl_write()
334 static inline u32 mcuctl_read(struct fimc_is *is, unsigned int offset) in mcuctl_read() argument
336 return readl(is->regs + offset); in mcuctl_read()
339 static inline void pmuisp_write(u32 v, struct fimc_is *is, unsigned int offset) in pmuisp_write() argument
341 writel(v, is->pmu_regs + offset); in pmuisp_write()
344 static inline u32 pmuisp_read(struct fimc_is *is, unsigned int offset) in pmuisp_read() argument
346 return readl(is->pmu_regs + offset); in pmuisp_read()
349 int fimc_is_wait_event(struct fimc_is *is, unsigned long bit,
351 int fimc_is_cpu_set_power(struct fimc_is *is, int on);
352 int fimc_is_start_firmware(struct fimc_is *is);
353 int fimc_is_hw_initialize(struct fimc_is *is);