`MI_SYS` is the master of other `mi_modules`. It manages buffers, memory addresses, and the binding of modules. Some modules, like `mi_divp` and `mi_vdec`, require binding to another module (like `mi_disp` or `mi_panel`) to function properly. However, `mi_gfx` operates independently, without needing bindings to other modules.
For memory allocation and operations, `MI_SYS` is utilized. While `mi_gfx` relies on `MI_SYS` for memory buffers, it does not bind to any other modules and uses its own blit mechanics and functions. Before utilizing it, a panel and display should be initialized on Miyoo devices, typically done by `/dev/l` and other Miyoo-provided modules.
- You may find MI_SYS has a hard limit for buffers of 9-10mb!
To check the status of `MI_SYS`, you can examine the output from the relevant `/proc/mi_modules/mi_sys` file:
/proc/mi_modules/mi_sys # cat mi_sys0
-----------------------------------------Common info for mi_sys-----------------------------------------
ChnNum EnChnNum PassNum InPortNum OutPortNum CollectSize
0 0 0 0 0 0
----------------------CMDQ kickoff counter-----------------------
------------------------------Common info formi_sys only dump enabled chn------------------------------
ChnId PassNum EnInPNum EnOutPNum MMAHeapName
-------------------------Input port common info for mi_sys only dump enabled port---------------------
ChnId PassId PortId user_buf_quota UsrInjectQ_cnt BindInQ_cnt TotalPendingBuf_size usrLockedInjectCnt
ChnId PassId PortId newPulseQ_cnt nextTodoPulseQ_cnt curWorkingQ_cnt workingTask_cnt lazzyRewindTask_cnt
ChnId PassId PortId Enable bind_module_id bind_module_name bind_ChnId bind_PortId bind_Type bind_Param enable
ChnId PassId PortId LowLatencyDelayMs LastStaticDelayAveMS
ChnId PassId PortId SrcFrmrate DstFrmrate RealSrcFrmrate FPS FinishCnt RewindCnt
----------------------Output port common info for mi_sys only for enabled port---------------------
ChnId PassId PortId usrDepth BufCntQuota usrLockedCnt totalOutPortInUsed DrvBkRefFifoQ_cnt DrvBkRefFifoQ_size
ChnId PassId PortId RealDstFrmrate FPS UsrGetFifoQ_cnt UsrGetFifoQ_size UsrGetFifoQ_seqnum UsrGetFifoQ_discardnum
ChnId PassId PortId workingTask_cnt finishedTask_cnt
ChnId PassId PortId RealDstFrmrate FPS FinishCnt RewindCnt GetTotalCnt GetOkCnt
----------------------------------------BindPeerInputPortList---------------------------------------
ChnId PassId PortId Enable bind_module_id bind_module_name bind_ChnId bind_PortId bind_Type bind_Param enable
/proc/mi_modules/mi_sys #