static gceSTATUS _gc_gather_infomation(char *buf, ssize_t* length) { gceSTATUS status = gcvSTATUS_OK; ssize_t len = 0; gctUINT32 pid = 0; /* #################### [START ==DO NOT CHANGE THE FIRST LINE== START] #################### */ /* @Ziyi: This string is checked by skia-neon related code to identify Marvell silicon, please do not change it and always keep it at the first line of /proc/driver/gc ! */ gckOS_GetProcessID(&pid); len += sprintf(buf+len, "[%3d]%s(%s)\n", pid, _VENDOR_STRING_, _GC_VERSION_STRING_); /* @Ziyi: If any change happened between these 2 comments please contact [email protected], Thanks. */ /* #################### [END ====DO NOT CHANGE THE FIRST LINE==== END] #################### */ if(1) { gctUINT32 tmpLen = 0; gcmkONERROR(gckOS_ShowVidMemUsage(galDevice->os, buf+len, &tmpLen)); len += tmpLen; } *length = len; return gcvSTATUS_OK; OnError: return status; }
// ------------------------------------------------- static ssize_t show_mem_stats (struct device *dev, struct device_attribute *attr, char * buf) { gctUINT32 len = 0; gcmkVERIFY_OK(gckOS_ShowVidMemUsage(galDevice->os, buf, &len)); return (ssize_t)len; }