Home
last modified time | relevance | path

Searched defs:isp (Results 1 – 25 of 81) sorted by relevance

1234

/drivers/media/platform/ti/omap3isp/
A Disp.c147 void omap3isp_flush(struct isp_device *isp) in omap3isp_flush()
287 struct isp_device *isp = data; in isp_xclk_src_get() local
295 static int isp_xclk_init(struct isp_device *isp) in isp_xclk_init()
527 static void isp_isr_sbl(struct isp_device *isp) in isp_isr_sbl()
598 struct isp_device *isp = _isp; in isp_isr() local
674 struct isp_device *isp = pipe->output->isp; in isp_pipeline_enable() local
757 int(*busy)(struct isp_device *isp)) in isp_pipeline_wait()
783 struct isp_device *isp = pipe->output->isp; in isp_pipeline_disable() local
1032 static int isp_reset(struct isp_device *isp) in isp_reset()
1469 void omap3isp_put(struct isp_device *isp) in omap3isp_put()
[all …]
A Disppreview.c152 struct isp_device *isp = to_isp_device(prev); in preview_config_luma_enhancement() local
170 struct isp_device *isp = to_isp_device(prev); in preview_enable_luma_enhancement() local
185 struct isp_device *isp = to_isp_device(prev); in preview_enable_invalaw() local
201 struct isp_device *isp = to_isp_device(prev); in preview_config_hmed() local
215 struct isp_device *isp = to_isp_device(prev); in preview_enable_hmed() local
244 struct isp_device *isp = to_isp_device(prev); in preview_config_cfa() local
272 struct isp_device *isp = to_isp_device(prev); in preview_config_chroma_suppression() local
287 struct isp_device *isp = to_isp_device(prev); in preview_enable_chroma_suppression() local
306 struct isp_device *isp = to_isp_device(prev); in preview_config_whitebalance() local
345 struct isp_device *isp = to_isp_device(prev); in preview_config_blkadj() local
[all …]
A Dispccdc.c62 #define CCDC_PRINT_REGISTER(isp, name)\ argument
68 struct isp_device *isp = to_isp_device(ccdc); in ccdc_print_status() local
115 struct isp_device *isp = to_isp_device(ccdc); in omap3isp_ccdc_busy() local
135 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_validate_config() local
210 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_setup_regs() local
233 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_wait_prefetch() local
262 struct isp_device *isp = to_isp_device(ccdc); in __ccdc_lsc_enable() local
297 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_busy() local
335 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_error_handler() local
353 struct isp_device *isp = to_isp_device(ccdc); in ccdc_lsc_free_request() local
[all …]
A Dispcsi2.c27 static void csi2_if_enable(struct isp_device *isp, in csi2_if_enable()
219 struct isp_device *isp = csi2->isp; in csi2_set_outaddr() local
482 struct isp_device *isp = csi2->isp; in omap3isp_csi2_reset() local
550 struct isp_device *isp = csi2->isp; in csi2_configure() local
631 #define CSI2_PRINT_REGISTER(isp, regs, name)\ argument
637 struct isp_device *isp = csi2->isp; in csi2_print_status() local
679 struct isp_device *isp = csi2->isp; in csi2_isr_buffer() local
700 struct isp_device *isp = csi2->isp; in csi2_isr_ctx() local
741 struct isp_device *isp = csi2->isp; in omap3isp_csi2_isr() local
802 struct isp_device *isp = video->isp; in csi2_queue() local
[all …]
A Dispresizer.c154 struct isp_device *isp = to_isp_device(res); in resizer_set_filters() local
185 struct isp_device *isp = to_isp_device(res); in resizer_set_bilinear() local
202 struct isp_device *isp = to_isp_device(res); in resizer_set_ycpos() local
229 struct isp_device *isp = to_isp_device(res); in resizer_set_phase() local
265 struct isp_device *isp = to_isp_device(res); in resizer_set_luma() local
291 struct isp_device *isp = to_isp_device(res); in resizer_set_source() local
311 struct isp_device *isp = to_isp_device(res); in resizer_set_ratio() local
355 struct isp_device *isp = to_isp_device(res); in resizer_set_output_size() local
376 struct isp_device *isp = to_isp_device(res); in resizer_set_output_offset() local
398 struct isp_device *isp = to_isp_device(res); in resizer_set_start() local
[all …]
A Dispccp2.c64 #define CCP2_PRINT_REGISTER(isp, name)\ argument
70 struct isp_device *isp = to_isp_device(ccp2); in ccp2_print_status() local
112 struct isp_device *isp = to_isp_device(ccp2); in ccp2_reset() local
135 struct isp_device *isp = to_isp_device(ccp2); in ccp2_pwr_cfg() local
150 struct isp_device *isp = to_isp_device(ccp2); in ccp2_if_enable() local
184 struct isp_device *isp = to_isp_device(ccp2); in ccp2_mem_enable() local
210 struct isp_device *isp = to_isp_device(ccp2); in ccp2_phyif_config() local
255 struct isp_device *isp = to_isp_device(ccp2); in ccp2_vp_config() local
288 struct isp_device *isp = to_isp_device(ccp2); in ccp2_lcx_config() local
389 struct isp_device *isp = to_isp_device(ccp2); in ccp2_adjust_bandwidth() local
[all …]
/drivers/media/platform/amlogic/c3/isp/
A Dc3-isp-dev.c21 u32 c3_isp_read(struct c3_isp_device *isp, u32 reg) in c3_isp_read()
26 void c3_isp_write(struct c3_isp_device *isp, u32 reg, u32 val) in c3_isp_write()
47 struct c3_isp_device *isp = dev_get_drvdata(dev); in c3_isp_runtime_suspend() local
57 struct c3_isp_device *isp = dev_get_drvdata(dev); in c3_isp_runtime_resume() local
72 struct c3_isp_device *isp = dev; in c3_isp_irq_handler() local
97 struct c3_isp_device *isp = in c3_isp_notify_bound() local
108 struct c3_isp_device *isp = in c3_isp_notify_complete() local
208 static int c3_isp_create_links(struct c3_isp_device *isp) in c3_isp_create_links()
301 static int c3_isp_get_clocks(struct c3_isp_device *isp) in c3_isp_get_clocks()
314 struct c3_isp_device *isp; in c3_isp_probe() local
[all …]
A Dc3-isp-params.c98 static void c3_isp_params_awb_wt(struct c3_isp_device *isp, in c3_isp_params_awb_wt()
137 static void c3_isp_params_awb_cood(struct c3_isp_device *isp, in c3_isp_params_awb_cood()
214 static void c3_isp_params_ae_wt(struct c3_isp_device *isp, in c3_isp_params_ae_wt()
254 static void c3_isp_params_ae_cood(struct c3_isp_device *isp, in c3_isp_params_ae_cood()
312 static void c3_isp_params_af_cood(struct c3_isp_device *isp, in c3_isp_params_af_cood()
403 static void c3_isp_params_cfg_ccm(struct c3_isp_device *isp, in c3_isp_params_cfg_ccm()
452 static void c3_isp_params_cfg_csc(struct c3_isp_device *isp, in c3_isp_params_cfg_csc()
584 void c3_isp_params_pre_cfg(struct c3_isp_device *isp) in c3_isp_params_pre_cfg()
913 int c3_isp_params_register(struct c3_isp_device *isp) in c3_isp_params_register()
978 void c3_isp_params_unregister(struct c3_isp_device *isp) in c3_isp_params_unregister()
[all …]
A Dc3-isp-core.c168 static void c3_isp_core_enable(struct c3_isp_device *isp) in c3_isp_core_enable()
180 static void c3_isp_core_disable(struct c3_isp_device *isp) in c3_isp_core_disable()
193 static void c3_isp_core_lswb_ofst(struct c3_isp_device *isp, in c3_isp_core_lswb_ofst()
219 static void c3_isp_core_3a_ofst(struct c3_isp_device *isp, in c3_isp_core_3a_ofst()
239 static void c3_isp_core_dms_ofst(struct c3_isp_device *isp, in c3_isp_core_dms_ofst()
250 static void c3_isp_core_cfg_format(struct c3_isp_device *isp, in c3_isp_core_cfg_format()
576 void c3_isp_core_queue_sof(struct c3_isp_device *isp) in c3_isp_core_queue_sof()
586 int c3_isp_core_register(struct c3_isp_device *isp) in c3_isp_core_register()
633 void c3_isp_core_unregister(struct c3_isp_device *isp) in c3_isp_core_unregister()
/drivers/staging/media/ipu7/
A Dipu7-buttress.c66 int ipu_buttress_ipc_reset(struct ipu7_device *isp, in ipu_buttress_ipc_reset()
190 ipu_buttress_ipc_validity_open(struct ipu7_device *isp, in ipu_buttress_ipc_validity_open()
336 struct ipu7_device *isp = isp_ptr; in ipu_buttress_isr() local
429 struct ipu7_device *isp = isp_ptr; in ipu_buttress_isr_threaded() local
452 struct ipu7_device *isp = to_ipu7_bus_device(dev)->isp; in isys_d2d_power() local
479 struct ipu7_device *isp = to_ipu7_bus_device(dev)->isp; in isys_nde_control() local
736 bool ipu_buttress_auth_done(struct ipu7_device *isp) in ipu_buttress_auth_done()
828 int ipu_buttress_authenticate(struct ipu7_device *isp) in ipu_buttress_authenticate()
1120 void ipu_buttress_restore(struct ipu7_device *isp) in ipu_buttress_restore()
1129 int ipu_buttress_init(struct ipu7_device *isp) in ipu_buttress_init()
[all …]
A Dipu7.c2273 struct ipu7_device *isp = adev->isp; in ipu7_map_fw_code_region() local
2349 struct ipu7_device *isp = sys->isp; in ipu7_init_fw_code_region_by_sys() local
2386 static int ipu7_init_fw_code_region(struct ipu7_device *isp) in ipu7_init_fw_code_region()
2427 struct ipu7_device *isp; in ipu7_pci_probe() local
2641 struct ipu7_device *isp = pci_get_drvdata(pdev); in ipu7_pci_remove() local
2666 struct ipu7_device *isp = pci_get_drvdata(pdev); in ipu7_pci_reset_prepare() local
2674 struct ipu7_device *isp = pci_get_drvdata(pdev); in ipu7_pci_reset_done() local
2698 struct ipu7_device *isp = pci_get_drvdata(pdev); in ipu7_resume() local
2730 struct ipu7_device *isp = pci_get_drvdata(pdev); in ipu7_runtime_resume() local
/drivers/staging/media/atomisp/pci/
A Datomisp_v4l2.c578 struct atomisp_device *isp = dev_get_drvdata(dev); in atomisp_power_off() local
609 struct atomisp_device *isp = (struct atomisp_device *) in atomisp_power_on() local
634 struct atomisp_device *isp = (struct atomisp_device *) in atomisp_suspend() local
657 struct atomisp_device *isp = dev_get_drvdata(dev); in atomisp_resume() local
670 int atomisp_csi_lane_config(struct atomisp_device *isp) in atomisp_csi_lane_config()
764 static int atomisp_subdev_probe(struct atomisp_device *isp) in atomisp_subdev_probe()
1112 atomisp_load_firmware(struct atomisp_device *isp) in atomisp_load_firmware()
1152 static void atomisp_pm_init(struct atomisp_device *isp) in atomisp_pm_init()
1179 static void atomisp_pm_uninit(struct atomisp_device *isp) in atomisp_pm_uninit()
1191 struct atomisp_device *isp; in atomisp_pci_probe() local
[all …]
A Datomisp_compat_css20.c176 struct atomisp_device *isp = asd->isp; in __dump_pipe_config() local
258 struct atomisp_device *isp = asd->isp; in __dump_stream_config() local
377 struct atomisp_device *isp = asd->isp; in __destroy_stream() local
483 struct atomisp_device *isp = asd->isp; in __destroy_stream_pipes() local
504 struct atomisp_device *isp = asd->isp; in __destroy_pipes() local
538 struct atomisp_device *isp = asd->isp; in __apply_additional_pipe_config() local
637 struct atomisp_device *isp = asd->isp; in __create_pipe() local
901 struct atomisp_device *isp = asd->isp; in atomisp_q_metadata_buffer_to_css() local
921 struct atomisp_device *isp = asd->isp; in atomisp_q_s3a_buffer_to_css() local
942 struct atomisp_device *isp = asd->isp; in atomisp_q_dis_buffer_to_css() local
[all …]
A Datomisp_ioctl.c367 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_querycap() local
383 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_enum_input() local
429 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_s_input() local
531 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_enum_framesizes() local
567 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_enum_frameintervals() local
601 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_enum_fmt_cap() local
655 struct atomisp_device *isp = video_get_drvdata(vdev); in atomisp_try_fmt_cap() local
684 struct atomisp_device *isp = asd->isp; in atomisp_alloc_css_stat_bufs() local
863 struct atomisp_device *isp = asd->isp; in atomisp_stop_stream() local
919 struct atomisp_device *isp = asd->isp; in atomisp_start_streaming() local
[all …]
A Datomisp_cmd.c85 struct atomisp_device *isp = asd->isp; in atomisp_get_sensor_fps() local
390 struct atomisp_device *isp) in print_csi_rx_errors()
660 struct atomisp_device *isp = asd->isp; in atomisp_buf_done() local
951 struct atomisp_device *isp = isp_ptr; in atomisp_isr_thread() local
1377 struct atomisp_device *isp = asd->isp; in atomisp_update_grid_info() local
1445 struct atomisp_device *isp = asd->isp; in atomisp_gdc_cac_table() local
1677 struct atomisp_device *isp = asd->isp; in atomisp_3a_stat() local
3119 struct atomisp_device *isp = asd->isp; in atomisp_color_effect() local
3447 struct atomisp_device *isp = asd->isp; in atomisp_3a_config_param() local
3474 struct atomisp_device *isp = asd->isp; in atomisp_digital_zoom() local
[all …]
/drivers/media/pci/intel/ipu6/
A Dipu6-buttress.c63 int ipu6_buttress_ipc_reset(struct ipu6_device *isp, in ipu6_buttress_ipc_reset()
187 ipu6_buttress_ipc_validity_open(struct ipu6_device *isp, in ipu6_buttress_ipc_validity_open()
305 ipu6_buttress_ipc_send(struct ipu6_device *isp, in ipu6_buttress_ipc_send()
337 struct ipu6_device *isp = isp_ptr; in ipu6_buttress_isr() local
425 struct ipu6_device *isp = isp_ptr; in ipu6_buttress_isr_threaded() local
449 struct ipu6_device *isp = to_ipu6_bus_device(dev)->isp; in ipu6_buttress_power() local
495 bool ipu6_buttress_auth_done(struct ipu6_device *isp) in ipu6_buttress_auth_done()
612 int ipu6_buttress_authenticate(struct ipu6_device *isp) in ipu6_buttress_authenticate()
814 void ipu6_buttress_restore(struct ipu6_device *isp) in ipu6_buttress_restore()
823 int ipu6_buttress_init(struct ipu6_device *isp) in ipu6_buttress_init()
[all …]
A Dipu6-cpd.c66 ipu6_cpd_metadata_get_cmpnt(struct ipu6_device *isp, const void *metadata, in ipu6_cpd_metadata_get_cmpnt()
83 static u32 ipu6_cpd_metadata_cmpnt_version(struct ipu6_device *isp, in ipu6_cpd_metadata_cmpnt_version()
96 static int ipu6_cpd_metadata_get_cmpnt_id(struct ipu6_device *isp, in ipu6_cpd_metadata_get_cmpnt_id()
109 static int ipu6_cpd_parse_module_data(struct ipu6_device *isp, in ipu6_cpd_parse_module_data()
166 struct ipu6_device *isp = adev->isp; in ipu6_cpd_create_pkg_dir() local
228 static int ipu6_cpd_validate_cpd(struct ipu6_device *isp, const void *cpd, in ipu6_cpd_validate_cpd()
264 static int ipu6_cpd_validate_moduledata(struct ipu6_device *isp, in ipu6_cpd_validate_moduledata()
290 static int ipu6_cpd_validate_metadata(struct ipu6_device *isp, in ipu6_cpd_validate_metadata()
319 int ipu6_cpd_validate_cpd_file(struct ipu6_device *isp, const void *cpd_file, in ipu6_cpd_validate_cpd_file()
/drivers/media/platform/samsung/exynos4-is/
A Dfimc-isp-video.c42 struct fimc_isp *isp = vb2_get_drv_priv(vq); in isp_video_capture_queue_setup() local
79 struct fimc_isp *isp = vb2_get_drv_priv(q); in isp_video_capture_start_streaming() local
121 struct fimc_isp *isp = vb2_get_drv_priv(q); in isp_video_capture_stop_streaming() local
264 struct fimc_isp *isp = video_drvdata(file); in isp_video_open() local
302 struct fimc_isp *isp = video_drvdata(file); in isp_video_release() local
348 struct fimc_isp *isp = video_drvdata(file); in isp_video_querycap() local
374 struct fimc_isp *isp = video_drvdata(file); in isp_video_g_fmt_mplane() local
408 struct fimc_isp *isp = video_drvdata(file); in isp_video_try_fmt_mplane() local
417 struct fimc_isp *isp = video_drvdata(file); in isp_video_s_fmt_mplane() local
493 struct fimc_isp *isp = video_drvdata(file); in isp_video_streamon() local
[all …]
A Dfimc-isp.c125 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_get_fmt() local
158 static void __isp_subdev_try_format(struct fimc_isp *isp, in __isp_subdev_try_format()
197 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_set_fmt() local
254 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_s_stream() local
303 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_s_power() local
394 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_registered() local
410 struct fimc_isp *isp = v4l2_get_subdevdata(sd); in fimc_isp_subdev_unregistered() local
476 struct isp_param *isp = &is->is_p_region->parameter.isp; in __ctrl_set_aewb_lock() local
593 struct fimc_isp *isp = ctrl_to_fimc_isp(ctrl); in fimc_is_s_ctrl() local
691 int fimc_isp_subdev_create(struct fimc_isp *isp) in fimc_isp_subdev_create()
[all …]
A Dfimc-is-param.c210 struct isp_param *isp; in __is_set_frame_size() local
258 struct isp_param *isp; in __is_set_sensor() local
280 struct isp_param *isp; in __is_set_init_isp_aa() local
302 struct isp_param *isp = &is->config[index].isp; in __is_set_isp_flash() local
314 struct isp_param *isp; in __is_set_isp_awb() local
328 struct isp_param *isp; in __is_set_isp_effect() local
341 struct isp_param *isp; in __is_set_isp_iso() local
356 struct isp_param *isp; in __is_set_isp_adjust() local
402 struct isp_param *isp; in __is_set_isp_metering() local
437 struct isp_param *isp; in __is_set_isp_afc() local
[all …]
/drivers/power/supply/
A Disp1704_charger.c61 static inline int isp1704_read(struct isp1704_charger *isp, u32 reg) in isp1704_read()
71 static void isp1704_charger_set_power(struct isp1704_charger *isp, bool on) in isp1704_charger_set_power()
83 static inline int isp1704_charger_type(struct isp1704_charger *isp) in isp1704_charger_type()
123 static inline int isp1704_charger_verify(struct isp1704_charger *isp) in isp1704_charger_verify()
180 static inline int isp1704_charger_detect(struct isp1704_charger *isp) in isp1704_charger_detect()
225 struct isp1704_charger *isp = in isp1704_charger_work() local
296 struct isp1704_charger *isp = in isp1704_notifier_call() local
308 struct isp1704_charger *isp = power_supply_get_drvdata(psy); in isp1704_charger_get_property() local
340 static inline int isp1704_test_ulpi(struct isp1704_charger *isp) in isp1704_test_ulpi()
382 struct isp1704_charger *isp; in isp1704_charger_probe() local
[all …]
/drivers/media/platform/rockchip/rkisp1/
A Drkisp1-isp.c175 static void rkisp1_config_ism(struct rkisp1_isp *isp, in rkisp1_config_ism()
203 static int rkisp1_config_isp(struct rkisp1_isp *isp, in rkisp1_config_isp()
342 static int rkisp1_config_cif(struct rkisp1_isp *isp, in rkisp1_config_cif()
358 static void rkisp1_isp_stop(struct rkisp1_isp *isp) in rkisp1_isp_stop()
431 static int rkisp1_isp_start(struct rkisp1_isp *isp, in rkisp1_isp_start()
520 struct rkisp1_isp *isp = to_rkisp1_isp(sd); in rkisp1_isp_enum_frame_size() local
823 struct rkisp1_isp *isp = to_rkisp1_isp(sd); in rkisp1_isp_set_fmt() local
878 struct rkisp1_isp *isp = to_rkisp1_isp(sd); in rkisp1_isp_set_selection() local
921 struct rkisp1_isp *isp = to_rkisp1_isp(sd); in rkisp1_isp_s_stream() local
1028 struct rkisp1_isp *isp = &rkisp1->isp; in rkisp1_isp_register() local
[all …]
/drivers/media/platform/renesas/rcar-isp/
A Dcsisp.c197 static int risp_power_on(struct rcar_isp *isp) in risp_power_on()
214 static void risp_power_off(struct rcar_isp *isp) in risp_power_off()
282 static void risp_stop(struct rcar_isp *isp) in risp_stop()
296 struct rcar_isp *isp = sd_to_isp(sd); in risp_enable_streams() local
320 struct rcar_isp *isp = sd_to_isp(sd); in risp_disable_streams() local
376 struct rcar_isp *isp = notifier_to_isp(notifier); in risp_notify_bound() local
401 struct rcar_isp *isp = notifier_to_isp(notifier); in risp_notify_unbind() local
413 static int risp_parse_dt(struct rcar_isp *isp) in risp_parse_dt()
465 static int risp_probe_resources(struct rcar_isp *isp, in risp_probe_resources()
499 struct rcar_isp *isp; in risp_probe() local
[all …]
/drivers/gpu/drm/amd/amdgpu/
A Disp_v4_1_1.c67 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_poweroff() local
75 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_poweron() local
84 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_set_performance_state() local
122 struct amdgpu_isp *isp = container_of(gpd, struct amdgpu_isp, ispgpd); in isp_genpd_add_device() local
155 struct amdgpu_isp *isp = container_of(gpd, struct amdgpu_isp, ispgpd); in isp_genpd_remove_device() local
184 static int isp_v4_1_1_hw_init(struct amdgpu_isp *isp) in isp_v4_1_1_hw_init()
351 static int isp_v4_1_1_hw_fini(struct amdgpu_isp *isp) in isp_v4_1_1_hw_fini()
372 void isp_v4_1_1_set_isp_funcs(struct amdgpu_isp *isp) in isp_v4_1_1_set_isp_funcs()
/drivers/usb/phy/
A Dphy-isp1301.c41 static int __isp1301_write(struct isp1301 *isp, u8 reg, u8 value, u8 clear) in __isp1301_write()
46 static int isp1301_write(struct isp1301 *isp, u8 reg, u8 value) in isp1301_write()
51 static int isp1301_clear(struct isp1301 *isp, u8 reg, u8 value) in isp1301_clear()
58 struct isp1301 *isp = phy_to_isp(phy); in isp1301_phy_init() local
85 struct isp1301 *isp = phy_to_isp(phy); in isp1301_phy_set_vbus() local
97 struct isp1301 *isp; in isp1301_probe() local
124 struct isp1301 *isp = i2c_get_clientdata(client); in isp1301_remove() local

Completed in 83 milliseconds

1234