1 /* 2 * Copyright (C) 2023 Rockchip Electronics Co., Ltd. 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 _RKTOOLS_H 18 #define _RKTOOLS_H 19 20 #include <stdbool.h> 21 22 #define MTD_PATH "/proc/mtd" 23 #define CMDLINE_LENGTH 2048 24 #define EMMC_POINT_NAME "emmc_point_name" 25 #define NAND_DRIVER_DEV_LBA "/dev/mtd0" 26 27 28 29 //获取本地版本号 30 bool getLocalVersion(char *version, int maxLength); 31 //获取服务器版本号,用于从服务端下载固件前,先比较版本号 32 bool getRemoteVersion(char *url, char *version, int maxLength); 33 //从环境变量获取flash 的挂载点 34 void getFlashPoint(char *path); 35 //获取flash 的大小,M为单位,和flash 的块数 36 int getFlashSize(char *path, long long* flash_size, long long* block_num); 37 int getFlashInfo (size_t *total_size, size_t *block_size, size_t *page_size); 38 39 40 //itoa(number,string,10);//按十进制转换 41 //itoa(number,string,16);//按16进制转换 42 char* itoa(int num, char* str, int radix); 43 44 bool isMtdDevice(); 45 int getCurrentSlot(); 46 #endif 47