storaged: rewrite emmc info class

Test: adb logcat -d -b events | grep storaged_emmc_info
Bug: 36228467
Change-Id: Ib799e60ed65661a9fb99be8ad4c930f547339975
diff --git a/storaged/main.cpp b/storaged/main.cpp
index 672f453..e25298b 100644
--- a/storaged/main.cpp
+++ b/storaged/main.cpp
@@ -43,6 +43,7 @@
 #include <storaged_utils.h>
 
 storaged_t storaged;
+emmc_info_t emmc_info;
 
 // Function of storaged's main thread
 void* storaged_main(void* s) {
@@ -69,7 +70,6 @@
 int main(int argc, char** argv) {
     int flag_main_service = 0;
     int flag_dump_uid = 0;
-    int fd_emmc = -1;
     int opt;
 
     for (;;) {
@@ -114,12 +114,9 @@
     }
 
     if (flag_main_service) { // start main thread
-        static const char mmc0_ext_csd[] = "/d/mmc0/mmc0:0001/ext_csd";
-        fd_emmc = android_get_control_file(mmc0_ext_csd);
-        if (fd_emmc < 0)
-            fd_emmc = TEMP_FAILURE_RETRY(open(mmc0_ext_csd, O_RDONLY));
-
-        storaged.set_privileged_fds(fd_emmc);
+        if (emmc_info.init()) {
+            storaged.set_storage_info(&emmc_info);
+        }
 
         // Start the main thread of storaged
         pthread_t storaged_main_thread;
@@ -134,8 +131,6 @@
         IPCThreadState::self()->joinThreadPool();
         pthread_join(storaged_main_thread, NULL);
 
-        close(fd_emmc);
-
         return 0;
     }