1 /* 2 * Copyright (C) 2007 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef RECOVERY_COMMON_H 18 #define RECOVERY_COMMON_H 19 20 #include <stdio.h> 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 25 26 // TODO: restore ui_print for LOGE 27 #define LOGE(...) fprintf(stdout, "E:" __VA_ARGS__) 28 #define LOGW(...) fprintf(stdout, "W:" __VA_ARGS__) 29 #define LOGI(...) fprintf(stdout, "I:" __VA_ARGS__) 30 31 #if 0 32 #define LOGV(...) fprintf(stdout, "V:" __VA_ARGS__) 33 #define LOGD(...) fprintf(stdout, "D:" __VA_ARGS__) 34 #else 35 #define LOGV(...) do {} while (0) 36 #define LOGD(...) do {} while (0) 37 #endif 38 39 #define STRINGIFY(x) #x 40 #define EXPAND(x) STRINGIFY(x) 41 42 typedef struct { 43 const char* mount_point; // eg. "/cache". must live in the root directory. 44 45 const char* fs_type; // "yaffs2" or "ext4" or "vfat" 46 47 const char* device; // MTD partition name if fs_type == "yaffs" 48 // block device if fs_type == "ext4" or "vfat" 49 50 const char* device2; // alternative device to try if fs_type 51 // == "ext4" or "vfat" and mounting 52 // 'device' fails 53 54 long long length; // (ext4 partition only) when 55 // formatting, size to use for the 56 // partition. 0 or negative number 57 // means to format all but the last 58 // (that much). 59 } Volume; 60 61 // fopen a file, mounting volumes and making parent dirs as necessary. 62 FILE* fopen_path(const char *path, const char *mode); 63 64 #ifdef __cplusplus 65 } 66 #endif 67 68 #endif // RECOVERY_COMMON_H 69