sdm: Populate minimum ib limit in kbps from crtc info

Populate minimum ib limit in kbps for MNOC, LLCC and DRAM bus from
CRTC info and store it in resource info.

Change-Id: Ia9348e60bf6baf0036a5e388cb332c161d969516
CRs-Fixed: 2097320
diff --git a/libdrmutils/drm_interface.h b/libdrmutils/drm_interface.h
index 4ecfcbf..fb1b925 100644
--- a/libdrmutils/drm_interface.h
+++ b/libdrmutils/drm_interface.h
@@ -359,6 +359,9 @@
   CompRatioMap comp_ratio_rt_map;
   CompRatioMap comp_ratio_nrt_map;
   uint32_t hw_version;
+  uint64_t min_core_ib;
+  uint64_t min_llcc_ib;
+  uint64_t min_dram_ib;
 };
 
 enum struct DRMPlaneType {
diff --git a/sdm/include/private/hw_info_types.h b/sdm/include/private/hw_info_types.h
index 421277a..ca7261a 100644
--- a/sdm/include/private/hw_info_types.h
+++ b/sdm/include/private/hw_info_types.h
@@ -213,6 +213,9 @@
   CompRatioMap comp_ratio_nrt_map;
   uint32_t cache_size = 0;  // cache size in bytes
   HWQseedStepVersion pipe_qseed3_version = kQseed3v2;  // only valid when has_qseed3=true
+  uint64_t min_core_ib_kbps = 0;
+  uint64_t min_llcc_ib_kbps = 0;
+  uint64_t min_dram_ib_kbps = 0;
 
   void Reset() { *this = HWResourceInfo(); }
 };
diff --git a/sdm/libs/core/drm/hw_info_drm.cpp b/sdm/libs/core/drm/hw_info_drm.cpp
index b8eb564..445974f 100644
--- a/sdm/libs/core/drm/hw_info_drm.cpp
+++ b/sdm/libs/core/drm/hw_info_drm.cpp
@@ -287,6 +287,9 @@
   hw_resource->max_bandwidth_high = info.max_bandwidth_high / kKiloUnit;
   hw_resource->max_sde_clk = info.max_sde_clk;
   hw_resource->hw_revision = info.hw_version;
+  hw_resource->min_core_ib_kbps = info.min_core_ib / kKiloUnit;
+  hw_resource->min_llcc_ib_kbps = info.min_llcc_ib / kKiloUnit;
+  hw_resource->min_dram_ib_kbps = info.min_dram_ib / kKiloUnit;
 
   std::vector<LayerBufferFormat> sdm_format;
   for (auto &it : info.comp_ratio_rt_map) {