Make driver pointers static for v8

This commit is contained in:
fvanroie 2021-03-16 17:37:37 +01:00
parent 66efad3aa8
commit 793682161c
4 changed files with 171 additions and 161 deletions

View File

@ -70,7 +70,7 @@ void lv_fs_if_fatfs_init(void)
*--------------------------------------------------*/ *--------------------------------------------------*/
/* Add a simple drive to open images */ /* Add a simple drive to open images */
lv_fs_drv_t fs_drv; /*A driver descriptor*/ static lv_fs_drv_t fs_drv; /*A driver descriptor*/
lv_fs_drv_init(&fs_drv); lv_fs_drv_init(&fs_drv);
/*Set up fields...*/ /*Set up fields...*/
@ -119,9 +119,12 @@ static lv_fs_res_t fs_open (lv_fs_drv_t * drv, void * file_p, const char * path,
{ {
uint8_t flags = 0; uint8_t flags = 0;
if(mode == LV_FS_MODE_WR) flags = FA_WRITE | FA_OPEN_ALWAYS; if(mode == LV_FS_MODE_WR)
else if(mode == LV_FS_MODE_RD) flags = FA_READ; flags = FA_WRITE | FA_OPEN_ALWAYS;
else if(mode == (LV_FS_MODE_WR | LV_FS_MODE_RD)) flags = FA_READ | FA_WRITE | FA_OPEN_ALWAYS; else if(mode == LV_FS_MODE_RD)
flags = FA_READ;
else if(mode == (LV_FS_MODE_WR | LV_FS_MODE_RD))
flags = FA_READ | FA_WRITE | FA_OPEN_ALWAYS;
FRESULT res = f_open(file_p, path, flags); FRESULT res = f_open(file_p, path, flags);
@ -133,7 +136,6 @@ static lv_fs_res_t fs_open (lv_fs_drv_t * drv, void * file_p, const char * path,
} }
} }
/** /**
* Close an opened file * Close an opened file
* @param drv pointer to a driver where this function belongs * @param drv pointer to a driver where this function belongs
@ -160,8 +162,10 @@ static lv_fs_res_t fs_close (lv_fs_drv_t * drv, void * file_p)
static lv_fs_res_t fs_read(lv_fs_drv_t* drv, void* file_p, void* buf, uint32_t btr, uint32_t* br) static lv_fs_res_t fs_read(lv_fs_drv_t* drv, void* file_p, void* buf, uint32_t btr, uint32_t* br)
{ {
FRESULT res = f_read(file_p, buf, btr, (UINT*)br); FRESULT res = f_read(file_p, buf, btr, (UINT*)br);
if(res == FR_OK) return LV_FS_RES_OK; if(res == FR_OK)
else return LV_FS_RES_UNKNOWN; return LV_FS_RES_OK;
else
return LV_FS_RES_UNKNOWN;
} }
/** /**
@ -176,8 +180,10 @@ static lv_fs_res_t fs_read (lv_fs_drv_t * drv, void * file_p, void * buf, uint32
static lv_fs_res_t fs_write(lv_fs_drv_t* drv, void* file_p, const void* buf, uint32_t btw, uint32_t* bw) static lv_fs_res_t fs_write(lv_fs_drv_t* drv, void* file_p, const void* buf, uint32_t btw, uint32_t* bw)
{ {
FRESULT res = f_write(file_p, buf, btw, (UINT*)bw); FRESULT res = f_write(file_p, buf, btw, (UINT*)bw);
if(res == FR_OK) return LV_FS_RES_OK; if(res == FR_OK)
else return LV_FS_RES_UNKNOWN; return LV_FS_RES_OK;
else
return LV_FS_RES_UNKNOWN;
} }
/** /**
@ -262,8 +268,10 @@ static lv_fs_res_t fs_rename (lv_fs_drv_t * drv, const char * oldname, const cha
FRESULT res = f_rename(oldname, newname); FRESULT res = f_rename(oldname, newname);
if(res == FR_OK) return LV_FS_RES_OK; if(res == FR_OK)
else return LV_FS_RES_UNKNOWN; return LV_FS_RES_OK;
else
return LV_FS_RES_UNKNOWN;
} }
/** /**
@ -293,8 +301,10 @@ static lv_fs_res_t fs_free (lv_fs_drv_t * drv, uint32_t * total_p, uint32_t * fr
static lv_fs_res_t fs_dir_open(lv_fs_drv_t* drv, void* dir_p, const char* path) static lv_fs_res_t fs_dir_open(lv_fs_drv_t* drv, void* dir_p, const char* path)
{ {
FRESULT res = f_opendir(dir_p, path); FRESULT res = f_opendir(dir_p, path);
if(res == FR_OK) return LV_FS_RES_OK; if(res == FR_OK)
else return LV_FS_RES_UNKNOWN; return LV_FS_RES_OK;
else
return LV_FS_RES_UNKNOWN;
} }
/** /**
@ -318,8 +328,8 @@ static lv_fs_res_t fs_dir_read (lv_fs_drv_t * drv, void * dir_p, char *fn)
if(fno.fattrib & AM_DIR) { if(fno.fattrib & AM_DIR) {
fn[0] = '/'; fn[0] = '/';
strcpy(&fn[1], fno.fname); strcpy(&fn[1], fno.fname);
} } else
else strcpy(fn, fno.fname); strcpy(fn, fno.fname);
} while(strcmp(fn, "/.") == 0 || strcmp(fn, "/..") == 0); } while(strcmp(fn, "/.") == 0 || strcmp(fn, "/..") == 0);

View File

@ -87,7 +87,7 @@ void lv_fs_if_pc_init(void)
*--------------------------------------------------*/ *--------------------------------------------------*/
/* Add a simple drive to open images */ /* Add a simple drive to open images */
lv_fs_drv_t fs_drv; /*A driver descriptor*/ static lv_fs_drv_t fs_drv; /*A driver descriptor*/
lv_fs_drv_init(&fs_drv); lv_fs_drv_init(&fs_drv);
/*Set up fields...*/ /*Set up fields...*/

