Lines Matching full:hal
7 #include "hal/cam_ll.h"
8 #include "hal/cam_hal.h"
14 * @param hal CAM object data pointer
19 static void cam_hal_set_line_int_num(cam_hal_context_t *hal, uint32_t num) in cam_hal_set_line_int_num() argument
22 cam_ll_enable_hs_line_int(hal->hw, 1); in cam_hal_set_line_int_num()
23 cam_ll_set_line_int_num(hal->hw, num); in cam_hal_set_line_int_num()
25 cam_ll_enable_hs_line_int(hal->hw, 0); in cam_hal_set_line_int_num()
26 cam_ll_set_line_int_num(hal->hw, 0); in cam_hal_set_line_int_num()
33 * @param hal CAM object data pointer
38 static void cam_hal_set_vsync_filter_num(cam_hal_context_t *hal, uint32_t num) in cam_hal_set_vsync_filter_num() argument
41 cam_ll_enable_vsync_filter(hal->hw, 1); in cam_hal_set_vsync_filter_num()
42 cam_ll_set_vsync_filter_thres(hal->hw, num); in cam_hal_set_vsync_filter_num()
44 cam_ll_enable_vsync_filter(hal->hw, 0); in cam_hal_set_vsync_filter_num()
45 cam_ll_set_vsync_filter_thres(hal->hw, 0); in cam_hal_set_vsync_filter_num()
52 * @param hal CAM object data pointer
57 void cam_hal_init(cam_hal_context_t *hal, const cam_hal_config_t *config) in cam_hal_init() argument
59 memset(hal, 0, sizeof(cam_hal_context_t)); in cam_hal_init()
61 hal->hw = CAM_LL_GET_HW(0); in cam_hal_init()
63 cam_ll_enable_stop_signal(hal->hw, 0); in cam_hal_init()
64 cam_ll_swap_dma_data_byte_order(hal->hw, config->byte_swap_en); in cam_hal_init()
65 cam_ll_reverse_dma_data_bit_order(hal->hw, 0); in cam_hal_init()
66 cam_ll_enable_vsync_generate_eof(hal->hw, 1); in cam_hal_init()
68 cam_hal_set_line_int_num(hal, 0); in cam_hal_init()
69 cam_hal_set_vsync_filter_num(hal, 0); in cam_hal_init()
71 cam_ll_enable_invert_pclk(hal->hw, 0); in cam_hal_init()
72 cam_ll_set_input_data_width(hal->hw, 8); in cam_hal_init()
73 cam_ll_enable_invert_de(hal->hw, 0); in cam_hal_init()
74 cam_ll_enable_invert_vsync(hal->hw, 0); in cam_hal_init()
75 cam_ll_enable_invert_hsync(hal->hw, 0); in cam_hal_init()
76 cam_ll_set_vh_de_mode(hal->hw, 0); // Disable vh_de mode default in cam_hal_init()
77 cam_ll_enable_rgb_yuv_convert(hal->hw, 0); // bypass conv module default in cam_hal_init()
84 * @param hal CAM object data pointer
88 void cam_hal_deinit(cam_hal_context_t *hal) in cam_hal_deinit() argument
90 cam_ll_stop(hal->hw); in cam_hal_deinit()
91 cam_ll_reset(hal->hw); in cam_hal_deinit()
92 cam_ll_fifo_reset(hal->hw); in cam_hal_deinit()
98 * @param hal CAM object data pointer
102 void cam_hal_start_streaming(cam_hal_context_t *hal) in cam_hal_start_streaming() argument
104 cam_ll_reset(hal->hw); in cam_hal_start_streaming()
105 cam_ll_fifo_reset(hal->hw); in cam_hal_start_streaming()
107 cam_ll_start(hal->hw); in cam_hal_start_streaming()
113 * @param hal CAM object data pointer
117 void cam_hal_stop_streaming(cam_hal_context_t *hal) in cam_hal_stop_streaming() argument
119 cam_ll_stop(hal->hw); in cam_hal_stop_streaming()