s3a_info->deci_factor_log2  = binary->deci_factor_log2;
        s3a_info->elem_bit_depth    = SH_CSS_BAYER_BITS;
        s3a_info->use_dmem          = binary->info->sp.s3a.s3atbl_use_dmem;
-#if defined(HAS_NO_HMEM)
-       s3a_info->has_histogram     = 1;
-#else
        s3a_info->has_histogram     = 0;
-#endif
        IA_CSS_LEAVE_ERR_PRIVATE(err);
        return err;
 }
 
 #include "gdc_device.h"                /* gdc_lut_store(), ... */
 #include "isp.h"                       /* ISP_VEC_ELEMBITS */
 #include "vamem.h"
-#if !defined(HAS_NO_HMEM)
 #ifndef __INLINE_HMEM__
 #define __INLINE_HMEM__
 #endif
 #include "hmem.h"
-#endif /* !defined(HAS_NO_HMEM) */
 #define IA_CSS_INCLUDE_PARAMETERS
 #define IA_CSS_INCLUDE_ACC_PARAMETERS
 
                ia_css_s3a_vmem_decode(host_stats, isp_stats->vmem_stats_hi,
                                       isp_stats->vmem_stats_lo);
        }
-#if !defined(HAS_NO_HMEM)
        IA_CSS_LOG("3A: HMEM");
        ia_css_s3a_hmem_decode(host_stats, isp_stats->hmem_stats);
-#endif
 
        IA_CSS_LEAVE("void");
 }
                me->vmem_size = ISP_S3ATBL_HI_LO_STRIDE_BYTES *
                                grid->aligned_height;
        }
-#if !defined(HAS_NO_HMEM)
        me->hmem_size = sizeof_hmem(HMEM0_ID);
-#endif
 
        /* All subsections need to be aligned to the system bus width */
        me->dmem_size = CEIL_MUL(me->dmem_size, HIVE_ISP_DDR_WORD_BYTES);
        me->data = kvmalloc(grid_size * sizeof(*me->data), GFP_KERNEL);
        if (!me->data)
                goto err;
-#if !defined(HAS_NO_HMEM)
        /* No weighted histogram, no structure, treat the histogram data as a byte dump in a byte array */
        me->rgby_data = kvmalloc(sizeof_hmem(HMEM0_ID), GFP_KERNEL);
-#else
-       me->rgby_data = NULL;
-#endif
 
        IA_CSS_LEAVE("return=%p", me);
        return me;