View File

@ -100,7 +100,7 @@ void lv_fs_if_spiffs_init(void)
*--------------------------------------------------*/ *--------------------------------------------------*/
/* Add a simple drive to open images */ /* Add a simple drive to open images */
lv_fs_drv_t fs_drv; /*A driver descriptor*/ static lv_fs_drv_t fs_drv; /*A driver descriptor*/
lv_fs_drv_init(&fs_drv); lv_fs_drv_init(&fs_drv);
/*Set up fields...*/ /*Set up fields...*/

View File

@ -168,7 +168,7 @@ void guiSetup(void)
} }
/* Initialize the display driver */ /* Initialize the display driver */
lv_disp_drv_t disp_drv; static lv_disp_drv_t disp_drv;
lv_disp_drv_init(&disp_drv); lv_disp_drv_init(&disp_drv);
disp_drv.buffer = &disp_buf; disp_drv.buffer = &disp_buf;
disp_drv.flush_cb = gui_flush_cb; disp_drv.flush_cb = gui_flush_cb;
@ -220,7 +220,7 @@ void guiSetup(void)
LOG_VERBOSE(TAG_LVGL, F("VFB size : %d"), (size_t)sizeof(lv_color_t) * guiVDBsize); LOG_VERBOSE(TAG_LVGL, F("VFB size : %d"), (size_t)sizeof(lv_color_t) * guiVDBsize);
/* Initialize the touch pad */ /* Initialize the touch pad */
lv_indev_drv_t indev_drv; static lv_indev_drv_t indev_drv;
lv_indev_drv_init(&indev_drv); lv_indev_drv_init(&indev_drv);
indev_drv.type = LV_INDEV_TYPE_POINTER; indev_drv.type = LV_INDEV_TYPE_POINTER;
#if defined(WINDOWS) || defined(POSIX) #if defined(WINDOWS) || defined(POSIX)