media: atomisp: isys_init: Initiate atomisp in a generic manner
authorKate Hsuan <hpa@redhat.com>
Thu, 13 Jul 2023 10:02:31 +0000 (12:02 +0200)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Wed, 27 Sep 2023 07:40:03 +0000 (09:40 +0200)
The original implementation distinguishes and initiates atomisp during
compiler time. This commit allows isys_init to initiate isys for both types
of atomisp in a generic manner.

Link: https://lore.kernel.org/r/20230713100231.308923-12-hpa@redhat.com
Signed-off-by: Kate Hsuan <hpa@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/atomisp/pci/runtime/isys/src/isys_init.c

index d0a43c44963cd2a53285a08431a0a3602bc8c010..1a7b45bb45446ac097c47e5c37e75aef0fc32d03 100644 (file)
 #include "ia_css_isys.h"
 #include "platform_support.h"
 
-#ifdef ISP2401
 #include "isys_dma_public.h"   /* isys2401_dma_set_max_burst_size() */
 #include "isys_irq.h"
-#endif
 
-#if !defined(ISP2401)
-input_system_err_t ia_css_isys_init(void)
+input_system_err_t ia_css_isys_2400_init(void)
 {
        backend_channel_cfg_t backend_ch0;
        backend_channel_cfg_t backend_ch1;
@@ -86,8 +83,8 @@ input_system_err_t ia_css_isys_init(void)
 
        return error;
 }
-#elif defined(ISP2401)
-input_system_err_t ia_css_isys_init(void)
+
+input_system_err_t ia_css_isys_2401_init(void)
 {
        ia_css_isys_csi_rx_lut_rmgr_init();
        ia_css_isys_ibuf_rmgr_init();
@@ -104,19 +101,21 @@ input_system_err_t ia_css_isys_init(void)
 
        return INPUT_SYSTEM_ERR_NO_ERROR;
 }
-#endif
 
-#if !defined(ISP2401)
-void ia_css_isys_uninit(void)
+input_system_err_t ia_css_isys_init(void)
 {
+       if (IS_ISP2401)
+               return ia_css_isys_2401_init();
+
+       return ia_css_isys_2400_init();
 }
-#elif defined(ISP2401)
+
 void ia_css_isys_uninit(void)
 {
-       ia_css_isys_csi_rx_lut_rmgr_uninit();
-       ia_css_isys_ibuf_rmgr_uninit();
-       ia_css_isys_dma_channel_rmgr_uninit();
-       ia_css_isys_stream2mmio_sid_rmgr_uninit();
+       if (IS_ISP2401) {
+               ia_css_isys_csi_rx_lut_rmgr_uninit();
+               ia_css_isys_ibuf_rmgr_uninit();
+               ia_css_isys_dma_channel_rmgr_uninit();
+               ia_css_isys_stream2mmio_sid_rmgr_uninit();
+       }
 }
-#endif
-