h6. [[Portable]] h6(. » [[Portable SWI Calls|SWI Calls]] h6((. » Portable_EnumerateBMU h2. Portable_EnumerateBMU h5. (SWI &42FD0) |_<^{width:4em}. Entry | | |/3<^. R0 |<^. Previous BMU number | |<^. Or -1 to start enumeration | |<^. Or 0 to skip the legacy BMU | |<^. R1 |<^. Flags (Reserved, should be zero) | |_<^{width:4em}. Exit | | |<^. R0 |<^. This BMU index, or -1 for end | |<^. R1 |<^. [[Battery Management Unit device flags|BMU device flags]] (only valid if R0 <> -1) | |<^. R2 |<^. Mask of supported [[Battery Management Unit status flags|BMU status flags]] (only valid if R0 <> -1) | h4. Use This call allows you to enumerate the available BMUs in the system. h4. Notes BMU 0 is a legacy BMU provided for compatibility with software designed to work with the A4, Stork and A9 versions of the Portable module. * The legacy BMU may be the same as one of the other BMUs * The legacy BMU may be a composite of several BMUs (e.g. in a system with two standard BMUs, each managing a removable battery, the 'battery present' flag will be set as long as at least one battery is present) Since the BMU interface now allows for communication with BMUs which don't power the main system (e.g. the BMU for an RTC or NVRAM backup battery), the Portable module may elect not to create a legacy BMU if none of the BMUs present in the system are able to report on the power state of the main battery/power supply. The current legacy BMU implementation returns values in the same units as the other PortableHAL BMUs. However in future this may be changed to return values compatible with the A4 version of the Portable module. h4. See also * [[Battery Management Unit device flags]] * [[Battery Management Unit status flags]]