您尚未登录。

楼主 #1 2018-03-31 10:36:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

入坑V3s camdroid编解码视频

github上面找到两本红宝书, 不敢独享:

Video-Encoder-API.pdf

Video-Decoder-API.pdf

参考链接1: allwinner-zh/media-codec


-----------------------------------
有找到几个相关的文档:
参考链接2: CamDroid编译第三方app
参考链接3: camdroid使用的linux ndk版本 android-ndk-r8b-linux-x86.tar.bz2
参考链接4: camdroid使用的windows ndk版本 android-ndk-r8b-windows.zip
参考链接5: Android NDK 工具链的使用方法(Standalone Toolchain)
参考链接6: 直接使用ndk提供的arm-linux-androideabi-gcc编译android可执行程序

使用 make-standalone-toolchain.sh --platform=android-14 可以创建单独的工具链,

# /d/Downloads/android-ndk-r8b/build/tools/make-standalone-toolchain.sh --platform=android-14

Auto-config: --toolchain=arm-linux-androideabi-4.6
Copying prebuilt binaries...
Copying sysroot headers and libraries...
Copying libstdc++ headers and libraries...
Creating package file: /tmp/ndk-/arm-linux-androideabi-4.6.tar.bz2
Cleaning up...
Done.

解压arm-linux-androideabi-4.6.tar.bz2, 设置系统PATH,

然后可以使用

arm-linux-androideabi-gcc.exe -o test test.c

这种方式创建camdroid可执行文件。



camdroid代码地址: https://github.com/qq516333132/camdroid





离线

楼主 #2 2018-03-31 10:57:18

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

我觉得如果在V3s获取摄像头数据, 可以用Linux, 但是要进行视频编解码,那还是得上camdroid.





离线

楼主 #3 2018-03-31 11:16:23

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

Video-Encoder-API.pdf

视频编码库 APIs:
VideoEncCreate 创建一个视频编码器
VideoEncDestroy 销毁视频编码器
VideoEncInit 初始化视频编码器
VideoEncUnInit 去初始化视频编码器
AllocInputBuffer 通过 vencoder 申请输入图像帧 buffer
GetOneAllocInputBuffer 获取一块由 vencoder 分配的图像帧
FlushCacheAllocInputBuffer 刷 cache 保持数据的一致性
ReturnOneAllocInputBuffer 还回由 vencoder 申请的图像帧
ReleaseAllocInputBuffer 释放由 vencoder 申请的图像帧
AddOneInputBuffer 添加一块输入的图像帧到编码器
VideoEncodeOneFrame 编码一帧图像
AlreadyUsedInputBuffer 获取编码器已经使用过的图像帧
ValidBitstreamFrameNum 获取有效的输出码流 buffer 的个数
GetOneBitstreamFrame 获取一个码流 buffer
FreeOneBitStreamFrame 还回码流 buffer
VideoEncGetParameter 获取编码器参数
VideoEncSetParameter 设置编码器参数


上面这些函数都可以在这个动态链接库 camdroid/frameworks/av/media/CedarX-Projects/CedarAndroidLib/LIB_JB42_F81/libvencoder.so 找到!

搜索方法:

# arm-linux-gnueabihf-readelf -s ./camdroid/frameworks/av/media/CedarX-Projects/CedarAndroidLib/LIB_JB42_F81/libvencoder.so |grep VideoEnc
     3: 00003799   172 FUNC    GLOBAL DEFAULT    7 VideoEncCreate
    13: 00003845   236 FUNC    GLOBAL DEFAULT    7 VideoEncInit
    19: 00003931   120 FUNC    GLOBAL DEFAULT    7 VideoEncUnInit
    22: 000039a9    44 FUNC    GLOBAL DEFAULT    7 VideoEncDestroy
    36: 00003b8d   172 FUNC    GLOBAL DEFAULT    7 VideoEncodeOneFrame
    45: 00003ceb    12 FUNC    GLOBAL DEFAULT    7 VideoEncGetParameter
    46: 00003cf7    12 FUNC    GLOBAL DEFAULT    7 VideoEncSetParameter




离线

楼主 #4 2018-03-31 11:23:02

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

这里有一个编码的demo

到时候试一试看看能不能编译运行成功:

#include "log.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "vencoder.h"
#include <time.h>

int yu12_nv12(unsigned int width, unsigned int height, unsigned char *addr_uv, unsigned char *addr_tmp_uv)
{
	unsigned int i, chroma_bytes;
	unsigned char *u_addr = NULL;
	unsigned char *v_addr = NULL;
	unsigned char *tmp_addr = NULL;

	chroma_bytes = width*height/4;

	u_addr = addr_uv;
	v_addr = addr_uv + chroma_bytes;
	tmp_addr = addr_tmp_uv;

	for(i=0; i<chroma_bytes; i++)
	{
		*(tmp_addr++) = *(u_addr++);
		*(tmp_addr++) = *(v_addr++);
	}

	memcpy(addr_uv, addr_tmp_uv, chroma_bytes*2);	

	return 0;
}

int main()
{
	VencBaseConfig baseConfig;
	VencAllocateBufferParam bufferParam;
	VideoEncoder* pVideoEnc = NULL;
	VencInputBuffer inputBuffer;
	VencOutputBuffer outputBuffer;
	VencHeaderData sps_pps_data;
	VencH264Param h264Param;
	VencH264FixQP fixQP;
	EXIFInfo exifinfo;
	VencCyclicIntraRefresh sIntraRefresh;
	unsigned int src_width,src_height,dst_width,dst_height;
	unsigned char *uv_tmp_buffer = NULL;
	

	VencROIConfig sRoiConfig[4];

	src_width = 1920;
	src_height = 1080;
	dst_width = 1920;
	dst_height = 1080;

	// roi
	sRoiConfig[0].bEnable = 1;
	sRoiConfig[0].index = 0;
	sRoiConfig[0].nQPoffset = 10;
	sRoiConfig[0].sRect.nLeft = 320;
	sRoiConfig[0].sRect.nTop = 180;
	sRoiConfig[0].sRect.nWidth = 320;
	sRoiConfig[0].sRect.nHeight = 180;


	sRoiConfig[1].bEnable = 1;
	sRoiConfig[1].index = 1;
	sRoiConfig[1].nQPoffset = 10;
	sRoiConfig[1].sRect.nLeft = 320;
	sRoiConfig[1].sRect.nTop = 180;
	sRoiConfig[1].sRect.nWidth = 320;
	sRoiConfig[1].sRect.nHeight = 180;


	sRoiConfig[2].bEnable = 1;
	sRoiConfig[2].index = 2;
	sRoiConfig[2].nQPoffset = 10;
	sRoiConfig[2].sRect.nLeft = 320;
	sRoiConfig[2].sRect.nTop = 180;
	sRoiConfig[2].sRect.nWidth = 320;
	sRoiConfig[2].sRect.nHeight = 180;


	sRoiConfig[3].bEnable = 1;
	sRoiConfig[3].index = 3;
	sRoiConfig[3].nQPoffset = 10;
	sRoiConfig[3].sRect.nLeft = 320;
	sRoiConfig[3].sRect.nTop = 180;
	sRoiConfig[3].sRect.nWidth = 320;
	sRoiConfig[3].sRect.nHeight = 180;


	//intraRefresh
	
	sIntraRefresh.bEnable = 1;
	sIntraRefresh.nBlockNumber = 10;

	//fix qp mode
	fixQP.bEnable = 1;
	fixQP.nIQp = 20;
	fixQP.nPQp = 30;
	
	exifinfo.ThumbWidth = 176;
	exifinfo.ThumbHeight = 144;

	//* h264 param
	h264Param.bEntropyCodingCABAC = 1;
	h264Param.nBitrate = 4*1024*1024; /* bps */
	h264Param.nFramerate = 30; /* fps */
	h264Param.nCodingMode = VENC_FRAME_CODING;
//	h264Param.nCodingMode = VENC_FIELD_CODING;
	
	h264Param.nMaxKeyInterval = 30;
	h264Param.sProfileLevel.nProfile = VENC_H264ProfileMain;
	h264Param.sProfileLevel.nLevel = VENC_H264Level31;
	h264Param.sQPRange.nMinqp = 10;
	h264Param.sQPRange.nMaxqp = 40;


	int codecType = VENC_CODEC_H264;
	int testNumber = 70;

	strcpy((char*)exifinfo.CameraMake,		"allwinner make test");
	strcpy((char*)exifinfo.CameraModel,		"allwinner model test");
	strcpy((char*)exifinfo.DateTime, 		"2014:02:21 10:54:05");
	strcpy((char*)exifinfo.gpsProcessingMethod,  "allwinner gps");

	exifinfo.Orientation = 0;
	
	exifinfo.ExposureTime.num = 2;
	exifinfo.ExposureTime.den = 1000;

	exifinfo.FNumber.num = 20;
	exifinfo.FNumber.den = 10;
	exifinfo.ISOSpeed = 50;


	exifinfo.ExposureBiasValue.num= -4;
	exifinfo.ExposureBiasValue.den= 1;

	exifinfo.MeteringMode = 1;
	exifinfo.FlashUsed = 0;

	exifinfo.FocalLength.num = 1400;
	exifinfo.FocalLength.den = 100;

	exifinfo.DigitalZoomRatio.num = 4;
	exifinfo.DigitalZoomRatio.den = 1;

	exifinfo.WhiteBalance = 1;
	exifinfo.ExposureMode = 1;

	exifinfo.enableGpsInfo = 1;

	exifinfo.gps_latitude = 23.2368;
	exifinfo.gps_longitude = 24.3244;
	exifinfo.gps_altitude = 1234.5;
	
	exifinfo.gps_timestamp = (long)time(NULL);

	FILE *in_file = NULL;
	FILE *out_file = NULL;

	if(codecType == VENC_CODEC_H264)
	{
		in_file = fopen("/root/mnt/repos/codec-lte/demo/data/stream/1080p.yuv", "r");
		if(in_file == NULL)
		{
			loge("open in_file fail\n");
			return -1;
		}
		
		out_file = fopen("./1080p.264", "wb");
		if(out_file == NULL)
		{
			loge("open out_file fail\n");
			return -1;
		}
	}
	else
	{
		in_file = fopen("/data/camera/720p-30zhen.yuv", "r");
		if(in_file == NULL)
		{
			loge("open in_file fail\n");
			return -1;
		}
		
		out_file = fopen("/data/camera/test.jpg", "wb");
		if(out_file == NULL)
		{
			loge("open out_file fail\n");
			return -1;
		}
	}

	memset(&baseConfig, 0 ,sizeof(VencBaseConfig));
	memset(&bufferParam, 0 ,sizeof(VencAllocateBufferParam));

	baseConfig.nInputWidth= src_width;
	baseConfig.nInputHeight = src_height;
	baseConfig.nStride = src_width;
	
	baseConfig.nDstWidth = dst_width;
	baseConfig.nDstHeight = dst_height;
	baseConfig.eInputFormat = VENC_PIXEL_YUV420SP;

	bufferParam.nSizeY = baseConfig.nInputWidth*baseConfig.nInputHeight;
	bufferParam.nSizeC = baseConfig.nInputWidth*baseConfig.nInputHeight/2;
	bufferParam.nBufferNum = 4;
	
	pVideoEnc = VideoEncCreate(codecType);


	if(codecType == VENC_CODEC_JPEG)
	{
	  	VideoEncSetParameter(pVideoEnc, VENC_IndexParamJpegExifInfo, &exifinfo);
	}
	else if(codecType == VENC_CODEC_H264)
	{
		int value;
		
		VideoEncSetParameter(pVideoEnc, VENC_IndexParamH264Param, &h264Param);

		value = 0;
		VideoEncSetParameter(pVideoEnc, VENC_IndexParamIfilter, &value);

		value = 0; //degree
		VideoEncSetParameter(pVideoEnc, VENC_IndexParamRotation, &value);

		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamH264FixQP, &fixQP);

		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamH264CyclicIntraRefresh, &sIntraRefresh);

		value = 720/4;
		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamSliceHeight, &value);

		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamROIConfig, &sRoiConfig[0]);
		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamROIConfig, &sRoiConfig[1]);
		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamROIConfig, &sRoiConfig[2]);
		//VideoEncSetParameter(pVideoEnc, VENC_IndexParamROIConfig, &sRoiConfig[3]);
	}

	VideoEncInit(pVideoEnc, &baseConfig);

	if(codecType == VENC_CODEC_H264)
	{
		unsigned int head_num = 0;
		VideoEncGetParameter(pVideoEnc, VENC_IndexParamH264SPSPPS, &sps_pps_data);
		fwrite(sps_pps_data.pBuffer, 1, sps_pps_data.nLength, out_file);
		logd("sps_pps_data.nLength: %d", sps_pps_data.nLength);
		for(head_num=0; head_num<sps_pps_data.nLength; head_num++)
			logd("the sps_pps :%02x\n", *(sps_pps_data.pBuffer+head_num));
	}

	if(codecType == VENC_CODEC_JPEG)
	{
		testNumber = 1;
	}

	AllocInputBuffer(pVideoEnc, &bufferParam);

	if(baseConfig.eInputFormat == VENC_PIXEL_YUV420SP)
	{
		uv_tmp_buffer = (unsigned char*)malloc(baseConfig.nInputWidth*baseConfig.nInputHeight/2);
		if(uv_tmp_buffer == NULL)
		{
			loge("malloc uv_tmp_buffer fail\n");
			return -1;
		}
	}
	
	while(testNumber > 0)
	{
		GetOneAllocInputBuffer(pVideoEnc, &inputBuffer);
		{
			unsigned int size1, size2;
			
			size1 = fread(inputBuffer.pAddrVirY, 1, baseConfig.nInputWidth*baseConfig.nInputHeight, in_file);
			size2 = fread(inputBuffer.pAddrVirC, 1, baseConfig.nInputWidth*baseConfig.nInputHeight/2, in_file);

			if((size1!= baseConfig.nInputWidth*baseConfig.nInputHeight) || (size2!= baseConfig.nInputWidth*baseConfig.nInputHeight/2))
			{
				fseek(in_file, 0L, SEEK_SET);
				size1 = fread(inputBuffer.pAddrVirY, 1, baseConfig.nInputWidth*baseConfig.nInputHeight, in_file);
				size2 = fread(inputBuffer.pAddrVirC, 1, baseConfig.nInputWidth*baseConfig.nInputHeight/2, in_file);
			}

			
			if(baseConfig.eInputFormat == VENC_PIXEL_YUV420SP)
			{
				yu12_nv12(baseConfig.nInputWidth, baseConfig.nInputHeight, inputBuffer.pAddrVirC, uv_tmp_buffer);
			}
		}
		
		inputBuffer.bEnableCorp = 0;
		inputBuffer.sCropInfo.nLeft =  240;
		inputBuffer.sCropInfo.nTop  =  240;
		inputBuffer.sCropInfo.nWidth  =  240;
		inputBuffer.sCropInfo.nHeight =  240;

		FlushCacheAllocInputBuffer(pVideoEnc, &inputBuffer);

		AddOneInputBuffer(pVideoEnc, &inputBuffer);
		VideoEncodeOneFrame(pVideoEnc);

		AlreadyUsedInputBuffer(pVideoEnc,&inputBuffer);
		ReturnOneAllocInputBuffer(pVideoEnc, &inputBuffer);

		GetOneBitstreamFrame(pVideoEnc, &outputBuffer);
		//logi("size: %d,%d", outputBuffer.nSize0,outputBuffer.nSize1);

		fwrite(outputBuffer.pData0, 1, outputBuffer.nSize0, out_file);

		if(outputBuffer.nSize1)
		{
			fwrite(outputBuffer.pData1, 1, outputBuffer.nSize1, out_file);
		}
			
		FreeOneBitStreamFrame(pVideoEnc, &outputBuffer);

		if(h264Param.nCodingMode==VENC_FIELD_CODING && codecType==VENC_CODEC_H264)
		{
			GetOneBitstreamFrame(pVideoEnc, &outputBuffer);
			//logi("size: %d,%d", outputBuffer.nSize0,outputBuffer.nSize1);

			fwrite(outputBuffer.pData0, 1, outputBuffer.nSize0, out_file);

			if(outputBuffer.nSize1)
			{
				fwrite(outputBuffer.pData1, 1, outputBuffer.nSize1, out_file);
			}
				
			FreeOneBitStreamFrame(pVideoEnc, &outputBuffer);
		}

		testNumber--;
	}

out:	
	fclose(out_file);
	fclose(in_file);
	if(uv_tmp_buffer)
		free(uv_tmp_buffer);

	return 0;
}




离线

楼主 #5 2018-03-31 11:28:46

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

居然找到编码器的实现代码:

vencoder.h

/*
* Cedarx framework.
* Copyright (c) 2008-2015 Allwinner Technology Co. Ltd.
* Author: Ning Fang <fangning@allwinnertech.com>
* 
* This file is part of Cedarx.
*
* Cedarx is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
* kind, whether express or implied; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#ifndef _VENCODER_H_
#define _VENCODER_H_

#define  DATA_TIME_LENGTH 24
#define  INFO_LENGTH 64
#define  GPS_PROCESS_METHOD_LENGTH 100


#define VENC_BUFFERFLAG_KEYFRAME 0x00000001
#define VENC_BUFFERFLAG_EOS 0x00000002 


typedef struct rational_t
{
	unsigned int num;
	unsigned int den;
}rational_t;

typedef struct srational_t
{
	int num;
	int den;
}srational_t;

typedef enum ExifMeteringModeType{
    EXIF_METERING_UNKNOWN,
    EXIF_METERING_AVERAGE,
    EXIF_METERING_CENTER,
    EXIF_METERING_SPOT,
    EXIF_METERING_MULTISPOT,
    EXIF_METERING_PATTERN,
    EXIF_METERING_PARTIAL,
    EXIF_METERING_OTHER     = 255,
} ExifMeteringModeType;

typedef enum ExifExposureModeType
{
    EXIF_EXPOSURE_AUTO,
    EXIF_EXPOSURE_MANUAL,
    EXIF_EXPOSURE_AUTO_BRACKET,
}ExifExposureModeType;

typedef struct EXIFInfo
{
    unsigned char  CameraMake[INFO_LENGTH];
    unsigned char  CameraModel[INFO_LENGTH];
    unsigned char  DateTime[DATA_TIME_LENGTH];

	unsigned int   ThumbWidth;
	unsigned int   ThumbHeight;

    int   		   Orientation;  //value can be 0,90,180,270 degree
	rational_t	   ExposureTime; //tag 0x829A
	rational_t	   FNumber; //tag 0x829D
	short		   ISOSpeed;//tag 0x8827

	srational_t    ShutterSpeedValue; //tag 0x9201
	//srational_t    BrightnessValue;   //tag 0x9203
	srational_t    ExposureBiasValue; //tag 0x9204

	short		   MeteringMode; //tag 0x9207
	short		   FlashUsed; 	//tag 0x9209
	rational_t	   FocalLength; //tag 0x920A

	rational_t	   DigitalZoomRatio; // tag A404
	short		   WhiteBalance; //tag 0xA403
	short		   ExposureMode; //tag 0xA402

	// gps info
	int            enableGpsInfo;
	double         gps_latitude;
	double		   gps_longitude;
	double         gps_altitude;  
	long           gps_timestamp;
	unsigned char  gpsProcessingMethod[GPS_PROCESS_METHOD_LENGTH];
}EXIFInfo;

typedef struct VencRect
{
	int nLeft;
	int nTop;
	int nWidth;
	int nHeight;
}VencRect;


typedef enum VENC_COLOR_SPACE
{
    VENC_BT601,
	VENC_BT709,
	VENC_YCC,
}VENC_COLOR_SPACE;

typedef enum VENC_YUV2YUV
{
    VENC_YCCToBT601,
	VENC_BT601ToYCC,
}VENC_YUV2YUV;


typedef enum VENC_CODING_MODE
{
  VENC_FRAME_CODING         = 0,
  VENC_FIELD_CODING         = 1,
}VENC_CODING_MODE;


typedef enum VENC_CODEC_TYPE
{
	VENC_CODEC_H264,
	VENC_CODEC_JPEG,
	VENC_CODEC_VP8,
}VENC_CODEC_TYPE;


typedef enum VENC_PIXEL_FMT
{
	VENC_PIXEL_YUV420SP,
    VENC_PIXEL_YVU420SP,
    VENC_PIXEL_YUV420P,
    VENC_PIXEL_YVU420P,
	VENC_PIXEL_YUV422SP,
    VENC_PIXEL_YVU422SP,
    VENC_PIXEL_YUV422P,
    VENC_PIXEL_YVU422P,
	VENC_PIXEL_YUYV422,
	VENC_PIXEL_UYVY422,
	VENC_PIXEL_YVYU422,
	VENC_PIXEL_VYUY422,
	VENC_PIXEL_ARGB,
    VENC_PIXEL_RGBA,
    VENC_PIXEL_ABGR,
    VENC_PIXEL_BGRA,
    VENC_PIXEL_TILE_32X32,
    VENC_PIXEL_TILE_128X32,
}VENC_PIXEL_FMT;


typedef struct VencBaseConfig
{
	unsigned int		nInputWidth;
	unsigned int		nInputHeight;
	unsigned int		nDstWidth;
	unsigned int		nDstHeight;
	unsigned int        nStride;
	VENC_PIXEL_FMT  	eInputFormat;
}VencBaseConfig;


/** 
 * H264 profile types
 */
typedef enum VENC_H264PROFILETYPE
{
    VENC_H264ProfileBaseline  = 66,         /**< Baseline profile */
    VENC_H264ProfileMain      = 77,         /**< Main profile */
    VENC_H264ProfileHigh      = 100,   		/**< High profile */
}VENC_H264PROFILETYPE;


/** 
 * H264 level types
 */
typedef enum VENC_H264LEVELTYPE
{
    VENC_H264Level1   = 10,     /**< Level 1 */
    VENC_H264Level11  = 11,     /**< Level 1.1 */
    VENC_H264Level12  = 12,     /**< Level 1.2 */
    VENC_H264Level13  = 13,     /**< Level 1.3 */
    VENC_H264Level2   = 20,     /**< Level 2 */
    VENC_H264Level21  = 21,     /**< Level 2.1 */
    VENC_H264Level22  = 22,     /**< Level 2.2 */
    VENC_H264Level3   = 30,     /**< Level 3 */
    VENC_H264Level31  = 31,     /**< Level 3.1 */
    VENC_H264Level32  = 32,     /**< Level 3.2 */
    VENC_H264Level4   = 40,     /**< Level 4 */
    VENC_H264Level41  = 41,     /**< Level 4.1 */
    VENC_H264Level42  = 42,     /**< Level 4.2 */
    VENC_H264Level5   = 50,     /**< Level 5 */
    VENC_H264Level51  = 51,     /**< Level 5.1 */
}VENC_H264LEVELTYPE;

typedef struct VencH264ProfileLevel
{
	VENC_H264PROFILETYPE	nProfile;
	VENC_H264LEVELTYPE		nLevel;
}VencH264ProfileLevel;

typedef struct VencQPRange
{
	int	nMaxqp;
	int	nMinqp;
}VencQPRange;

typedef struct MotionParam
{
	int nMotionDetectEnable;
	int nMotionDetectRatio; /* 0~12, 0 is the best sensitive */
}MotionParam;

typedef struct VencHeaderData
{
	unsigned char*  pBuffer;
	unsigned int	nLength;
}VencHeaderData;

typedef struct VencInputBuffer
{
	unsigned long  nID;
	long long  	   nPts;
	unsigned int   nFlag;
	unsigned char* pAddrPhyY;
	unsigned char* pAddrPhyC;
	unsigned char* pAddrVirY;
	unsigned char* pAddrVirC;
	int 		   bEnableCorp;
	VencRect       sCropInfo;

	int			   ispPicVar;
}VencInputBuffer;

typedef struct VencOutputBuffer
{
	int			   nID;
	long long  	   nPts;
	unsigned int   nFlag;
	unsigned int   nSize0;
	unsigned int   nSize1;
	unsigned char* pData0;
	unsigned char* pData1;
}VencOutputBuffer;

typedef struct VencAllocateBufferParam
{
    unsigned int   nBufferNum;
	unsigned int   nSizeY;
	unsigned int   nSizeC;
}VencAllocateBufferParam;


typedef struct VencH264FixQP
{
	int                     bEnable;
	int                     nIQp;
	int 					nPQp;
}VencH264FixQP;

typedef struct VencCyclicIntraRefresh
{
	int                     bEnable;
	int                     nBlockNumber;
}VencCyclicIntraRefresh;


typedef struct VencSize
{
	int                     nWidth;
	int                     nHeight;
}VencSize;


typedef struct VencH264Param
{
	VencH264ProfileLevel	sProfileLevel;
	int                 	bEntropyCodingCABAC; /* 0:CAVLC 1:CABAC*/
	VencQPRange   			sQPRange;
	int                     nFramerate; /* fps*/
	int                     nBitrate;   /* bps*/
	int                     nMaxKeyInterval;
	VENC_CODING_MODE        nCodingMode;
}VencH264Param;


/* support 4 ROI region */
typedef struct VencROIConfig
{
	int                     bEnable;
	int                		index; /* (0~3) */
	int                     nQPoffset;
	VencRect                sRect;
}VencROIConfig;


typedef struct VencCheckColorFormat
{
	int                		index;
	VENC_PIXEL_FMT          eColorFormat;
}VencCheckColorFormat;


typedef struct VencVP8Param
{
	int                     nFramerate; /* fps*/
	int                     nBitrate;   /* bps*/
	int                     nMaxKeyInterval;
}VencVP8Param;


typedef enum VENC_INDEXTYPE
{
	VENC_IndexParamBitrate				= 0x0,		/**< reference type: int */
	VENC_IndexParamFramerate,                		/**< reference type: int */
	VENC_IndexParamMaxKeyInterval,           		/**< reference type: int */
	VENC_IndexParamIfilter,                  		/**< reference type: int */            
	VENC_IndexParamRotation,                 		/**< reference type: int */
	VENC_IndexParamSliceHeight,              		/**< reference type: int */
	VENC_IndexParamForceKeyFrame,            		/**< reference type: int (write only)*/
	VENC_IndexParamMotionDetectEnable,             	/**< reference type: MotionParam(write only) */
	VENC_IndexParamMotionDetectStatus,             	/**< reference type: int(read only) */
	VENC_IndexParamRgb2Yuv,             			/**< reference type: VENC_COLOR_SPACE */
	VENC_IndexParamYuv2Yuv,             			/**< reference type: VENC_YUV2YUV */
	VENC_IndexParamROIConfig,						/**< reference type: VencROIConfig */
	VENC_IndexParamStride,              		    /**< reference type: int */
	VENC_IndexParamColorFormat,                     /**< reference type: VENC_PIXEL_FMT */
	VENC_IndexParamSize,                     		/**< reference type: VencSize(read only) */
	VENC_IndexParamSetVbvSize,                     	/**< reference type: setVbvSize(write only) */

	/* check capabiliy */
	VENC_IndexParamMAXSupportSize,					/**< reference type: VencSize(read only) */
	VENC_IndexParamCheckColorFormat,				/**< reference type: VencCheckFormat(read only) */

	/* H264 param */
	VENC_IndexParamH264Param,						/**< reference type: VencH264Param */
	VENC_IndexParamH264SPSPPS,                    	/**< reference type: VencHeaderData (read only)*/
	VENC_IndexParamH264QPRange			= 0x100,	/**< reference type: VencQPRange */
	VENC_IndexParamH264ProfileLevel,              	/**< reference type: VencProfileLevel */
	VENC_IndexParamH264EntropyCodingCABAC,			/**< reference type: int(0:CAVLC 1:CABAC) */
	VENC_IndexParamH264CyclicIntraRefresh,			/**< reference type: VencCyclicIntraRefresh */
	VENC_IndexParamH264FixQP,						/**< reference type: VencH264FixQP */
	

	/* jpeg param */
	VENC_IndexParamJpegQuality			= 0x200,	/**< reference type: int (1~100) */
	VENC_IndexParamJpegExifInfo,                  	/**< reference type: EXIFInfo */

	/* VP8 param */
	VENC_IndexParamVP8Param,	

}VENC_INDEXTYPE;

typedef enum VENC_RESULT_TYPE
{
    VENC_RESULT_ERROR             = -1,
    VENC_RESULT_OK             	  = 0,
    VENC_RESULT_NO_FRAME_BUFFER   = 1,
    VENC_RESULT_BITSTREAM_IS_FULL = 2,
}VENC_RESULT_TYPE;


typedef struct JpegEncInfo
{
	VencBaseConfig  sBaseInfo;
	int             bNoUseAddrPhy;
	unsigned char*  pAddrPhyY;
	unsigned char*  pAddrPhyC;
	unsigned char*  pAddrVirY;
	unsigned char*  pAddrVirC;
	int 		    bEnableCorp;
	VencRect        sCropInfo;
	int				quality;
}JpegEncInfo;

int AWJpecEnc(JpegEncInfo* pJpegInfo, EXIFInfo* pExifInfo, void* pOutBuffer, int* pOutBufferSize);


typedef void* VideoEncoder;

VideoEncoder* VideoEncCreate(VENC_CODEC_TYPE eCodecType);
void VideoEncDestroy(VideoEncoder* pEncoder);
int VideoEncInit(VideoEncoder* pEncoder, VencBaseConfig* pConfig);
int VideoEncUnInit(VideoEncoder* pEncoder);

int AllocInputBuffer(VideoEncoder* pEncoder, VencAllocateBufferParam *pBufferParam);
int GetOneAllocInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pInputbuffer);
int FlushCacheAllocInputBuffer(VideoEncoder* pEncoder,  VencInputBuffer *pInputbuffer);
int ReturnOneAllocInputBuffer(VideoEncoder* pEncoder,  VencInputBuffer *pInputbuffer);
int ReleaseAllocInputBuffer(VideoEncoder* pEncoder);


int AddOneInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pInputbuffer);
int VideoEncodeOneFrame(VideoEncoder* pEncoder);
int AlreadyUsedInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pBuffer);

int ValidBitstreamFrameNum(VideoEncoder* pEncoder);
int GetOneBitstreamFrame(VideoEncoder* pEncoder, VencOutputBuffer* pBuffer);
int FreeOneBitStreamFrame(VideoEncoder* pEncoder, VencOutputBuffer* pBuffer);

int VideoEncGetParameter(VideoEncoder* pEncoder, VENC_INDEXTYPE indexType, void* paramData);
int VideoEncSetParameter(VideoEncoder* pEncoder, VENC_INDEXTYPE indexType, void* paramData);


#endif	//_VENCODER_H_

#ifdef __cplusplus
}
#endif /* __cplusplus */

vencoder.c

/*
* Cedarx framework.
* Copyright (c) 2008-2015 Allwinner Technology Co. Ltd.
* Author: Ning Fang <fangning@allwinnertech.com>
* 
* This file is part of Cedarx.
*
* Cedarx is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
* kind, whether express or implied; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
 
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#include "log.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <pthread.h>
#include "vencoder.h"
#include "FrameBufferManager.h"
#include "venc_device.h"
#include "EncAdapter.h"


#define FRAME_BUFFER_NUM 4

typedef struct VencContext
{
   VENC_DEVICE*         pVEncDevice;
   void*                pEncoderHandle;
   FrameBufferManager*  pFBM;
   VencBaseConfig    	baseConfig;
   unsigned int		    nFrameBufferNum;
   VencHeaderData		headerData;
   VencInputBuffer      curEncInputbuffer;
   VENC_CODEC_TYPE 		codecType;
   unsigned int         ICVersion;
   int                  bInit;
}VencContext;

VideoEncoder* VideoEncCreate(VENC_CODEC_TYPE eCodecType)
{
	VencContext* venc_ctx = NULL;

    if(EncAdapterInitialize() != 0)
    {
        loge("can not set up video engine runtime environment.");
        return NULL;
    }
	venc_ctx = (VencContext*)malloc(sizeof(VencContext));
	if(!venc_ctx){
		loge("malloc VencContext fail!");
		return NULL;
	}

	memset(venc_ctx, 0,sizeof(VencContext));

	venc_ctx->nFrameBufferNum = FRAME_BUFFER_NUM;
	venc_ctx->codecType = eCodecType;
	venc_ctx->ICVersion = EncAdapterGetICVersion();
	venc_ctx->bInit = 0;
	
	venc_ctx->pVEncDevice = VencoderDeviceCreate(eCodecType);
	if(venc_ctx->pVEncDevice == NULL)
	{
		free(venc_ctx);
		return NULL;
	}

	venc_ctx->pEncoderHandle = venc_ctx->pVEncDevice->open();

	if(!venc_ctx->pEncoderHandle)
	{
		VencoderDeviceDestroy(venc_ctx->pVEncDevice);
		venc_ctx->pVEncDevice = NULL;
		free(venc_ctx);
		return NULL;
	}

	return (VideoEncoder*)venc_ctx;	
}

void VideoEncDestroy(VideoEncoder* pEncoder)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;

	VideoEncUnInit(pEncoder);

	if(venc_ctx->pVEncDevice)
	{
		venc_ctx->pVEncDevice->close(venc_ctx->pEncoderHandle);
		VencoderDeviceDestroy(venc_ctx->pVEncDevice);
		venc_ctx->pVEncDevice = NULL;
		venc_ctx->pEncoderHandle = NULL;
	}

	EncAdpaterRelease();

	if(venc_ctx)
	{
		free(venc_ctx);
	}
}

int VideoEncInit(VideoEncoder* pEncoder, VencBaseConfig* pConfig)
{
	int result = 0;
	VencContext* venc_ctx = (VencContext*)pEncoder;
	
	if(pEncoder == NULL || pConfig == NULL || venc_ctx->bInit)
	{
		loge("InitVideoEncoder, param is NULL");
		return -1;
	}
	venc_ctx->pFBM = FrameBufferManagerCreate(venc_ctx->nFrameBufferNum);

	if(venc_ctx->pFBM == NULL)
	{

		loge("venc_ctx->pFBM == NULL");
		return -1;
	}

	logd("(f:%s, l:%d)", __FUNCTION__, __LINE__);

	if(venc_ctx->ICVersion == 0x1639)
	{
		if(pConfig->nDstWidth >= 3840 || pConfig->nDstHeight>= 2160)
		{
			VeInitEncoderPerformance(1);

		}
		else
		{
			VeInitEncoderPerformance(0);
			logd("VeInitEncoderPerformance");
		}
	}

	logd("(f:%s, l:%d)", __FUNCTION__, __LINE__);


	memcpy(&venc_ctx->baseConfig, pConfig, sizeof(VencBaseConfig));

	EncAdapterLockVideoEngine();
	result = venc_ctx->pVEncDevice->init(venc_ctx->pEncoderHandle, &venc_ctx->baseConfig);
	EncAdapterUnLockVideoEngine();

	venc_ctx->bInit = 1;
	return result;
}

int VideoEncUnInit(VideoEncoder* pEncoder)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(!venc_ctx->bInit)
	{
		return -1;
	}

 	venc_ctx->pVEncDevice->uninit(venc_ctx->pEncoderHandle);

	if(venc_ctx->ICVersion == 0x1639)
	{
		if(venc_ctx->baseConfig.nDstWidth >= 3840 || venc_ctx->baseConfig.nDstHeight >= 2160)
		{
			VeUninitEncoderPerformance(1);

		}
		else
		{
			VeUninitEncoderPerformance(0);
			logd("VeUninitEncoderPerformance");
		}
	}

	if(venc_ctx->pFBM)
	{
		FrameBufferManagerDestroy(venc_ctx->pFBM);
		venc_ctx->pFBM = NULL;
	}

	venc_ctx->bInit = 0;
	return 0;
}

int AllocInputBuffer(VideoEncoder* pEncoder, VencAllocateBufferParam *pBufferParam)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	
	if(pEncoder == NULL || pBufferParam == NULL)
	{
		loge("InitVideoEncoder, param is NULL");
		return -1;
	}

	if(venc_ctx->pFBM == NULL)
	{

		loge("venc_ctx->pFBM == NULL, must call InitVideoEncoder firstly");
		return -1;
	}

	if(AllocateInputBuffer(venc_ctx->pFBM, pBufferParam)!=0)
	{

		loge("allocat inputbuffer failed");
		return -1;		
	}

	return 0;
}

int GetOneAllocInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pInputbuffer)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	
	if(pEncoder == NULL)
	{
		loge("pEncoder == NULL");
		return -1;
	}

	if(GetOneAllocateInputBuffer(venc_ctx->pFBM, pInputbuffer) != 0)
	{

		loge("get one allocate inputbuffer failed");
		return -1;		
	}

	return 0;
}

int FlushCacheAllocInputBuffer(VideoEncoder* pEncoder,  VencInputBuffer *pInputbuffer)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	
	if(venc_ctx == NULL)
	{
		loge("pEncoder == NULL");
		return -1;
	}

	FlushCacheAllocateInputBuffer(venc_ctx->pFBM, pInputbuffer);

	return 0;
}

int ReturnOneAllocInputBuffer(VideoEncoder* pEncoder,  VencInputBuffer *pInputbuffer)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(pEncoder == NULL)
	{
		loge("pEncoder == NULL");
		return -1;
	}

	if(ReturnOneAllocateInputBuffer(venc_ctx->pFBM, pInputbuffer) != 0)
	{

		loge("get one allocate inputbuffer failed");
		return -1;		
	}

	return 0;
}


int ReleaseAllocInputBuffer(VideoEncoder* pEncoder)
{
	if(pEncoder == NULL)
	{
		loge("ReleaseAllocInputBuffer, pEncoder is NULL");
		return -1;
	}
	return 0;
}

int AddOneInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pBuffer)
{
	int result = 0;
	VencContext* venc_ctx = (VencContext*)pEncoder;
	
	if(venc_ctx == NULL || pBuffer == NULL)
	{
		loge("AddInputBuffer, param is NULL");
		return -1;
	}

	result = AddInputBuffer(venc_ctx->pFBM, pBuffer);
	
	return result;
}

int VideoEncodeOneFrame(VideoEncoder* pEncoder)
{
	int result = 0;
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(!venc_ctx) {
		return -1;
	}
	
	if(GetInputBuffer(venc_ctx->pFBM, &venc_ctx->curEncInputbuffer) != 0)
	{
		return VENC_RESULT_NO_FRAME_BUFFER;
	}

	if(venc_ctx->ICVersion == 0x1639)
	{
		if((unsigned long)(venc_ctx->curEncInputbuffer.pAddrPhyY) >= 0x20000000)
		{
			venc_ctx->curEncInputbuffer.pAddrPhyY -= 0x20000000;
		}
		else
		{
			logw("venc_ctx->curEncInputbuffer.pAddrPhyY: %p, maybe not right", venc_ctx->curEncInputbuffer.pAddrPhyY);
		}

		if((unsigned long)venc_ctx->curEncInputbuffer.pAddrPhyC >= 0x20000000)
		{
			venc_ctx->curEncInputbuffer.pAddrPhyC -= 0x20000000;
		}
	}
	else
	{
		if((unsigned long)venc_ctx->curEncInputbuffer.pAddrPhyY >= 0x40000000)
		{
			venc_ctx->curEncInputbuffer.pAddrPhyY -= 0x40000000;
		}
		else
		{
			logw("venc_ctx->curEncInputbuffer.pAddrPhyY: %p, maybe not right", venc_ctx->curEncInputbuffer.pAddrPhyY);
		}

		if((unsigned long)venc_ctx->curEncInputbuffer.pAddrPhyC >= 0x40000000)
		{
			venc_ctx->curEncInputbuffer.pAddrPhyC -= 0x40000000;
		}
	}

	EncAdapterLockVideoEngine();
	result = venc_ctx->pVEncDevice->encode(venc_ctx->pEncoderHandle, &venc_ctx->curEncInputbuffer);
	EncAdapterUnLockVideoEngine();

	AddUsedInputBuffer(venc_ctx->pFBM, &venc_ctx->curEncInputbuffer);
	
	return result;
}

int AlreadyUsedInputBuffer(VideoEncoder* pEncoder, VencInputBuffer* pBuffer)
{
	int result = 0;
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(venc_ctx == NULL || pBuffer == NULL)
	{
		loge("AddInputBuffer, param is NULL");
		return -1;
	}

	result = GetUsedInputBuffer(venc_ctx->pFBM, pBuffer);
	return result;
}

int ValidBitstreamFrameNum(VideoEncoder* pEncoder)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	return venc_ctx->pVEncDevice->ValidBitStreamFrameNum(venc_ctx->pEncoderHandle);
}

int GetOneBitstreamFrame(VideoEncoder* pEncoder, VencOutputBuffer* pBuffer)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(!venc_ctx) {
		return -1;
	}
	
	if(venc_ctx->pVEncDevice->GetOneBitStreamFrame(venc_ctx->pEncoderHandle, pBuffer)!=0)
	{
		return -1;

	}
	
	return 0;
}

int FreeOneBitStreamFrame(VideoEncoder* pEncoder, VencOutputBuffer* pBuffer)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;

	if(!venc_ctx) {
		return -1;
	}
	
	if(venc_ctx->pVEncDevice->FreeOneBitStreamFrame(venc_ctx->pEncoderHandle, pBuffer)!=0)
	{
		return -1;
	}
	return 0;	
}

int VideoEncGetParameter(VideoEncoder* pEncoder, VENC_INDEXTYPE indexType, void* paramData)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	return venc_ctx->pVEncDevice->GetParameter(venc_ctx->pEncoderHandle, indexType, paramData);
}

int VideoEncSetParameter(VideoEncoder* pEncoder, VENC_INDEXTYPE indexType, void* paramData)
{
	VencContext* venc_ctx = (VencContext*)pEncoder;
	return venc_ctx->pVEncDevice->SetParameter(venc_ctx->pEncoderHandle, indexType, paramData);
}

int AWJpecEnc(JpegEncInfo* pJpegInfo, EXIFInfo* pExifInfo, void* pOutBuffer, int* pOutBufferSize)
{
	VencAllocateBufferParam bufferParam;
	VideoEncoder* pVideoEnc = NULL;
	VencInputBuffer inputBuffer;
	VencOutputBuffer outputBuffer;
	int result = 0;

	pVideoEnc = VideoEncCreate(VENC_CODEC_JPEG);
	VideoEncSetParameter(pVideoEnc, VENC_IndexParamJpegExifInfo, pExifInfo);
	VideoEncSetParameter(pVideoEnc, VENC_IndexParamJpegQuality, &pJpegInfo->quality);
	
	if(VideoEncInit(pVideoEnc, &pJpegInfo->sBaseInfo)< 0)
	{
		result = -1;
		goto ERROR;
	}

	if(pJpegInfo->bNoUseAddrPhy)
	{
		bufferParam.nSizeY = pJpegInfo->sBaseInfo.nStride*pJpegInfo->sBaseInfo.nInputHeight;
		bufferParam.nSizeC = bufferParam.nSizeY>>1;
		bufferParam.nBufferNum = 1;

		if(AllocInputBuffer(pVideoEnc, &bufferParam)<0)
		{
			result = -1;
			goto ERROR;
		}

		GetOneAllocInputBuffer(pVideoEnc, &inputBuffer);
		memcpy(inputBuffer.pAddrVirY, pJpegInfo->pAddrPhyY, bufferParam.nSizeY);
		memcpy(inputBuffer.pAddrVirC, pJpegInfo->pAddrPhyC, bufferParam.nSizeC);

		FlushCacheAllocInputBuffer(pVideoEnc, &inputBuffer);
	}
	else
	{
		inputBuffer.pAddrPhyY = pJpegInfo->pAddrPhyY;
		inputBuffer.pAddrPhyC = pJpegInfo->pAddrPhyC;
	}

	inputBuffer.bEnableCorp         = pJpegInfo->bEnableCorp;
	inputBuffer.sCropInfo.nLeft     =  pJpegInfo->sCropInfo.nLeft;
	inputBuffer.sCropInfo.nTop		=  pJpegInfo->sCropInfo.nTop;
	inputBuffer.sCropInfo.nWidth    =  pJpegInfo->sCropInfo.nWidth;
	inputBuffer.sCropInfo.nHeight   =  pJpegInfo->sCropInfo.nHeight;

	AddOneInputBuffer(pVideoEnc, &inputBuffer);
	if(VideoEncodeOneFrame(pVideoEnc)!= 0)
	{
		loge("jpeg encoder error");
	}

	AlreadyUsedInputBuffer(pVideoEnc,&inputBuffer);
	
	if(pJpegInfo->bNoUseAddrPhy)
	{
		ReturnOneAllocInputBuffer(pVideoEnc, &inputBuffer);
	}

	GetOneBitstreamFrame(pVideoEnc, &outputBuffer);

	memcpy(pOutBuffer, outputBuffer.pData0, outputBuffer.nSize0);
	if(outputBuffer.nSize1)
	{
		memcpy(((unsigned char*)pOutBuffer + outputBuffer.nSize0), outputBuffer.pData1, outputBuffer.nSize1);

		*pOutBufferSize = outputBuffer.nSize0 + outputBuffer.nSize1;
	}
	else
	{
		*pOutBufferSize = outputBuffer.nSize0;
	}
	
	FreeOneBitStreamFrame(pVideoEnc, &outputBuffer);

ERROR:
	
	if(pVideoEnc)
	{
		VideoEncDestroy(pVideoEnc);
	}
	
	return result;
}

#ifdef __cplusplus
}
#endif /* __cplusplus */




离线

楼主 #6 2018-03-31 11:35:54

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

libVE.so 核心代码: ve.c

/*
* Cedarx framework.
* Copyright (c) 2008-2015 Allwinner Technology Co. Ltd.
* Copyright (c) 2014 BZ Chen <bzchen@allwinnertech.com>
*
* This file is part of Cedarx.
*
* Cedarx is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
* kind, whether express or implied; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
#include "log.h"
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <fcntl.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <time.h>
#include <sys/mman.h>
#include <pthread.h>
#include "ve.h"
#include <sys/ioctl.h>
//#include "vdecoder.h"

#include "cedardev_api.h"

#define PAGE_OFFSET (0xc0000000) // from kernel
#define PAGE_SIZE (4096)

static pthread_mutex_t  gVeMutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t  gVeRegisterMutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t  gVeDecoderMutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t  gVeEncoderMutex = PTHREAD_MUTEX_INITIALIZER;

#if (CONFIG_MEMORY_DRIVER == OPTION_MEMORY_DRIVER_VE)
static pthread_mutex_t  gVeMemoryMutex = PTHREAD_MUTEX_INITIALIZER;

struct MemChunkS
{
	unsigned int physAddr;
	int size;
	void *virtAddr;
	struct MemChunkS *next;
};

struct MemChunkS firstMemchunk;

struct CedarvCacheRangeS
{
    long start;
    long end;
};
#endif

static int              gVeRefCount = 0;
int                     gVeDriverFd = -1;
struct cedarv_env_infomation gVeEnvironmentInfo;

#define VE_MODE_SELECT 0x00
#define VE_RESET	   0x04

static int              gNomalEncRefCount = 0;
static int              gPerfEncRefCount = 0;


int VeInitialize(void)
{
    pthread_mutex_lock(&gVeMutex);
    
    if(gVeRefCount == 0)
    {
        //* open Ve driver.
        gVeDriverFd = open("/dev/cedar_dev", O_RDWR);
        if(gVeDriverFd < 0)
        {
            loge("open /dev/cedar_dev fail.");
            pthread_mutex_unlock(&gVeMutex);
            return -1;
        }
        
        //* set ve reference count to zero.
        //* we must reset it to zero to fix refcount error when process crash.
        ioctl(gVeDriverFd, IOCTL_SET_REFCOUNT, 0);
        //* request ve.
        ioctl(gVeDriverFd, IOCTL_ENGINE_REQ, 0);
        
        //* map registers.
        ioctl(gVeDriverFd, IOCTL_GET_ENV_INFO, (unsigned long)&gVeEnvironmentInfo);
		gVeEnvironmentInfo.address_macc = (unsigned int)mmap(NULL, 
                                                             2048, 
                                                             PROT_READ | PROT_WRITE, MAP_SHARED,
                                                             gVeDriverFd, 
                                                             (int)gVeEnvironmentInfo.address_macc);

		//* reset ve.
        VeReset();
#if (CONFIG_MEMORY_DRIVER == OPTION_MEMORY_DRIVER_VE)
        firstMemchunk.physAddr = gVeEnvironmentInfo.phymem_start - PAGE_OFFSET;
        firstMemchunk.size = gVeEnvironmentInfo.phymem_total_size;
        logd("xxxxxxx firstMemchunk.size(%d) '0x%x'", firstMemchunk.size, firstMemchunk.physAddr);
#endif
    }
    
    gVeRefCount++;
    
    pthread_mutex_unlock(&gVeMutex);
    
    return 0;    
}


void VeRelease(void)
{
    pthread_mutex_lock(&gVeMutex);
    
    if(gVeRefCount <= 0)
    {
        loge("invalid status, gVeRefCount=%d at AdpaterRelease", gVeRefCount);
        pthread_mutex_unlock(&gVeMutex);
        return;
    }
    
    gVeRefCount--;
    
    if(gVeRefCount == 0)
    {
        if(gVeDriverFd != -1)
        {
            ioctl(gVeDriverFd, IOCTL_ENGINE_REL, 0);
            munmap((void *)gVeEnvironmentInfo.address_macc, 2048);
            close(gVeDriverFd);
            gVeDriverFd = -1;
        }
    }
    
    pthread_mutex_unlock(&gVeMutex);
    
    return;
}


int VeLock(void)
{
    return pthread_mutex_lock(&gVeDecoderMutex);
}


void VeUnLock(void)
{
    pthread_mutex_unlock(&gVeDecoderMutex);
}


int VeEncoderLock(void)
{
	return VeLock();
}


void VeEncoderUnLock(void)
{
	VeUnLock();
}

void VeSetDramType()
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	switch (VeGetDramType())
	{
		case DDRTYPE_DDR1_16BITS:
			pVeModeSelect->ddr_mode = 0;
			break;
	
		case DDRTYPE_DDR1_32BITS:
		case DDRTYPE_DDR2_16BITS:
			pVeModeSelect->ddr_mode = 1;
			break;
	
		case DDRTYPE_DDR2_32BITS:
		case DDRTYPE_DDR3_16BITS:
			pVeModeSelect->ddr_mode = 2;
			break;
	
		case DDRTYPE_DDR3_32BITS:
		case DDRTYPE_DDR3_64BITS:
			pVeModeSelect->ddr_mode = 3;
			pVeModeSelect->rec_wr_mode = 1;
			break;
	
		default:
			break;
	}
	pthread_mutex_unlock(&gVeRegisterMutex);
}

void VeReset(void)
{
    ioctl(gVeDriverFd, IOCTL_RESET_VE, 0);
	VeSetDramType();
}

int VeWaitInterrupt(void)
{
    int ret;

    ret = ioctl(gVeDriverFd, IOCTL_WAIT_VE_DE, 1);
    if(ret <= 0)
    {
        logw("wait ve interrupt timeout.");
        return -1;  //* wait ve interrupt fail.
    }
    else
        return 0;
}

int VeWaitEncoderInterrupt(void)
{
    int ret;
	
    ret = ioctl(gVeDriverFd, IOCTL_WAIT_VE_EN, 1);
    if(ret <= 0)
        return -1;  //* wait ve interrupt fail.
    else
        return 0;
}


void* VeGetRegisterBaseAddress(void)
{
    return (void*)gVeEnvironmentInfo.address_macc;
}


unsigned int VeGetIcVersion()
{
    if(gVeRefCount >0)
    {
		volatile unsigned int value;
   		value = *((unsigned int*)((char *)gVeEnvironmentInfo.address_macc + 0xf0));
		return (value>>16);
    }
	else
	{
		loge("must call VeGetIcVersion(), affer VeInitialize");
		return 0;
	}
}

int VeGetDramType(void)
{
    //* can we know memory type by some system api?
#if CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR1_16BITS
    return DDRTYPE_DDR1_16BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR1_32BITS
    return DDRTYPE_DDR1_32BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR2_16BITS
    return DDRTYPE_DDR2_16BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR2_32BITS
    return DDRTYPE_DDR2_32BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR3_16BITS
    return DDRTYPE_DDR3_16BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR3_32BITS
    return DDRTYPE_DDR3_32BITS;
#elif CONFIG_DRAM_INTERFACE == OPTION_DRAM_INTERFACE_DDR3_64BITS
    return DDRTYPE_DDR3_64BITS;
#else
    #error "invalid ddr type configuration."
#endif
}


int VeSetSpeed(int nSpeedMHz)
{
    return ioctl(gVeDriverFd, IOCTL_SET_VE_FREQ, nSpeedMHz);
}


void VeEnableEncoder()
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	pVeModeSelect->mode = 11;
	pVeModeSelect->enc_enable = 1;
	pVeModeSelect->enc_isp_enable = 1;
	pthread_mutex_unlock(&gVeRegisterMutex);
}

void VeDisableEncoder()
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	pVeModeSelect->mode = 0x7;
	pVeModeSelect->enc_enable = 0;
	pVeModeSelect->enc_isp_enable = 0;
	pthread_mutex_unlock(&gVeRegisterMutex);	
}

void VeEnableDecoder(enum VeRegionE region)
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	
//	pVeModeSelect->mode = nDecoderMode;

	switch (region)
	{
		case VE_REGION_0:
			pVeModeSelect->mode = 0;
			break;
	    case VE_REGION_1:
			pVeModeSelect->mode = 1; //* MPEG1/2/4 or JPEG decoder.
            break;
	    case VE_REGION_2:
	    case VE_REGION_3:
		default:
			pVeModeSelect->mode = 0; //* MPEG1/2/4 or JPEG decoder.
			break;
	}
	pthread_mutex_unlock(&gVeRegisterMutex);		
}

void VeDisableDecoder()
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	pVeModeSelect->mode = 7;
	pthread_mutex_unlock(&gVeRegisterMutex);	
}

void VeDecoderWidthMode(int nWidth)
{
	volatile vetop_reg_mode_sel_t* pVeModeSelect;
	pthread_mutex_lock(&gVeRegisterMutex);
	pVeModeSelect = (vetop_reg_mode_sel_t*)(gVeEnvironmentInfo.address_macc + VE_MODE_SELECT);
	
	if(nWidth >= 4096)
	{
		pVeModeSelect->pic_width_more_2048 = 1;
	}
	else if(nWidth >= 2048)
	{
		pVeModeSelect->pic_width_more_2048 = 1;
	}
	else
	{
		pVeModeSelect->pic_width_more_2048 = 0;
	}
	pthread_mutex_unlock(&gVeRegisterMutex);
}

void VeResetDecoder()
{
	VeReset();	
}


void VeResetEncoder()
{
	VeReset();	
}

void VeInitEncoderPerformance(int nMode) //* 0: normal performance; 1. high performance 
{
	CEDARX_UNUSE(nMode);
}

void VeUninitEncoderPerformance(int nMode) //* 0: normal performance; 1. high performance 
{
	CEDARX_UNUSE(nMode);
}

//******************************************************************************************
//* for malloc from ve
#if (CONFIG_MEMORY_DRIVER == OPTION_MEMORY_DRIVER_VE)
void *VeMalloc(int size)
{
    if(gVeDriverFd == -1)
    {
        loge("invalid fd.");
        return NULL;
    }
    pthread_mutex_lock(&gVeMemoryMutex);

    void *addr = NULL;
    size = (size + PAGE_SIZE - 1) & ~(PAGE_SIZE - 1); /* align to 4096 */
    struct MemChunkS *c, *bestChunk = NULL;
    for (c = &firstMemchunk; c != NULL; c = c->next)
    {
        if(c->virtAddr == NULL && c->size >= size)
        {
            if(bestChunk == NULL || c->size < bestChunk->size)
            {
                bestChunk = c;
            }
            if(c->size == size)
            {
                break;
            }
        }
    }

    if(!bestChunk)
    {
        logw("no bestChunk");
        goto out;
    }

    int leftSize = bestChunk->size - size;

    addr = mmap(NULL, 
                size, 
                PROT_READ | PROT_WRITE, 
                MAP_SHARED, 
                gVeDriverFd,
                bestChunk->physAddr+PAGE_OFFSET);
    if(addr == MAP_FAILED)
    {
        loge("map failed.");
        addr = NULL;
        goto out;
    }
    bestChunk->virtAddr = addr;
    bestChunk->size = size;

    if(leftSize > 0)
    {
        c = malloc(sizeof(struct MemChunkS));
        c->physAddr = bestChunk->physAddr + size;
        c->size = leftSize;
        c->virtAddr = NULL;
        c->next = bestChunk->next;
        bestChunk->next = c;
    }
    
out:
    pthread_mutex_unlock(&gVeMemoryMutex);
    return addr;
}

void VeFree(void *ptr)
{
    if(gVeDriverFd == -1 || ptr == NULL)
    {
        loge("fd(%d), ptr(%p).", gVeDriverFd, ptr);
        return;
    }
    
    pthread_mutex_lock(&gVeMemoryMutex);

    struct MemChunkS *c;
    for(c = &firstMemchunk; c != NULL; c = c->next)
    {
        if(c->virtAddr == ptr)
        {
            munmap(ptr, c->size);
            c->virtAddr = NULL;
            break;
        }
    }

    for(c = &firstMemchunk; c != NULL; c = c->next)
    {
        if(c->virtAddr == NULL)
        {
            while(c->next != NULL && c->next->virtAddr == NULL)
            {
                struct MemChunkS *n = c->next;
                c->size += n->size;
                c->next = n->next;
                free(n);
            }
        }
    }
    
    pthread_mutex_unlock(&gVeMemoryMutex);
}

unsigned int VeVir2Phy(void *ptr)
{
    if(gVeDriverFd == -1)
    {
        loge("invalid fd.");
        return 0;
    }

    pthread_mutex_lock(&gVeMemoryMutex);

    unsigned int addr = 0;
    struct MemChunkS *c;
    for(c = &firstMemchunk; c != NULL; c = c->next)
    {
        if(c->virtAddr == NULL)
            continue;

        if(c->virtAddr == ptr)
        {
            addr = c->physAddr;
            break;
        }
        else if(ptr > c->virtAddr && ptr < (c->virtAddr + c->size))
        {
            addr = c->physAddr + (ptr - c->virtAddr);
            break;
        }
    }

    pthread_mutex_unlock(&gVeMemoryMutex);

    return addr;
}

unsigned int VePhy2Vir(void *ptr) //*
{
    unsigned int addrPhy = (unsigned int)ptr;
    
    if(gVeDriverFd == -1)
    {
        loge("invalid fd.");
        return 0;
    }

    pthread_mutex_lock(&gVeMemoryMutex);

    unsigned int addr = 0;
    struct MemChunkS *c;
    for(c = &firstMemchunk; c != NULL; c = c->next)
    {
        if(c->physAddr == 0)
            continue;

        if(c->physAddr == addrPhy)
        {
            addr = (unsigned int)c->virtAddr;
            break;
        }
        else if(addrPhy > c->physAddr && addrPhy < (c->physAddr + c->size))
        {
            addr = (unsigned int)c->virtAddr + (addrPhy - c->physAddr);
            break;
        }
    }

    pthread_mutex_unlock(&gVeMemoryMutex);

    return addr;
}

void VeFlushCache(void *startAddr, int size)
{
    if(gVeDriverFd == -1)
    {
        loge("invalid fd.");
        return ;
    }

    struct CedarvCacheRangeS range =
    {
        .start = (int)startAddr,
        .end = (int)(startAddr + size)
    };

    ioctl(gVeDriverFd, IOCTL_FLUSH_CACHE, (void*)(&range));
}

#endif

ve.h

/*
* Cedarx framework.
* Copyright (c) 2008-2015 Allwinner Technology Co. Ltd.
* Copyright (c) 2014 BZ Chen <bzchen@allwinnertech.com>
*
* This file is part of Cedarx.
*
* Cedarx is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
* kind, whether express or implied; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*/
#ifndef VE_H
#define VE_H

#ifdef __cplusplus
extern "C" {
#endif

enum DRAMTYPE
{
    DDRTYPE_DDR1_16BITS = 0,
    DDRTYPE_DDR1_32BITS = 1,
    DDRTYPE_DDR2_16BITS = 2,
    DDRTYPE_DDR2_32BITS = 3,
    DDRTYPE_DDR3_16BITS = 4,
    DDRTYPE_DDR3_32BITS = 5,
    DDRTYPE_DDR3_64BITS = 6,
    
    DDRTYPE_MIN = DDRTYPE_DDR1_16BITS,
    DDRTYPE_MAX = DDRTYPE_DDR3_64BITS,
};

enum VeRegionE
{
    VE_REGION_INVALID,
    VE_REGION_0, /* Mpeg1/2/4, mjpeg */
    VE_REGION_1, /* H264,VP8 */
    VE_REGION_2, /* VC-1 */
    VE_REGION_3  /* H265 */
};

typedef struct VETOP_REG_MODE_SELECT
{
	volatile unsigned int mode						:4; //* 0: mpeg/jpeg, 1:h264
	volatile unsigned int reserved0					:1;
	volatile unsigned int jpg_dec_en 				:1; //
	volatile unsigned int enc_isp_enable 			:1; //
	volatile unsigned int enc_enable 				:1; //* H264 encoder enable.
	volatile unsigned int read_counter_sel			:1;
	volatile unsigned int write_counter_sel			:1;
	
	volatile unsigned int decclkgen					:1;
	volatile unsigned int encclkgen					:1;
	volatile unsigned int reserved1					:1;
	volatile unsigned int rabvline_spu_dis			:1;
	volatile unsigned int deblk_spu_dis				:1;
	volatile unsigned int mc_spu_dis 				:1;
	volatile unsigned int ddr_mode					:2; //* 00: 16-DDR1, 01: 32-DDR1 or DDR2, 10: 32-DDR2 or 16-DDR3, 11: 32-DDR3
	
	volatile unsigned int reserved2					:1;
	volatile unsigned int mbcntsel					:1;
	volatile unsigned int rec_wr_mode				:1;
	volatile unsigned int pic_width_more_2048		:1;

	volatile unsigned int reserved3			        :1;
	volatile unsigned int reserved4					:9;
}vetop_reg_mode_sel_t;


//* 0x04
typedef struct VETOP_REG_RESET
{
    volatile unsigned int reset                     :1;
    volatile unsigned int reserved0                 :3;
    volatile unsigned int mem_sync_mask             :1;

    volatile unsigned int wdram_clr                 :1;
    volatile unsigned int reserved1                 :2;
    volatile unsigned int write_dram_finish         :1;
    volatile unsigned int ve_sync_idle              :1;     //* this bit can be used to check the status of sync module before rest.
    volatile unsigned int reserved2                 :6;
    volatile unsigned int decoder_reset             :1;     //* 1: reset assert, 0: reset de-assert.
    volatile unsigned int dec_req_mask_enable       :1;     //* 1: mask, 0: pass.
   // volatile unsigned int reserved3	                :6;
    volatile unsigned int  dec_vebk_reset		    :1;		//* 1: reset assert, 0: reset de-assert. used in decoder.
    volatile unsigned int  reserved3				:5;

    volatile unsigned int encoder_reset             :1;     //* 1. reset assert, 0: reset de-assert.
    volatile unsigned int enc_req_mask_enable       :1;     //* 1: mask, 0: pass.
    volatile unsigned int reserved4                 :6;
}vetop_reg_reset_t;


int   VeInitialize(void);

void  VeRelease(void);

int   VeLock(void);

void  VeUnLock(void);

int VeEncoderLock(void);

void VeEncoderUnLock(void);

void VeSetDramType();

void  VeReset(void);

int   VeWaitInterrupt(void);

int VeWaitEncoderInterrupt(void);

void* VeGetRegisterBaseAddress(void);

unsigned int VeGetIcVersion();

int   VeGetDramType(void);

int   VeSetSpeed(int nSpeedMHz);

void VeEnableEncoder();

void VeDisableEncoder();

void VeEnableDecoder(enum VeRegionE region);

void VeDisableDecoder();

void VeDecoderWidthMode(int nWidth);

void VeResetDecoder();

void VeResetEncoder();

void VeInitEncoderPerformance(int nMode);

void VeUninitEncoderPerformance(int nMode);

#if (CONFIG_MEMORY_DRIVER == OPTION_MEMORY_DRIVER_VE)
void *VeMalloc(int size);

void VeFree(void *ptr);

unsigned int VeVir2Phy(void *ptr);

unsigned int VePhy2Vir(void *ptr); //*

void VeFlushCache(void *startAddr, int size);

#endif

#ifdef __cplusplus
}
#endif


#endif




离线

#7 2018-07-09 14:24:55

1066950103
会员
注册时间: 2017-11-17
已发帖子: 61
积分: 46

Re: 入坑V3s camdroid编解码视频

这个是真技术

离线

#8 2018-07-09 20:44:37

7426笨蛋
会员
注册时间: 2018-07-09
已发帖子: 2
积分: 2

Re: 入坑V3s camdroid编解码视频

后续怎么样呢

离线

#9 2018-07-10 12:57:25

dgtg
会员
注册时间: 2017-11-08
已发帖子: 257
积分: 216.5

Re: 入坑V3s camdroid编解码视频

这资料好!
要是C100s的也有就更好了

离线

#10 2018-08-02 09:27:12

tianxingzhe_71
会员
注册时间: 2018-08-02
已发帖子: 1
积分: 1

Re: 入坑V3s camdroid编解码视频

晕哥,现在有空吗,能否请教你一个问题

离线

楼主 #11 2018-08-02 09:41:59

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

有问题直接跟帖就可以了, 编解码的我也没有搞定,我估计在没有源码的情况下只能使用 camdroid 媒体架构,从camdroid里面扣代码才能实现.





离线

#12 2018-10-19 22:41:46

awfans
会员
注册时间: 2018-04-03
已发帖子: 264
积分: 264

Re: 入坑V3s camdroid编解码视频

好帖好帖,正在学习camdroid

离线

#13 2018-11-14 09:52:52

Depwing
会员
注册时间: 2018-11-14
已发帖子: 2
积分: 2

Re: 入坑V3s camdroid编解码视频

晕哥,那个camdroid的入口函数在哪里??我找不到这个函数,然后我在烧写到板子的时候,找不到项目文件开始的入口位置,麻烦你知道一下

离线

楼主 #14 2018-11-14 10:04:32

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

Depwing 说:

晕哥,那个camdroid的入口函数在哪里??我找不到这个函数,然后我在烧写到板子的时候,找不到项目文件开始的入口位置,麻烦你知道一下


入口函数在这个文件: camdroid/device/softwinner/tiger-cdr/app/ccdr/include/window/MainWindow.h

#ifndef _MAINWINDOW_H
#define _MAINWINDOW_H

#include <ProcessState.h>
#include <IPCThreadState.h>

#include <minigui/common.h>
#include <minigui/minigui.h>
#include <minigui/gdi.h>
#include <minigui/window.h>

#include "windows.h"
#include "cdr_message.h"
#include "keyEvent.h"

#include "PowerManager.h"
#include "EventManager.h"

/* MainWindow */
#define ID_TIMER_KEY 100

#define CDRMain \
MiniGUIAppMain (int args, const char* argv[], CdrMain*); \
int main_entry (int args, const char* argv[]) \
{ \
        sys_log_init(); \
        sys_log("main entry\n"); \
    int iRet = 0; \
        CdrMain *cdrMain = new CdrMain(); \
        cdrMain->initPreview(NULL); \
    if (InitGUI (args, argv) != 0) { \
        return 1; \
    } \
    iRet = MiniGUIAppMain (args, argv, cdrMain); \
    TerminateGUI (iRet); \
    return iRet; \
} \
int MiniGUIAppMain
#endif

MiniGUI原理分析: https://blog.csdn.net/lieye_leaves/article/details/8947165





离线

#15 2019-02-20 08:14:18

jw__liu
会员
注册时间: 2019-01-18
已发帖子: 40
积分: 40

Re: 入坑V3s camdroid编解码视频

好东西 mark

离线

#16 2019-02-27 20:28:33

jiffies
会员
注册时间: 2019-02-27
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

注册个账号支持一下晕哥,问一下我编译camdroid的时候出现

arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory

用的编译器版本不对吗?搭建这环境需要哪个版本的编译器?

离线

楼主 #17 2019-02-28 08:03:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

jiffies 说:

注册个账号支持一下晕哥,问一下我编译camdroid的时候出现

arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory

用的编译器版本不对吗?搭建这环境需要哪个版本的编译器?

可能你的 PATH 设置不对 https://blog.csdn.net/hello404/article/details/17099903

也可能是 32/64bit Linux 兼容性问题。





离线

#18 2019-03-02 11:20:47

jiffies
会员
注册时间: 2019-02-27
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

晕哥 说:
jiffies 说:

注册个账号支持一下晕哥,问一下我编译camdroid的时候出现

arm-linux-gnueabi-gcc: error trying to exec 'cc1': execvp: No such file or directory

用的编译器版本不对吗?搭建这环境需要哪个版本的编译器?

可能你的 PATH 设置不对 https://blog.csdn.net/hello404/article/details/17099903

也可能是 32/64bit Linux 兼容性问题。


谢谢晕哥,问题解决了,是兼容性问题安装了一个32位的包就行了

离线

楼主 #19 2019-03-02 11:25:02

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

@jiffies 装的是哪个包呢?





离线

#20 2019-03-05 22:31:35

jiffies
会员
注册时间: 2019-02-27
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

晕哥 说:

@jiffies 装的是哪个包呢?

sudo apt-get install ia32-libs

https://blog.csdn.net/xuezhisdc/article/details/48468143

刚开始搭建环境时没有安装上

离线

楼主 #21 2019-03-05 22:33:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

jiffies 说:
晕哥 说:

@jiffies 装的是哪个包呢?

sudo apt-get install ia32-libs

https://blog.csdn.net/xuezhisdc/article/details/48468143

刚开始搭建环境时没有安装上

果然如此,多谢分享!





离线

#22 2019-03-13 20:09:43

niepzh
会员
注册时间: 2019-03-13
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

请问vencoder.c是在哪个路径下找到的?

离线

楼主 #23 2019-03-13 20:12:15

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

niepzh 说:

请问vencoder.c是在哪个路径下找到的?


https://github.com/allwinner-zh/media-codec/blob/master/sunxi-cedarx/SOURCE/vencoder/vencoder.c





离线

#24 2019-03-14 14:58:01

niepzh
会员
注册时间: 2019-03-13
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

非常感谢!!!

离线

#25 2019-03-15 17:29:58

niepzh
会员
注册时间: 2019-03-13
已发帖子: 3
积分: 3

Re: 入坑V3s camdroid编解码视频

晕哥您好, 我现在在做一个拍照功能, vencoder已经让我导入了, 但是在做AWJpecEnc的是时候,提示ve.c中“open /dev/cedar_dev fail.”。

请问cedar_dev是个驱动吗, 怎样才能导到我的工程里?

离线

#26 2019-07-02 20:24:16

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

晕哥,v3s捕获照片,需要进行转码的,有硬件编码方式获取么?

离线

楼主 #27 2019-07-02 20:25:19

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

目前只会用软件解码 libjpeg, libpng





离线

#28 2019-07-02 20:35:08

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

获取到摄像头的数据时YUV格式的,咋办?软件转码的话速度会很慢。

离线

#29 2019-07-02 20:39:36

smartcar
会员
注册时间: 2018-02-19
已发帖子: 735
积分: 735

Re: 入坑V3s camdroid编解码视频

得研究一下全志的编解码, 可是又没有什么资料.

离线

#30 2019-07-02 20:40:46

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

smartcar 说:

得研究一下全志的编解码, 可是又没有什么资料.

   逛了坑网,发现camdroid 是有这方面的编解码的,但是我的是bsp linux。正在询问晕哥中。

离线

楼主 #31 2019-07-02 20:49:05

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

晕哥小弟 说:
smartcar 说:

得研究一下全志的编解码, 可是又没有什么资料.

   逛了坑网,发现camdroid 是有这方面的编解码的,但是我的是bsp linux。正在询问晕哥中。

camdroid 那个机制很复杂, 用了 android 的框架, 试一试 索智 S3 的里面据说有 Linux 编解码的库.





离线

#32 2019-07-02 20:50:31

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

那有没有sb式入门教程呢?

离线

楼主 #33 2019-07-02 20:53:39

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

我没有用过, 听别的朋友说的.你可以找一下, 反正用 camroid的框架是相当麻烦的.





离线

#34 2019-08-28 09:12:22

太一酱鸭
会员
注册时间: 2019-07-03
已发帖子: 154
积分: 154

Re: 入坑V3s camdroid编解码视频

问一下晕哥,camdroid也是linux内核吗,可以用到v4l2,然后移植opencv这些吗

离线

楼主 #35 2019-08-28 09:25:32

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

对的, 是Linux, 也是标准的 V4L2 接口。





离线

#36 2019-08-28 09:26:59

太一酱鸭
会员
注册时间: 2019-07-03
已发帖子: 154
积分: 154

Re: 入坑V3s camdroid编解码视频

晕哥 说:

对的, 是Linux, 也是标准的 V4L2 接口。

谢谢,我之前的问题委托给全志了,他们是这个内核

离线

楼主 #37 2019-08-28 09:41:30

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

太一酱鸭 说:
晕哥 说:

对的, 是Linux, 也是标准的 V4L2 接口。

谢谢,我之前的问题委托给全志了,他们是这个内核

原厂还是代理商, 代开发?





离线

#38 2019-08-28 11:01:35

太一酱鸭
会员
注册时间: 2019-07-03
已发帖子: 154
积分: 154

Re: 入坑V3s camdroid编解码视频

晕哥 说:
太一酱鸭 说:
晕哥 说:

对的, 是Linux, 也是标准的 V4L2 接口。

谢谢,我之前的问题委托给全志了,他们是这个内核

原厂还是代理商, 代开发?

索智,代画板还有系统驱动

离线

楼主 #39 2019-08-28 11:06:01

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

原来如此, 那省事了 ^_^

你用哪个摄像头?





离线

#40 2019-08-28 11:11:58

太一酱鸭
会员
注册时间: 2019-07-03
已发帖子: 154
积分: 154

Re: 入坑V3s camdroid编解码视频

晕哥 说:

原来如此, 那省事了 ^_^

你用哪个摄像头?

gc0308,便宜

离线

#41 2019-08-28 11:24:17

超级萌新
会员
注册时间: 2018-05-04
已发帖子: 408
积分: 407

Re: 入坑V3s camdroid编解码视频

太一酱鸭 说:
晕哥 说:

原来如此, 那省事了 ^_^

你用哪个摄像头?

gc0308,便宜

这个 sensor 什么价格呢

离线

#42 2019-08-28 14:19:40

yuliang_8
会员
所在地: 番禺 广州 中国
注册时间: 2019-08-28
已发帖子: 20
积分: 20

Re: 入坑V3s camdroid编解码视频

现在为止,有人搞定V3S上的编解码了码?

离线

#43 2019-08-28 14:24:53

超级萌新
会员
注册时间: 2018-05-04
已发帖子: 408
积分: 407

Re: 入坑V3s camdroid编解码视频

yuliang_8 说:

现在为止,有人搞定V3S上的编解码了码?

大把人搞定了,只是闷声发大财

离线

#44 2019-08-28 15:27:35

太一酱鸭
会员
注册时间: 2019-07-03
已发帖子: 154
积分: 154

Re: 入坑V3s camdroid编解码视频

超级萌新 说:
太一酱鸭 说:
晕哥 说:

原来如此, 那省事了 ^_^

你用哪个摄像头?

gc0308,便宜

这个 sensor 什么价格呢

我也不知道厂商那边报价多少

离线

#45 2019-09-23 14:02:10

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

晕哥 说:

github上面找到两本红宝书, 不敢独享:

Video-Encoder-API.pdf

Video-Decoder-API.pdf

参考链接1: allwinner-zh/media-codec


-----------------------------------
有找到几个相关的文档:
参考链接2: CamDroid编译第三方app
参考链接3: camdroid使用的linux ndk版本 android-ndk-r8b-linux-x86.tar.bz2
参考链接4: camdroid使用的windows ndk版本 android-ndk-r8b-windows.zip
参考链接5: Android NDK 工具链的使用方法(Standalone Toolchain)
参考链接6: 直接使用ndk提供的arm-linux-androideabi-gcc编译android可执行程序

使用 make-standalone-toolchain.sh --platform=android-14 可以创建单独的工具链,

# /d/Downloads/android-ndk-r8b/build/tools/make-standalone-toolchain.sh --platform=android-14

Auto-config: --toolchain=arm-linux-androideabi-4.6
Copying prebuilt binaries...
Copying sysroot headers and libraries...
Copying libstdc++ headers and libraries...
Creating package file: /tmp/ndk-/arm-linux-androideabi-4.6.tar.bz2
Cleaning up...
Done.

解压arm-linux-androideabi-4.6.tar.bz2, 设置系统PATH,

然后可以使用

arm-linux-androideabi-gcc.exe -o test test.c

这种方式创建camdroid可执行文件。



camdroid代码地址: https://github.com/qq516333132/camdroid


编译上面上面的源码包.在licheepi zero为什么不能进入到系统中,卡在:

In:    serial
Out:   serial
Err:   serial
bootcmd set setargs_mmc
to be run cmd=run setargs_mmc boot_normal
WORK_MODE_BOOT
read bootlogo partition successful,start_block=0x6420,rblock=0x100 ,ret=256
Use decode 1x1 sampling
sunxi_read_bootlogo: jpg convert argb  
[      0.664]Hit any key to stop autoboot:  0 
read boot or recovery all
[      0.834]sunxi flash read :offset 4000, 3889145 bytes OK
no signature
[      0.841]ready to boot
para err in disp_ioctl, cmd = 0xa,screen id = 1
[      0.848][mmc]: MMC Device 2 not found
[      0.852][mmc]:  mmc  not find,so not exit
reload config to 0x43000000 
[      0.856]
Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0
[    0.000000] Linux version 3.4.39 (he@he) (gcc version 4.6.3 20120201 (prerelease) (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) ) #1 Tue Sep 17 11:45:39 CST 2019
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: sun8i
[    0.000000] Initialized persistent memory from 41d20800-41d307ff
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] On node 0 totalpages: 16384
[    0.000000] free_area_init_node: node 0, pgdat c0520ae4, node_mem_map c05bb000
[    0.000000]   Normal zone: 128 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 16256 pages, LIFO batch:3
[    0.000000] script_init enter!
[    0.000000] script_init exit!
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p7 init=/init loglevel=8 partitions= mac_addr= uid=1234567890 fb_base=0x43e80000 boot_type=1 config_size=32384
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 64MB = 64MB total
[    0.000000] Memory: 29928k/29928k available, 35608k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xc4800000 - 0xff000000   ( 936 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc048d000   (4628 kB)
[    0.000000]       .init : 0xc048d000 - 0xc04b0000   ( 140 kB)
[    0.000000]       .data : 0xc04b0000 - 0xc0521220   ( 453 kB)
[    0.000000]        .bss : 0xc0521244 - 0xc05ba964   ( 614 kB)
[    0.000000] NR_IRQS:544
[    0.000000] 524 ahb1 set parent pll_periph0d2
[    0.000000] Architected local timer running at 24.00MHz.
[    0.000000] Switching to timer-based delay loop
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[    0.000000] Console: colour dummy device 80x30
[    0.000160] Calibrating delay loop (skipped), value calculated using timer frequency.. 4800.00 BogoMIPS (lpj=24000000)
[    0.000181] pid_max: default: 32768 minimum: 301
[    0.000314] Mount-cache hash table entries: 512
[    0.000829] CPU: Testing write buffer coherency: ok
[    0.001094] Setting up static identity map for 0x40366de8 - 0x40366e40
[    0.001745] devtmpfs: initialized
[    0.003598] pinctrl core: initialized pinctrl subsystem
[    0.004088] NET: Registered protocol family 16
[    0.004477] DMA: preallocated 128 KiB pool for atomic coherent allocations
[    0.004528] script_sysfs_init success
[    0.004563] sunxi_dump_init success
[    0.005277] gpiochip_add: registered GPIOs 0 to 223 on device: sunxi-pinctrl
[    0.006162] sunxi-pinctrl sunxi-pinctrl: initialized sunXi PIO driver
[    0.006529] gpiochip_add: registered GPIOs 1024 to 1031 on device: axp-pinctrl
[    0.007389] persistent_ram: found existing buffer, size 58228, start 5022
[    0.261324] console [ram-1] enabled
[    0.261752] [sunxi-module]: [sunxi-module.0] probe success
[    0.262053] axp driver uning configuration failed(801)
[    0.262159] axp driver uning configuration failed(808)
[    0.262631] Not Found clk pll_isp in script 
[    0.262740] Not Found clk pll_video in script 
[    0.262929] Not Found clk pll_ve in script 
[    0.263031] Not Found clk pll_periph0 in script 
[    0.263134] Not Found clk pll_de in script 
[    0.263322] sunxi_default_clk_init
[    0.263424] try to set pll6ahb1 to 200000000
[    0.263538] Error not get clk pll6ahb1
[    0.263731] Error not get clk pll6ahb1try to set ahb1 to 200000000
[    0.263948] try to set apb1 to 100000000
[    0.264449] ===fe3o4==== sunxi_root_procfs_attach ret:0
[    0.268043] bio: create slab <bio-0> at 0
[    0.268402] pwm module init!
[    0.270737] SCSI subsystem initialized
[    0.271072] usbcore: registered new interface driver usbfs
[    0.271328] usbcore: registered new interface driver hub
[    0.271565] usbcore: registered new device driver usb
[    0.271809] twi_chan_cfg()340 - [twi0] has no twi_regulator.
[    0.272005] twi_chan_cfg()340 - [twi1] has no twi_regulator.
[    0.272793] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x34)
[    0.273006] axp20_board 0-0034: failed reading at 0x03
<7>[    0.273194] [AXP20-MFD] try to read chip id failed!
[    0.273298] axp mfd register failed
[    0.273415] axp20_board: probe of 0-0034 failed with error -70
[    0.273652] Linux video capture interface: v2.00
[    0.273848] gpiochip_add: gpios 1024..1028 (axp_pin) failed to register
[    0.274042] axp pinctrl used,skip
[    0.274479] Advanced Linux Sound Architecture Driver Version 1.0.25.
[    0.275570] cfg80211: Calling CRDA to update world regulatory domain
[    0.276612] Switching to clocksource arch_sys_counter
[    0.279936] NET: Registered protocol family 2
[    0.279936] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.279936] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.280069] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.280283] TCP: Hash tables configured (established 2048 bind 2048)
[    0.280389] TCP: reno registered
[    0.280583] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.280699] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.281166] NET: Registered protocol family 1
[    0.281471] Unpacking initramfs...
[    0.296248] Freeing initrd memory: 220K
[    0.296570] [pm]aw_pm_init!
[    0.296681] standby_mode = 1. 
[    0.296784] wakeup src cnt is : 3. 
[    0.296978] pmu name: pmu1_para .
[    0.297087] pmu1_enable = 0x1. 
[    0.297190] pmux_id = 0x1. 
[    0.297296] pmu name: pmu2_para .
[    0.297483] config_pmux_para: script_parser_fetch err. 
[    0.297587] pmu2_enable = 0x0. 
[    0.297694] add_sys_pwr_dm: get ldo name failed
[    0.297882] add_sys_pwr_dm: get ldo name failed
[    0.297987] add_sys_pwr_dm: get ldo name failed
[    0.298180] add_sys_pwr_dm: get ldo name failed
[    0.298283] add_sys_pwr_dm: get ldo name failed
[    0.298386] add_sys_pwr_dm: get ldo name failed
[    0.298575] add_sys_pwr_dm: get ldo name failed
[    0.298680] add_sys_pwr_dm: get ldo name failed
[    0.298870] add_sys_pwr_dm: get ldo name failed
[    0.298974] add_sys_pwr_dm: get ldo name failed
[    0.299077] after inited: sys_mask config = 0x0. 
[    0.299268] dynamic_standby enalbe = 0x0. 
[    0.299429] sunxi_reg_init enter
[    0.301491] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.301647] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.302012] msgmni has been set to 58
[    0.303030] io scheduler noop registered
[    0.303149] io scheduler deadline registered
[    0.303418] io scheduler cfq registered (default)
[    0.303933] [DISP]disp_module_init
[    0.304436] cmdline,disp=
[    0.305131] rotation_sw module is config as no used
[    0.305264] [DISP] disp_get_rotation_sw,line:68:disp 0 out of range? g_rot_sw=0
[    0.305561] [DISP] disp_init_connections,line:289:NULL pointer: 0, 0
[    0.320725] [DISP] disp_sys_power_enable,line:387:some error happen, fail to get regulator 
[    0.321038] [DISP] disp_sys_gpio_set_value,line:374:OSAL_GPIO_DevWRITE_ONEPIN_DATA, hdl is NULL
[    0.322043] [DISP]disp_module_init finish
[    0.322452] sw_uart_get_devinfo()1503 - uart0 has no uart_regulator.
[    0.322996] uart0: ttyS0 at MMIO 0x1c28000 (irq = 32) is a SUNXI
[    0.323115] sw_uart_pm()890 - uart0 clk is already enable
[    0.323316] sw_console_setup()1233 - console setup baud 115200 parity n bits 8, flow n
[    0.515351] console [ttyS0] enabled
[    1.147160] sunxi_spi_chan_cfg()1376 - [spi-0] has no spi_regulator.
[    1.155111] spi spi0: master is unqueued, this is deprecated
[    1.161720] m25p_probe()966 - Use the Dual Mode Read.
[    1.167599] NorFlash ID: 0x0 - 0x0
[    1.171506] m25p80 spi0.0: found m25p05-nonjedec, expected at25df641
[    1.178763] m25p80 spi0.0: m25p05-nonjedec (64 Kbytes)
[    1.186053] partitions_register()849 - m25p80_read() ret 0, PartCnt: 0
[    1.193529] m25p80: probe of spi0.0 failed with error -22
[    1.201121] Failed to alloc md5
[    1.204843] eth0: Use random mac address
[    1.209380] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.236943] sunxi-ehci sunxi-ehci.1: SW USB2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.246182] sunxi-ehci sunxi-ehci.1: new USB bus registered, assigned bus number 1
[    1.254915] sunxi-ehci sunxi-ehci.1: irq 104, io mem 0xf1c1a000
[    1.280040] sunxi-ehci sunxi-ehci.1: USB 0.0 started, EHCI 1.00
[    1.287496] hub 1-0:1.0: USB hub found
[    1.291830] hub 1-0:1.0: 1 port detected
[    1.296784] sunxi-ehci sunxi-ehci.1: remove, state 1
[    1.302463] usb usb1: USB disconnect, device number 1
[    1.602845] sunxi-ehci sunxi-ehci.1: USB bus 1 deregistered
[    1.619314] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.646407] sunxi-ohci sunxi-ohci.1: SW USB2.0 'Open' Host Controller (OHCI) Driver
[    1.655134] sunxi-ohci sunxi-ohci.1: new USB bus registered, assigned bus number 1
[    1.663786] sunxi-ohci sunxi-ohci.1: irq 105, io mem 0xf1c1a400
[    1.734632] hub 1-0:1.0: USB hub found
[    1.738998] hub 1-0:1.0: 1 port detected
[    1.743873] sunxi-ohci sunxi-ohci.1: remove, state 1
[    1.749492] usb usb1: USB disconnect, device number 1
[    1.755877] sunxi-ohci sunxi-ohci.1: USB bus 1 deregistered
[    1.772293] Initializing USB Mass Storage driver...
[    1.777973] usbcore: registered new interface driver usb-storage
[    1.784759] USB Mass Storage support registered.
[    1.790391] file system registered
[    1.795732] android_usb gadget: Mass Storage Function, version: 2009/09/11
[    1.803631] android_usb gadget: Number of LUNs=1
[    1.808854]  lun0: LUN: removable file: (no medium)
[    1.814851] android_usb gadget: android_usb ready
[    1.820433] sunxikbd_script_init: key para not found, used default para. 
[    1.829125] sunxi-rtc sunxi-rtc: rtc core: registered sunxi-rtc as rtc0
[    1.836804] sunxi cedar version 0.1 
[    1.840946] [cedar]: install start!!!
[    1.845444] [cedar]: install end!!!
[    1.849953] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    1.858919] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    1.867777] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    1.876494] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    1.885215] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    1.893845] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    1.902583] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    1.911583] sunxi_wdt_init_module: sunxi WatchDog Timer Driver v1.0
[    1.918827] sunxi_wdt_probe: devm_ioremap return wdt_reg 0xf1c20ca0, res->start 0x01c20ca0, res->end 0x01c20cbf
[    1.930240] sunxi_wdt_probe: initialized (g_timeout=16s, g_nowayout=0)
[    1.937977] wdt_enable, write reg 0xf1c20cb8 val 0x00000000
[    1.944303] wdt_set_tmout, write 0x000000b0 to mode reg 0xf1c20cb8, actual timeout 16 sec
[    1.954141] [mmc]: SD/MMC/SDIO Host Controller Driver(v1.114 2015-6-2 10:21) Compiled in Sep 17 2019 at 11:45:10
[    1.965708] [mmc]: get mmc0's sdc_power failed
[    1.970765] [mmc]: get mmc1's sdc_power failed
[    1.975890] [mmc]: MMC host used card: 0x3, boot card: 0x1, io_card 2
[    1.983960] [mmc]: sdc0 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    1.995108] [mmc]: sdc0 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.005529] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.015534] [mmc]: sdc0 power_supply is null
[    2.023312] sunxi_leds_fetch_sysconfig_para leds is not used in config
[    2.030769] =========script_get_err============
[    2.036112] usbcore: registered new interface driver usbhid
[    2.042440] usbhid: USB HID core driver
[    2.047002] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.058027] ashmem: initialized
[    2.061824] logger: created 256K log 'log_main'
[    2.067274] logger: created 32K log 'log_events'
[    2.072764] logger: created 32K log 'log_radio'
[    2.078005] logger: created 32K log 'log_system'
[    2.084192] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 52,  RTO !!
[    2.093306] script_get_item return audio_pa_ctrl type err
[    2.099517] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 52,  RTO !!
[    2.107902] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.119174] asoc: sndcodec <-> sunxi-codec mapping ok
[    2.128273] TCP: cubic registered
[    2.133126] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.143492] NET: Registered protocol family 17
[    2.148744] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    2.157562] ThumbEE CPU extension supported.
[    2.163594] Registering SWP/SWPB emulation handler
[    2.169120] *******************Try sdio*******************
[    2.176151] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.184719] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    2.193762] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    2.202384] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.210762] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    2.219272] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.227643] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    2.236248] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.244481] *******************Try sd *******************
[    2.250717] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    2.259256] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    2.268101] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    2.276912] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.287345] sunxi-rtc sunxi-rtc: setting system clock to 1970-01-01 00:12:44 UTC (764)
[    2.297589] [wifi module_pm]: failed to fetch wifi configuration!
[    2.304631] [wifi module_pm]: regulator on.
[    2.309396] [wifi_pm]: no wifi used in configuration
[    2.315107] 
[    2.315110] *****Sep 17 2019 11:45:16 EAGLE DRIVER VER:75be56bfbaf7*****
[    2.315116] 
[    2.326407] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.337947] =======================================================
[    2.345153] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[    2.352220] =======================================================
[    2.359364] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[    2.370188] [wifi_pm]: wrong module select 0 !
[    2.476242] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.541498] [mmc]: sdc0 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.557523] [mmc]: sdc0 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B
[    2.568089] [mmc]: sdc0 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B
[    2.578645] [mmc]: sdc0 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B
[    2.589114] mmc0: new high speed SDHC card at address aaaa
[    2.595826] mmcblk0: mmc0:aaaa SC16G 14.8 GiB 
[    2.605399]  mmcblk0: p1 p2 p3 < p5 p6 p7 p8 p9 p10 >
[    2.613032] mmcblk mmc0:aaaa: Card claimed for testing.
[    2.618994] mmc0:aaaa: SC16G 14.8 GiB 
[    2.623430] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    2.632275] *******************sd init ok*******************
[    2.638763] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.648618] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    2.657465] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    2.666076] [mmc]: sdc1 power_supply is null
[    2.672236] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    2.680892] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    2.689425] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    2.698048] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.708434] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    2.732356] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    2.741503] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    2.749915] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.762762] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.775021] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    2.783254] *******************Try sdio*******************
[    2.790327] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.799357] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.808474] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.817591] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.825813] *******************Try sd *******************
[    2.832801] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.841924] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.851134] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.860341] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.868657] *******************Try mmc*******************
[    2.874844] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.886095] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    2.894331] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.904466] [mmc]: sdc1 power_supply is null
[    2.911893] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.923257] [mmc]: sdc1 power_supply is null
[    2.940021] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.972603] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    2.982105] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    2.990513] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.003389] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.015836] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.024147] *******************Try sdio*******************
[    3.031412] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.040789] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.050168] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.059462] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.067769] *******************Try sd *******************
[    3.074939] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.084415] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.093892] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.103280] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.111685] *******************Try mmc*******************
[    3.113250] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.129306] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.137630] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.147716] [mmc]: sdc1 power_supply is null
[    3.155149] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.166512] [mmc]: sdc1 power_supply is null
[    3.190025] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.223131] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.233146] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.241470] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.254676] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.267766] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.276078] *******************Try sdio*******************
[    3.283871] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.293796] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.303647] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.313561] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.321874] *******************Try sd *******************
[    3.329566] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.339581] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.349521] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.359441] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.367851] *******************Try mmc*******************
[    3.373950] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.386043] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.394364] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.404448] [mmc]: sdc1 power_supply is null
[    3.411889] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.423247] [mmc]: sdc1 power_supply is null
[    3.440021] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.472598] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.481993] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.490404] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.503373] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.515898] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.524127] *******************Try sdio*******************
[    3.531475] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.540853] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.550147] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.559520] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.567744] *******************Try sd *******************
[    3.574994] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.584470] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.593877] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.603354] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.611762] *******************Try mmc*******************
[    3.613325] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.629381] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.637610] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.647699] [mmc]: sdc1 power_supply is null
[   13.480033] esp_sdio_init ------ RETRY ------ 
[   13.485141] =======================================================
[   13.492303] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   13.499643] =======================================================
[   13.506790] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   13.517619] [wifi_pm]: wrong module select 0 !
[   13.622659] =======================================================
[   13.629712] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   13.636854] =======================================================
[   13.643997] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   13.654725] [wifi_pm]: wrong module select 0 !
[   13.759871] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.771252] [mmc]: sdc1 power_supply is null
[   13.790034] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.822344] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   13.831486] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   13.839904] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.852733] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.864993] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   13.873228] *******************Try sdio*******************
[   13.880302] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.889332] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.898442] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.907552] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.915776] *******************Try sd *******************
[   13.922764] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.931974] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.941092] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.950302] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.958618] *******************Try mmc*******************
[   13.964804] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.976048] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   13.984281] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.994375] [mmc]: sdc1 power_supply is null
[   14.001885] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.013159] [mmc]: sdc1 power_supply is null
[   14.030024] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.062611] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.072045] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.080457] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.093423] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.105872] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.114211] *******************Try sdio*******************
[   14.121562] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.130858] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.140235] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.149525] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.157832] *******************Try sd *******************
[   14.165088] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.174478] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.183955] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.193431] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.201749] *******************Try mmc*******************
[   14.203403] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.219369] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.227690] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.237782] [mmc]: sdc1 power_supply is null
[   14.245214] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.256576] [mmc]: sdc1 power_supply is null
[   14.280024] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.313135] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.323149] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.331565] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.344690] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.357781] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.366097] *******************Try sdio*******************
[   14.373895] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.383810] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.393745] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.403570] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.411882] *******************Try sd *******************
[   14.419575] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.429590] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.439600] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.449525] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.457935] *******************Try mmc*******************
[   14.464030] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.476116] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.484436] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.494522] [mmc]: sdc1 power_supply is null
[   14.501951] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.513323] [mmc]: sdc1 power_supply is null
[   14.530022] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.562596] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.572075] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.580402] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.593352] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.605880] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.614191] *******************Try sdio*******************
[   14.621453] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.630826] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.640119] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.649493] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.657804] *******************Try sd *******************
[   14.664970] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.674359] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.683763] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.693239] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.701648] *******************Try mmc*******************
[   14.703211] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.719270] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.727592] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.737592] [mmc]: sdc1 power_supply is null
[   24.760027] esp_sdio_init ------ RETRY ------ 
[   24.765136] =======================================================
[   24.772298] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   24.779644] =======================================================
[   24.786790] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   24.797604] [wifi_pm]: wrong module select 0 !
[   24.902638] =======================================================
[   24.909774] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   24.916830] =======================================================
[   24.923972] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   24.934789] [wifi_pm]: wrong module select 0 !
[   25.039840] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.051215] [mmc]: sdc1 power_supply is null
[   25.070030] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.102340] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.111570] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.119894] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.132725] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.144981] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.153207] *******************Try sdio*******************
[   25.160283] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.169391] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.178418] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.187531] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.195840] *******************Try sd *******************
[   25.202744] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.211953] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.221078] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.230286] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.238694] *******************Try mmc*******************
[   25.244791] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.256036] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.264358] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.274363] [mmc]: sdc1 power_supply is null
[   25.281876] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.293150] [mmc]: sdc1 power_supply is null
[   25.310024] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.342604] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.352001] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.360418] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.373368] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.385893] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.394119] *******************Try sdio*******************
[   25.401468] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.410762] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.420142] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.429518] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.437741] *******************Try sd *******************
[   25.444989] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.454379] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.463855] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.473328] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.481651] *******************Try mmc*******************
[   25.483300] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.499356] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.507590] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.517676] [mmc]: sdc1 power_supply is null
[   25.525125] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.536486] [mmc]: sdc1 power_supply is null
[   25.560021] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.593136] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.603154] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.611562] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.624686] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.637775] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.646090] *******************Try sdio*******************
[   25.653885] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.663805] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.673715] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.683544] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.691856] *******************Try sd *******************
[   25.699545] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.709560] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.719565] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.729490] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.737897] *******************Try mmc*******************
[   25.744078] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.756080] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.764395] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.774482] [mmc]: sdc1 power_supply is null
[   25.781906] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.793267] [mmc]: sdc1 power_supply is null
[   25.810020] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.842601] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.852086] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.860414] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.873364] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.885894] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.894211] *******************Try sdio*******************
[   25.901470] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.910853] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.920144] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.929523] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.937836] *******************Try sd *******************
[   25.945000] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.954477] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.963867] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.973343] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.981749] *******************Try mmc*******************
[   25.983315] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.999371] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   26.007685] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   26.017687] [mmc]: sdc1 power_supply is null
[   36.040045] esp_sdio_init ------ RETRY ------ 
[   36.045145] =======================================================
[   36.052301] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   36.059646] =======================================================
[   36.066793] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   36.077606] [wifi_pm]: wrong module select 0 !
[   36.182641] =======================================================
[   36.189775] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   36.196834] =======================================================
[   36.203977] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   36.214794] [wifi_pm]: wrong module select 0 !
[   36.319844] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.331219] [mmc]: sdc1 power_supply is null
[   36.350029] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.382345] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.391484] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.399811] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.412639] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.424898] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.433215] *******************Try sdio*******************
[   36.440200] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.449315] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.458340] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.467444] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.475754] *******************Try sd *******************
[   36.482654] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.491865] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.500987] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.510197] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.518609] *******************Try mmc*******************
[   36.524705] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.535956] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   36.544273] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.554284] [mmc]: sdc1 power_supply is null
[   36.561797] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.573159] [mmc]: sdc1 power_supply is null
[   36.590026] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.622603] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.632002] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.640433] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.653385] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.665920] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.674152] *******************Try sdio*******************
[   36.681500] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.690793] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.700166] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.709543] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.717766] *******************Try sd *******************
[   36.725016] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.734496] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.743883] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.753363] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.761679] *******************Try mmc*******************
[   36.763334] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.779407] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   36.787640] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.797734] [mmc]: sdc1 power_supply is null
[   36.805249] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.816524] [mmc]: sdc1 power_supply is null
[   36.840021] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.873136] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.883059] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.891472] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.904685] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.917686] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.925999] *******************Try sdio*******************
[   36.933885] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.943710] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.953625] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.963455] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.971766] *******************Try sd *******************
[   36.979545] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.989470] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.999485] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.009500] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.017817] *******************Try mmc*******************
[   37.024003] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.036007] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   37.044332] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.054423] [mmc]: sdc1 power_supply is null
[   37.061850] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.073214] [mmc]: sdc1 power_supply is null
[   37.090021] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.122597] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   37.132083] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   37.140494] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.153361] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.165895] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   37.174207] *******************Try sdio*******************
[   37.181474] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.190851] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.200231] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.209524] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.217834] *******************Try sd *******************
[   37.225004] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.234477] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.243957] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.253364] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.261768] *******************Try mmc*******************
[   37.263335] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.279392] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   37.287713] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.297796] [mmc]: sdc1 power_supply is null
[   47.320042] esp_sdio_init ------ RETRY ------ 
[   47.325134] =======================================================
[   47.332285] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   47.339710] =======================================================
[   47.346770] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   47.357579] [wifi_pm]: wrong module select 0 !
[   47.462616] eagle sdio can not power up!
[   47.467151] ALSA device list:
[   47.470545]   #0: audiocodec
[   47.474405] Freeing init memory: 140K
[   47.480610] init: skipping insecure file '/default.prop'
[   47.486781] init: skipping insecure file '/init.rc'
[   47.492693] init: /init.rc: 127: invalid option 'root'
[   47.498667] init: skipping insecure file '/init.sun8i.rc'
[   47.504950] init: /init.sun8i.rc: 52: invalid option 'root'
[   47.511386] init: skipping insecure file 'init.sun8i.usb.rc'
[   47.518404] init: command 'loglevel' r=0
[   47.524439] init: skipping insecure file '/ueventd.rc'
[   47.530444] init: command 'export' r=0
[   47.534722] init: command 'export' r=0
[   47.539070] init: command 'export' r=0
[   47.543601] init: skipping insecure file '/ueventd.sun8i.rc'
[   47.559674] init: command 'export' r=0
[   47.564110] init: command 'symlink' r=0
[   47.568516] init: command 'symlink' r=0
[   47.580299] init: command 'symlink' r=0
[   47.584788] init: command 'mkdir' r=0
[   47.589000] init: command 'mkdir' r=0
[   47.605542] init: command 'mkdir' r=0
[   47.609757] init: command 'mkdir' r=-2
[   47.627435] init: processing action 0xb6c098 (init)
[   47.633128] init: command 'export' r=0
[   47.637424] init: command 'export' r=0
[   47.641704] init: command 'export' r=0
[   47.646051] init: command 'export' r=0
[   47.650318] init: processing action 0xb6ac28 (early-fs)
[   47.656305] init: command 'mkdir' r=0
[   47.660615] init: command 'mkdir' r=0
[   47.664806] init: command 'mkdir' r=0
[   47.668985] init: processing action 0xb6d338 (console_init)
[   47.675707] init: command 'console_init' r=0
[   47.680605] init: processing action 0xb6af30 (fs)
[   52.006193] init: command 'wait' r=-1
[   52.011145] init: command 'setupfs' r=1
[   52.015563] init: out of loopback devices source = /dev/block/mtdblock2
[   52.023143] init: out of loopback devices target = /system
[   52.029350] init: out of loopback devices system = squashfs
[   52.035732] init: out of loopback devices options = (null)
[   52.042157] init: listdir = .
[   52.045645] init: listdir = ..
[   52.049138] init: listdir = mmcblk0p10
[   52.053428] init: listdir = mmcblk0p9
[   52.057685] init: listdir = mmcblk0p8
[   52.061854] init: listdir = mmcblk0p7
[   52.066012] init: listdir = mmcblk0p6
[   52.070263] init: listdir = mmcblk0p5
[   52.074425] init: listdir = mmcblk0p3
[   52.078581] init: listdir = mmcblk0p2
[   52.082833] init: listdir = mmcblk0p1
[   52.086993] init: listdir = platform
[   52.091064] init: listdir = mmcblk0
[   52.095051] init: do_mount errno=2
[   52.098924] init: command 'mount' r=-1
[   57.007310] init: command 'wait' r=-1
[   57.011676] init: out of loopback devices source = /dev/block/mtdblock3
[   57.019219] init: out of loopback devices target = /data
[   57.025233] init: out of loopback devices system = jffs2
[   57.031245] init: out of loopback devices options = (null)
[   57.037567] init: listdir = .
[   57.041154] init: listdir = ..
[   57.044640] init: listdir = mmcblk0p10
[   57.048896] init: listdir = mmcblk0p9
[   57.053159] init: listdir = mmcblk0p8
[   57.057326] init: listdir = mmcblk0p7
[   57.061492] init: listdir = mmcblk0p6
[   57.065735] init: listdir = mmcblk0p5
[   57.069890] init: listdir = mmcblk0p3
[   57.074060] init: listdir = mmcblk0p2
[   57.078301] init: listdir = mmcblk0p1
[   57.082490] init: listdir = platform
[   57.086552] init: listdir = mmcblk0
[   57.090554] init: do_mount errno=2
[   57.094514] init: command 'mount' r=-1
[   57.098831] init: processing action 0xb6b010 (post-fs)
[   57.104760] init: out of loopback devices source = rootfs
[   57.110860] init: out of loopback devices target = /
[   57.116468] init: out of loopback devices system = rootfs
[   57.122655] init: out of loopback devices options = (null)
[   57.128885] init: command 'mount' r=0
[   57.133159] init: processing action 0xb6b070 (post-fs-data)
[   57.139532] init: command 'chown' r=0
[   57.143842] init: command 'chmod' r=0
[   57.148120] init: command 'chmod' r=0
[   57.152393] init: command 'mkdir' r=0
[   57.156651] init: command 'restorecon' r=0
[   57.161362] init: command 'mkdir' r=0
[   57.165598] init: command 'mkdir' r=0
[   57.169855] init: processing action 0xb6bdc0 (post-fs-data)
[   57.176185] init: command 'insmod' r=-1
[   57.180577] init: command 'insmod' r=-1
[   57.185029] init: command 'insmod' r=-1
[   57.189389] init: command 'insmod' r=-1
[   57.193773] init: command 'insmod' r=-1
[   57.198234] init: command 'insmod' r=-1
[   57.202610] init: command 'insmod' r=-1
[   57.206974] init: command 'insmod' r=-1
[   57.211438] init: command 'insmod' r=-1
[   57.215803] init: command 'insmod' r=-1
[   57.220167] init: processing action 0xb6d380 (property_service_init)
[   57.227647] init: Created socket '/dev/socket/property_service' with mode '666', user '0', group '0'
[   57.238031] init: command 'property_service_init' r=0
[   57.243772] init: processing action 0xb6d3c8 (signal_init)
[   57.250112] init: command 'signal_init' r=0
[   57.254869] init: processing action 0xb6d410 (check_startup)
[   57.261404] init: command 'check_startup' r=0
[   57.266345] init: processing action 0xb6b1c8 (boot)
[   57.272302] init: command 'ifup' r=0
[   57.276633] init: command 'hostname' r=0
[   57.281190] init: command 'domainname' r=0
[   57.285994] init: command 'setrlimit' r=0
[   57.290770] init: command 'chown' r=0
[   57.294979] init: cannot find '/system/bin/servicemanager', disabling 'servicemanager'
[   57.304005] init: cannot find '/system/bin/vold', disabling 'vold'
[   57.310988] init: cannot find '/system/bin/mediaserver', disabling 'media'
[   57.318867] init: cannot find '/system/bin/startup_music', disabling 'startupSound'
[   57.327576] init: command 'class_start' r=0
[   57.332358] init: cannot find '/system/bin/ccdr', disabling 'ccdr'
[   57.339406] init: command 'class_start' r=0
[   57.344160] init: processing action 0xb6bf30 (boot)
[   57.349697] init: starting 'adbd'
[   57.353934] init: command 'start' r=0
[   57.358174] init: cannot find '/system/bin/debuggerd', disabling 'debuggerd'
[   57.366653] init: Created socket '/dev/socket/adbd' with mode '660', user '1000', group '1000'
[   57.376415] init: command 'start' r=0
[   57.382314] adb_open
[   57.385320] init: cannot find '/system/bin/standbyservice', disabling 'standby'
[   57.393969] init: command 'start' r=0
[   57.398246] init: processing action 0xb6d458 (queue_property_triggers)
[   57.405687] init: command 'queue_property_triggers' r=0
[   57.411720] init: processing action 0xb6b4a8 (property:ro.debuggable=1)
[   57.419203] init: cannot find '/system/bin/sh', disabling 'console'
[   57.426370] init: command 'start' r=0

离线

楼主 #46 2019-09-23 14:07:30

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

找个正常的log输出对比一下。





离线

#47 2019-09-23 14:11:53

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

晕哥 说:

找个正常的log输出对比一下。

有licheepi zero 使用的camdroid源码么?

离线

#48 2019-09-23 14:14:44

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

芒果派启动的信息:

[   17.690366] SysRq : Emergency Remount R/O
[   17.695110] Emergency Remount complete
[   18.703139] [VFE]Defined suspend!
[   18.707041] [VFE]Vfe Shutdown!
[   19.330077] [mmc]: shutdown_mmc: is not card 2, return
[   19.335902] [mmc]: shutdown_mmc: mmc 1 shutdown exit..ok
[   19.341993] [mmc]: shutdown_mmc: is not card 2, return
[   19.347795] [mmc]: shutdown_mmc: mmc 0 shutdown exit..ok
[   19.353885] wdt_enable, write reg 0xf1c20cb8 val 0x000000b0
[   19.590554] [DISP] disp_sys_gpio_set_value,line:374:OSAL_GPIO_DevWRITE_ONEPIN_DATA, hdl is NULL
[   19.600588] [DISP] disp_sys_power_disable,line:417:some error happen, fail to get regulator 
[   20.120075] [alarmtimer] have no shutdown alarm! alarmtimer_shutdown 315
[   20.127648] hci: ERR: sunxi_ohci is disable, need not shutdown
[   20.134320] hci: ERR: sunxi_ehci is disable, need not shutdown
[   20.141074] Restarting system.
[   20.144647] 
[   20.146392] Restarting Linux version 3.4.39 (he@he) (gcc version 4.6.3 20120201 (prerelease) (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) ) #1 Tue Sep 17 11:45:39 CST 2019
[   20.146405] 
HELLO! BOOT0 is starting!
get_ifm reg_val=7
setting pmu vol system core 1.1 v

===i2c gpio === 22777777 
axp read fail, maybe no pmu 
set pmu vol failed,maybe no pmu 
DRAM DRIVE INFO: V0.7
DRAM Type = 2 (2:DDR2,3:DDR3,6:LPDDR2,7:LPDDR3)
DRAM CLK = 360 MHz
DRAM zq value: 000039bb
DRAM size = 64 MB
card boot number = 0
card no is 0
sdcard 0 line count 0
[mmc]: mmc driver ver 2014-8-11 15:06:39
[mmc]: ***Try SD card 0***
[mmc]: SD/MMC Card: 4bit, capacity: 15193MB
[mmc]: vendor: Man 00035344 Snr f3cb1164
[mmc]: product: SC16G
[mmc]: revision: 8.0
[mmc]: ***SD/MMC 0 init OK!!!***
sdcard 0 init ok
The size of uboot is 00080000.
sum=c0eb68ed
src_sum=c0eb68ed
Succeed in loading uboot from sdmmc flash.
Jump to secend Boot.
[      0.230]

U-Boot 2011.09-rc1-dirty (Jun 16 2015 - 13:24:29) Allwinner Technology 

[      0.238]version: 1.1.0
[      0.243]pmbus:   
===i2c gpio === 22777777 
ready
axp read error
probe axp20x failed
axp_probe fail,run clock=1008
set power on vol to default
axp_set_power_supply_output dcdc2_vol = 1200
axp set dcdc2_vol to 1200 failed
axp_set_power_supply_output dcdc3_vol = 3300
axp set dcdc3_vol to 3300 failed
axp_set_power_supply_output aldo2_vol = 2500
axp set aldo2_vol to 2500 failed
axp_set_power_supply_output aldo3_vol = 3000
axp set aldo3_vol to 3000 failed
axp_set_power_supply_output ldo1_vol = 3300
axp set ldo1_vol to 3300 failed
axp_set_power_supply_output ldo2_vol = 3000
axp set ldo2_vol to 3000 failed
[      0.304]DRAM:  64 MiB
save config for small mem_size 
workmode = 0
MMC:     0
[      0.359][mmc]: mmc driver ver 2014-9-1 10:54:35
[      0.363][mmc]: get sdc_f_max fail,use default sdc_f_max 50000000
[      0.370][mmc]: get sdc_ex_dly_used fail,use default dly
[      0.375][mmc]: SUNXI SD/MMC: 0
[      0.388][mmc]: ************Try SD card 0************
[      0.432][mmc]: MID 000003 PSN f3cb1164
[      0.435][mmc]: PNM SC16G -- 0x53-43-31-36-47-05
[      0.440][mmc]: PRV 8.0
[      0.442][mmc]: MDT m-12 y-2018
[      0.446][mmc]: ---------------mmc->clock 50000000-----------
[      0.451][mmc]: ---------------mmc->bus_width 4--------------
[      0.457][mmc]: SD/MMC Card: 4bit, capacity: 15193MB
[      0.462][mmc]: boot0 capacity: 0KB,boot1 capacity: 0KB
[      0.468][mmc]: ************SD/MMC 0 init OK!!!************
[      0.477]sunxi flash init ok
env_relocate_spec storage_type = 1
@@@@@@@[debug_jaosn]:this is for ipc @@@@@@@
In:    serial
Out:   serial
Err:   serial
bootcmd set setargs_mmc
to be run cmd=run setargs_mmc boot_normal
WORK_MODE_BOOT
read bootlogo partition successful,start_block=0x6420,rblock=0x100 ,ret=256
Use decode 1x1 sampling
sunxi_read_bootlogo: jpg convert argb  
[      0.665]Hit any key to stop autoboot:  0 
read boot or recovery all
[      0.834]sunxi flash read :offset 4000, 3889145 bytes OK
no signature
[      0.841]ready to boot
para err in disp_ioctl, cmd = 0xa,screen id = 1
[      0.848][mmc]: MMC Device 2 not found
[      0.852][mmc]:  mmc  not find,so not exit
reload config to 0x43000000 
[      0.856]
Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0
[    0.000000] Linux version 3.4.39 (he@he) (gcc version 4.6.3 20120201 (prerelease) (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) ) #1 Tue Sep 17 11:45:39 CST 2019
[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: sun8i
[    0.000000] Initialized persistent memory from 41d20800-41d307ff
[    0.000000] Memory policy: ECC disabled, Data cache writeback
[    0.000000] On node 0 totalpages: 16384
[    0.000000] free_area_init_node: node 0, pgdat c0520ae4, node_mem_map c05bb000
[    0.000000]   Normal zone: 128 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 16256 pages, LIFO batch:3
[    0.000000] script_init enter!
[    0.000000] script_init exit!
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p7 init=/init loglevel=8 partitions= mac_addr= uid=1234567890 fb_base=0x43e80000 boot_type=1 config_size=32384
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Memory: 64MB = 64MB total
[    0.000000] Memory: 29928k/29928k available, 35608k reserved, 0K highmem
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
[    0.000000]     vmalloc : 0xc4800000 - 0xff000000   ( 936 MB)
[    0.000000]     lowmem  : 0xc0000000 - 0xc4000000   (  64 MB)
[    0.000000]     modules : 0xbf000000 - 0xc0000000   (  16 MB)
[    0.000000]       .text : 0xc0008000 - 0xc048d000   (4628 kB)
[    0.000000]       .init : 0xc048d000 - 0xc04b0000   ( 140 kB)
[    0.000000]       .data : 0xc04b0000 - 0xc0521220   ( 453 kB)
[    0.000000]        .bss : 0xc0521244 - 0xc05ba964   ( 614 kB)
[    0.000000] NR_IRQS:544
[    0.000000] 524 ahb1 set parent pll_periph0d2
[    0.000000] Architected local timer running at 24.00MHz.
[    0.000000] Switching to timer-based delay loop
[    0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms
[    0.000000] Console: colour dummy device 80x30
[    0.000157] Calibrating delay loop (skipped), value calculated using timer frequency.. 4800.00 BogoMIPS (lpj=24000000)
[    0.000179] pid_max: default: 32768 minimum: 301
[    0.000314] Mount-cache hash table entries: 512
[    0.000826] CPU: Testing write buffer coherency: ok
[    0.001087] Setting up static identity map for 0x40366de8 - 0x40366e40
[    0.001742] devtmpfs: initialized
[    0.003605] pinctrl core: initialized pinctrl subsystem
[    0.004091] NET: Registered protocol family 16
[    0.004481] DMA: preallocated 128 KiB pool for atomic coherent allocations
[    0.004533] script_sysfs_init success
[    0.004568] sunxi_dump_init success
[    0.005294] gpiochip_add: registered GPIOs 0 to 223 on device: sunxi-pinctrl
[    0.006185] sunxi-pinctrl sunxi-pinctrl: initialized sunXi PIO driver
[    0.006557] gpiochip_add: registered GPIOs 1024 to 1031 on device: axp-pinctrl
[    0.007403] persistent_ram: found existing buffer, size 55666, start 55666
[    0.250017] console [ram-1] enabled
[    0.250437] [sunxi-module]: [sunxi-module.0] probe success
[    0.250741] axp driver uning configuration failed(801)
[    0.250849] axp driver uning configuration failed(808)
[    0.251321] Not Found clk pll_isp in script 
[    0.251432] Not Found clk pll_video in script 
[    0.251620] Not Found clk pll_ve in script 
[    0.251723] Not Found clk pll_periph0 in script 
[    0.251826] Not Found clk pll_de in script 
[    0.252013] sunxi_default_clk_init
[    0.252113] try to set pll6ahb1 to 200000000
[    0.252225] Error not get clk pll6ahb1
[    0.252418] Error not get clk pll6ahb1try to set ahb1 to 200000000
[    0.252635] try to set apb1 to 100000000
[    0.253128] ===fe3o4==== sunxi_root_procfs_attach ret:0
[    0.256744] bio: create slab <bio-0> at 0
[    0.257106] pwm module init!
[    0.259411] SCSI subsystem initialized
[    0.259741] usbcore: registered new interface driver usbfs
[    0.259998] usbcore: registered new interface driver hub
[    0.260156] usbcore: registered new device driver usb
[    0.260406] twi_chan_cfg()340 - [twi0] has no twi_regulator.
[    0.260601] twi_chan_cfg()340 - [twi1] has no twi_regulator.
[    0.261377] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x34)
[    0.261588] axp20_board 0-0034: failed reading at 0x03
[    0.261778] [AXP20-MFD] try to read chip id failed!
[    0.261881] axp mfd register failed
[    0.261999] axp20_board: probe of 0-0034 failed with error -70
[    0.262233] Linux video capture interface: v2.00
[    0.262421] gpiochip_add: gpios 1024..1028 (axp_pin) failed to register
[    0.262616] axp pinctrl used,skip
[    0.263052] Advanced Linux Sound Architecture Driver Version 1.0.25.
[    0.264140] cfg80211: Calling CRDA to update world regulatory domain
[    0.265177] Switching to clocksource arch_sys_counter
[    0.269989] NET: Registered protocol family 2
[    0.269989] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.269989] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
[    0.270078] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
[    0.270290] TCP: Hash tables configured (established 2048 bind 2048)
[    0.270397] TCP: reno registered
[    0.270590] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.270707] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.271162] NET: Registered protocol family 1
[    0.271461] Unpacking initramfs...
[    0.286187] Freeing initrd memory: 220K
[    0.286509] [pm]aw_pm_init!
[    0.286619] standby_mode = 1. 
[    0.286723] wakeup src cnt is : 3. 
[    0.286918] pmu name: pmu1_para .
[    0.287027] pmu1_enable = 0x1. 
[    0.287131] pmux_id = 0x1. 
[    0.287236] pmu name: pmu2_para .
[    0.287426] config_pmux_para: script_parser_fetch err. 
[    0.287530] pmu2_enable = 0x0. 
[    0.287636] add_sys_pwr_dm: get ldo name failed
[    0.287742] add_sys_pwr_dm: get ldo name failed
[    0.287846] add_sys_pwr_dm: get ldo name failed
[    0.288036] add_sys_pwr_dm: get ldo name failed
[    0.288140] add_sys_pwr_dm: get ldo name failed
[    0.288243] add_sys_pwr_dm: get ldo name failed
[    0.288433] add_sys_pwr_dm: get ldo name failed
[    0.288538] add_sys_pwr_dm: get ldo name failed
[    0.288730] add_sys_pwr_dm: get ldo name failed
[    0.288834] add_sys_pwr_dm: get ldo name failed
[    0.288937] after inited: sys_mask config = 0x0. 
[    0.289127] dynamic_standby enalbe = 0x0. 
[    0.289287] sunxi_reg_init enter
[    0.291350] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.291509] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    0.291876] msgmni has been set to 58
[    0.292908] io scheduler noop registered
[    0.293025] io scheduler deadline registered
[    0.293292] io scheduler cfq registered (default)
[    0.293801] [DISP]disp_module_init
[    0.294310] cmdline,disp=
[    0.295002] rotation_sw module is config as no used
[    0.295133] [DISP] disp_get_rotation_sw,line:68:disp 0 out of range? g_rot_sw=0
[    0.295427] [DISP] disp_init_connections,line:289:NULL pointer: 0, 0
[    0.310586] [DISP] disp_sys_power_enable,line:387:some error happen, fail to get regulator 
[    0.310899] [DISP] disp_sys_gpio_set_value,line:374:OSAL_GPIO_DevWRITE_ONEPIN_DATA, hdl is NULL
[    0.311902] [DISP]disp_module_init finish
[    0.312307] sw_uart_get_devinfo()1503 - uart0 has no uart_regulator.
[    0.312851] uart0: ttyS0 at MMIO 0x1c28000 (irq = 32) is a SUNXI
[    0.312968] sw_uart_pm()890 - uart0 clk is already enable
[    0.313168] sw_console_setup()1233 - console setup baud 115200 parity n bits 8, flow n
[    0.505197] console [ttyS0] enabled
[    1.136700] sunxi_spi_chan_cfg()1376 - [spi-0] has no spi_regulator.
[    1.144636] spi spi0: master is unqueued, this is deprecated
[    1.151234] m25p_probe()966 - Use the Dual Mode Read.
[    1.157109] NorFlash ID: 0xef4018 - 0x0
[    1.161506] m25p80 spi0.0: found W25q128, expected at25df641
[    1.167995] m25p80 spi0.0: W25q128 (16384 Kbytes)
[    1.174814] @@@[debug_jaosn]: Invalid partitions count: 4 9
[    1.181817] Creating 8 MTD partitions on "spi0.0":
[    1.187246] 0x000000000000-0x000000040000 : "uboot"
[    1.193774] 0x000000040000-0x000000440000 : "boot"
[    1.200227] 0x000000440000-0x000000c40000 : "system"
[    1.206717] 0x000000c40000-0x000000cc0000 : "cfg"
[    1.213058] 0x000000cc0000-0x000000ce0000 : "boot_logo"
[    1.219853] 0x000000ce0000-0x000000d00000 : "shutdown_logo"
[    1.227284] 0x000000d00000-0x000000d10000 : "env"
[    1.233696] 0x000000d10000-0x000000d20000 : "private"
[    1.241889] Failed to alloc md5
[    1.245561] eth0: Use random mac address
[    1.250112] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.277710] sunxi-ehci sunxi-ehci.1: SW USB2.0 'Enhanced' Host Controller (EHCI) Driver
[    1.286747] sunxi-ehci sunxi-ehci.1: new USB bus registered, assigned bus number 1
[    1.295472] sunxi-ehci sunxi-ehci.1: irq 104, io mem 0xf1c1a000
[    1.320030] sunxi-ehci sunxi-ehci.1: USB 0.0 started, EHCI 1.00
[    1.327392] hub 1-0:1.0: USB hub found
[    1.331717] hub 1-0:1.0: 1 port detected
[    1.336614] sunxi-ehci sunxi-ehci.1: remove, state 1
[    1.342269] usb usb1: USB disconnect, device number 1
[    1.640165] sunxi-ehci sunxi-ehci.1: USB bus 1 deregistered
[    1.656554] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    1.683715] sunxi-ohci sunxi-ohci.1: SW USB2.0 'Open' Host Controller (OHCI) Driver
[    1.692352] sunxi-ohci sunxi-ohci.1: new USB bus registered, assigned bus number 1
[    1.700999] sunxi-ohci sunxi-ohci.1: irq 105, io mem 0xf1c1a400
[    1.764639] hub 1-0:1.0: USB hub found
[    1.768916] hub 1-0:1.0: 1 port detected
[    1.773781] sunxi-ohci sunxi-ohci.1: remove, state 1
[    1.779509] usb usb1: USB disconnect, device number 1
[    1.785801] sunxi-ohci sunxi-ohci.1: USB bus 1 deregistered
[    1.802317] Initializing USB Mass Storage driver...
[    1.807900] usbcore: registered new interface driver usb-storage
[    1.814779] USB Mass Storage support registered.
[    1.820312] file system registered
[    1.825671] android_usb gadget: Mass Storage Function, version: 2009/09/11
[    1.833551] android_usb gadget: Number of LUNs=1
[    1.838852]  lun0: LUN: removable file: (no medium)
[    1.844942] android_usb gadget: android_usb ready
[    1.850422] sunxikbd_script_init: key para not found, used default para. 
[    1.859123] sunxi-rtc sunxi-rtc: rtc core: registered sunxi-rtc as rtc0
[    1.866778] sunxi cedar version 0.1 
[    1.871015] [cedar]: install start!!!
[    1.875407] [cedar]: install end!!!
[    1.879826] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    1.888800] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    1.897719] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    1.906345] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    1.915047] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    1.923768] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    1.932398] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    1.941386] sunxi_wdt_init_module: sunxi WatchDog Timer Driver v1.0
[    1.948701] sunxi_wdt_probe: devm_ioremap return wdt_reg 0xf1c20ca0, res->start 0x01c20ca0, res->end 0x01c20cbf
[    1.960130] sunxi_wdt_probe: initialized (g_timeout=16s, g_nowayout=0)
[    1.967780] wdt_enable, write reg 0xf1c20cb8 val 0x00000000
[    1.974164] wdt_set_tmout, write 0x000000b0 to mode reg 0xf1c20cb8, actual timeout 16 sec
[    1.983922] [mmc]: SD/MMC/SDIO Host Controller Driver(v1.114 2015-6-2 10:21) Compiled in Sep 17 2019 at 11:45:10
[    1.995482] [mmc]: get mmc0's sdc_power failed
[    2.000632] [mmc]: get mmc1's sdc_power failed
[    2.005663] [mmc]: MMC host used card: 0x3, boot card: 0x1, io_card 2
[    2.013837] [mmc]: sdc0 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.024886] [mmc]: sdc0 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.035268] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.045297] [mmc]: sdc0 power_supply is null
[    2.053162] sunxi_leds_fetch_sysconfig_para leds is not used in config
[    2.060623] =========script_get_err============
[    2.065986] usbcore: registered new interface driver usbhid
[    2.072405] usbhid: USB HID core driver
[    2.076776] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.087771] ashmem: initialized
[    2.091546] logger: created 256K log 'log_main'
[    2.096868] logger: created 32K log 'log_events'
[    2.102459] logger: created 32K log 'log_radio'
[    2.107700] logger: created 32K log 'log_system'
[    2.114641] script_get_item return audio_pa_ctrl type err
[    2.121635] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 52,  RTO !!
[    2.130241] asoc: sndcodec <-> sunxi-codec mapping ok
[    2.135955] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 52,  RTO !!
[    2.144395] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.156743] TCP: cubic registered
[    2.160609] NET: Registered protocol family 17
[    2.165946] VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
[    2.174670] ThumbEE CPU extension supported.
[    2.180796] Registering SWP/SWPB emulation handler
[    2.187246] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.198555] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    2.207701] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    2.217442] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    2.226089] *******************Try sdio*******************
[    2.232340] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    2.240942] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.249295] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    2.257814] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.266175] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    2.274968] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.283241] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    2.292029] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 0 err, cmd 5,  RTO !!
[    2.300410] *******************Try sd *******************
[    2.306591] sunxi-rtc sunxi-rtc: setting system clock to 2015-01-01 00:00:15 UTC (1420070415)
[    2.316620] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.328046] [wifi module_pm]: failed to fetch wifi configuration!
[    2.334998] [wifi module_pm]: regulator on.
[    2.339830] [wifi_pm]: no wifi used in configuration
[    2.345467] 
[    2.345471] *****Sep 17 2019 11:45:16 EAGLE DRIVER VER:75be56bfbaf7*****
[    2.345477] 
[    2.356760] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.368386] =======================================================
[    2.375496] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[    2.382647] =======================================================
[    2.389699] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[    2.400517] [wifi_pm]: wrong module select 0 !
[    2.506659] [mmc]: sdc0 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.571503] [mmc]: sdc0 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.587347] [mmc]: sdc0 set ios: clk 25000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B
[    2.597880] [mmc]: sdc0 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 1 timing SD-HS(SDR25) dt B
[    2.608433] [mmc]: sdc0 set ios: clk 50000000Hz bm PP pm ON vdd 3.3V width 4 timing SD-HS(SDR25) dt B
[    2.619019] mmc0: new high speed SDHC card at address aaaa
[    2.625653] mmcblk0: mmc0:aaaa SC16G 14.8 GiB 
[    2.635275]  mmcblk0: p1 p2 p3 < p5 p6 p7 p8 p9 p10 >
[    2.642789] mmcblk mmc0:aaaa: Card claimed for testing.
[    2.648701] mmc0:aaaa: SC16G 14.8 GiB 
[    2.653237] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[    2.661987] *******************sd init ok*******************
[    2.668481] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.678414] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[    2.687182] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[    2.695792] [mmc]: sdc1 power_supply is null
[    2.701945] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[    2.710669] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[    2.719285] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[    2.727916] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.738209] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[    2.762669] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    2.771090] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.783848] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.796105] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    2.804423] *******************Try sdio*******************
[    2.811419] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.820530] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.829554] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.838584] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    2.846889] *******************Try sd *******************
[    2.853789] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.862997] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.872206] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.881327] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    2.889724] *******************Try mmc*******************
[    2.895912] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.907072] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    2.915389] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.925485] [mmc]: sdc1 power_supply is null
[    2.932916] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    2.944276] [mmc]: sdc1 power_supply is null
[    2.970026] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.002612] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.012093] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.020418] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.033365] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.045891] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.054205] *******************Try sdio*******************
[    3.061464] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.070841] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.080131] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.089501] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.097810] *******************Try sd *******************
[    3.104974] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.114451] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.123834] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.133307] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.141726] *******************Try mmc*******************
[    3.143279] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.159346] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.167659] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.177660] [mmc]: sdc1 power_supply is null
[    3.185170] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.196529] [mmc]: sdc1 power_supply is null
[    3.220021] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.253130] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.263064] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.271468] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.284691] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.297781] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.306001] *******************Try sdio*******************
[    3.313885] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.323816] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.333640] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.343550] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.351767] *******************Try sd *******************
[    3.359545] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.369546] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.379465] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.389475] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.397875] *******************Try mmc*******************
[    3.403975] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.416061] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.424289] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.434377] [mmc]: sdc1 power_supply is null
[    3.441885] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.453161] [mmc]: sdc1 power_supply is null
[    3.470023] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.502597] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.511993] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[    3.520400] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.533346] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.545787] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[    3.554097] *******************Try sdio*******************
[    3.561440] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.570750] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.580123] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.589500] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[    3.597722] *******************Try sd *******************
[    3.604970] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.614360] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.623830] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.633307] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[    3.641621] *******************Try mmc*******************
[    3.643278] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.659318] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[    3.667546] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[    3.677638] [mmc]: sdc1 power_supply is null
[   13.510029] esp_sdio_init ------ RETRY ------ 
[   13.515236] =======================================================
[   13.522306] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   13.529738] =======================================================
[   13.536795] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   13.547607] [wifi_pm]: wrong module select 0 !
[   13.652726] =======================================================
[   13.659772] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   13.666913] =======================================================
[   13.673966] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   13.684784] [wifi_pm]: wrong module select 0 !
[   13.789927] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.801218] [mmc]: sdc1 power_supply is null
[   13.820029] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.852345] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   13.861482] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   13.869886] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.882712] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   13.894880] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   13.903193] *******************Try sdio*******************
[   13.910269] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.919292] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.928402] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.937427] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   13.945731] *******************Try sd *******************
[   13.952722] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.961839] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.971047] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.980249] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   13.988567] *******************Try mmc*******************
[   13.994749] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.005913] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.014229] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.024315] [mmc]: sdc1 power_supply is null
[   14.031742] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.043109] [mmc]: sdc1 power_supply is null
[   14.060024] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.092602] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.102084] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.110496] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.123366] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.135897] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.144208] *******************Try sdio*******************
[   14.151472] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.160845] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.170218] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.179505] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.187813] *******************Try sd *******************
[   14.194975] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.204452] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.213925] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.223311] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.231717] *******************Try mmc*******************
[   14.233283] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.249333] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.257654] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.267742] [mmc]: sdc1 power_supply is null
[   14.275172] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.286528] [mmc]: sdc1 power_supply is null
[   14.310021] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.343134] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.353148] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.361467] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.374673] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.387765] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.396080] *******************Try sdio*******************
[   14.403874] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.413789] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.423609] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.433519] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.441825] *******************Try sd *******************
[   14.449514] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.459524] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.469444] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.479454] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.487860] *******************Try mmc*******************
[   14.493954] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.506040] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.514352] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.524351] [mmc]: sdc1 power_supply is null
[   14.531857] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.543127] [mmc]: sdc1 power_supply is null
[   14.560025] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.592603] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.601999] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   14.610409] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.623354] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.635880] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   14.644106] *******************Try sdio*******************
[   14.651449] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.660739] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.670113] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.679486] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   14.687710] *******************Try sd *******************
[   14.694959] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.704353] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.713826] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.723303] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   14.731621] *******************Try mmc*******************
[   14.733274] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.749321] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   14.757548] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   14.767635] [mmc]: sdc1 power_supply is null
[   24.790030] esp_sdio_init ------ RETRY ------ 
[   24.795231] =======================================================
[   24.802300] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   24.809730] =======================================================
[   24.816877] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   24.827601] [wifi_pm]: wrong module select 0 !
[   24.932718] =======================================================
[   24.939766] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   24.946910] =======================================================
[   24.953964] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   24.964778] [wifi_pm]: wrong module select 0 !
[   25.069918] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.081204] [mmc]: sdc1 power_supply is null
[   25.100028] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.132338] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.141471] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.149879] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.162735] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.174980] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.183213] *******************Try sdio*******************
[   25.190284] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.199312] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.208424] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.217532] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.225755] *******************Try sd *******************
[   25.232740] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.241864] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.251072] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.260280] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.268600] *******************Try mmc*******************
[   25.274781] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.286028] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.294254] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.304347] [mmc]: sdc1 power_supply is null
[   25.311773] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.323133] [mmc]: sdc1 power_supply is null
[   25.340028] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.372605] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.382091] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.390502] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.403363] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.415892] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.424204] *******************Try sdio*******************
[   25.431462] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.440841] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.450215] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.459504] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.467814] *******************Try sd *******************
[   25.474974] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.484451] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.493921] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.503314] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.511715] *******************Try mmc*******************
[   25.513286] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.529336] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.537647] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.547733] [mmc]: sdc1 power_supply is null
[   25.555156] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.566514] [mmc]: sdc1 power_supply is null
[   25.590020] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.623130] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.633144] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.641469] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.654680] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.667786] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.676093] *******************Try sdio*******************
[   25.683890] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.693800] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.703630] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.713545] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.721763] *******************Try sd *******************
[   25.729455] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.739450] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.749375] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.759385] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.767785] *******************Try mmc*******************
[   25.773883] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.785966] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   25.794198] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.804197] [mmc]: sdc1 power_supply is null
[   25.811707] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.823066] [mmc]: sdc1 power_supply is null
[   25.840021] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.872601] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.881996] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   25.890401] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.903349] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   25.915881] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   25.924100] *******************Try sdio*******************
[   25.931450] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.940824] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.950110] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.959500] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   25.967721] *******************Try sd *******************
[   25.974977] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.984451] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   25.993840] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   26.003317] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   26.011632] *******************Try mmc*******************
[   26.013288] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   26.029248] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   26.037479] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   26.047662] [mmc]: sdc1 power_supply is null
[   36.070027] esp_sdio_init ------ RETRY ------ 
[   36.075129] =======================================================
[   36.082288] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   36.089624] =======================================================
[   36.096768] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   36.107575] [wifi_pm]: wrong module select 0 !
[   36.212612] =======================================================
[   36.219665] ==== Launching Wi-Fi driver! (Powered by Rockchip) ====
[   36.226804] =======================================================
[   36.233945] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.25(01/22/2016),Drv: 2.26) init.
[   36.244672] [wifi_pm]: wrong module select 0 !
[   36.349813] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.361189] [mmc]: sdc1 power_supply is null
[   36.380035] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.412341] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.421478] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.429885] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.442716] [mmc]: sdc1 set ios: clk 400000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.454968] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.463196] *******************Try sdio*******************
[   36.470264] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.479292] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.488399] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.497511] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.505730] *******************Try sd *******************
[   36.512719] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.521924] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.531044] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.540249] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.548560] *******************Try mmc*******************
[   36.554746] [mmc]: sdc1 set ios: clk 400000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.565990] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   36.574221] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.584345] [mmc]: sdc1 power_supply is null
[   36.591862] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.603140] [mmc]: sdc1 power_supply is null
[   36.620022] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.652603] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.662001] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.670406] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.683357] [mmc]: sdc1 set ios: clk 300000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.695799] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.704108] *******************Try sdio*******************
[   36.711455] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.720741] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.730118] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.739412] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.747716] *******************Try sd *******************
[   36.754965] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.764352] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.773828] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.783299] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   36.791616] *******************Try mmc*******************
[   36.793270] [mmc]: sdc1 set ios: clk 300000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.809236] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   36.817555] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.827639] [mmc]: sdc1 power_supply is null
[   36.835070] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.846431] [mmc]: sdc1 power_supply is null
[   36.870025] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.903138] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.913152] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   36.921563] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.934683] [mmc]: sdc1 set ios: clk 200000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   36.947773] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   36.956086] *******************Try sdio*******************
[   36.963877] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.973788] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.983702] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   36.993522] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.001830] *******************Try sd *******************
[   37.009518] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.019528] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.029542] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.039462] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.047869] *******************Try mmc*******************
[   37.053964] [mmc]: sdc1 set ios: clk 200000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.066048] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   37.074364] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.084445] [mmc]: sdc1 power_supply is null
[   37.091869] [mmc]: sdc1 set ios: clk 0Hz bm PP pm UP vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.103221] [mmc]: sdc1 power_supply is null
[   37.120020] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.152598] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   37.162074] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 52,  RTO !!
[   37.170400] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.183351] [mmc]: sdc1 set ios: clk 150000Hz bm PP pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.195873] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 8,  RTO !!
[   37.204177] *******************Try sdio*******************
[   37.211439] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.220815] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.230115] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.239488] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 5,  RTO !!
[   37.247796] *******************Try sd *******************
[   37.254955] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.264432] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.273821] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.283291] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 55,  RTO !!
[   37.291698] *******************Try mmc*******************
[   37.293263] [mmc]: sdc1 set ios: clk 150000Hz bm OD pm ON vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.309313] [mmc]: *** sunxi_mci_dump_errinfo(L826): smc 1 err, cmd 1,  RTO !!
[   37.317625] [mmc]: sdc1 set ios: clk 0Hz bm OD pm OFF vdd 3.3V width 1 timing LEGACY(SDR12) dt B
[   37.327626] [mmc]: sdc1 power_supply is null
[   47.350045] esp_sdio_init ------ RETRY ------ 
[   47.355138] =======================================================
[   47.362288] ==== Dislaunching Wi-Fi driver! (Powered by Rockchip) ====
[   47.369630] =======================================================
[   47.376772] Espressif ESP8089 SDIO WiFi driver (Powered by Rockchip, Ver2.26(01/22/2016),Drv: 2.26) exit.
[   47.387582] [wifi_pm]: wrong module select 0 !
[   47.492614] eagle sdio can not power up!
[   47.497060] ALSA device list:
[   47.500535]   #0: audiocodec
[   47.504272] sw_uart_set_termios()749 - uart0 write LCR(pre-dlab) failed, lcr 93 reg 13
[   47.513495] Freeing init memory: 140K
[   77.846064] init: skipping insecure file '/default.prop'
[   77.852256] init: skipping insecure file '/init.rc'
[   77.858203] init: /init.rc: 127: invalid option 'root'
[   77.864130] init: skipping insecure file '/init.sun8i.rc'
[   77.870482] init: /init.sun8i.rc: 52: invalid option 'root'
[   77.876831] init: skipping insecure file 'init.sun8i.usb.rc'
[   77.883957] init: command 'loglevel' r=0
[   77.888460] init: command 'export' r=0
[   77.894239] init: skipping insecure file '/ueventd.rc'
[   77.900288] init: command 'export' r=0
[   77.904555] init: command 'export' r=0
[   77.908929] init: command 'export' r=0
[   77.913460] init: skipping insecure file '/ueventd.sun8i.rc'
[   77.930392] init: command 'symlink' r=0
[   77.934895] init: command 'symlink' r=0
[   77.939314] init: command 'symlink' r=0
[   77.960381] init: command 'mkdir' r=0
[   77.964710] init: command 'mkdir' r=0
[   77.968972] init: command 'mkdir' r=0
[   77.980276] init: command 'mkdir' r=-2
[   77.984692] init: processing action 0x19fc098 (init)
[   78.005812] init: command 'export' r=0
[   78.010177] init: command 'export' r=0
[   78.014551] init: command 'export' r=0
[   78.018804] init: command 'export' r=0
[   78.023071] init: processing action 0x19fac28 (early-fs)
[   78.029232] init: command 'mkdir' r=0
[   78.033460] init: command 'mkdir' r=0
[   78.037734] init: command 'mkdir' r=0
[   78.041916] init: processing action 0x19fd338 (console_init)
[   78.048646] init: command 'console_init' r=0
[   78.053629] init: processing action 0x19faf30 (fs)
[   78.059106] init: command 'wait' r=0
[   78.063883] init: command 'setupfs' r=1
[   78.068309] init: out of loopback devices source = /dev/block/mtdblock2
[   78.075822] init: out of loopback devices target = /system
[   78.082102] init: out of loopback devices system = squashfs
[   78.088380] init: out of loopback devices options = (null)
[   78.097647] init: command 'mount' r=0
[   78.101950] init: command 'wait' r=0
[   78.106141] init: out of loopback devices source = /dev/block/mtdblock3
[   78.113610] init: out of loopback devices target = /data
[   78.119692] init: out of loopback devices system = jffs2
[   78.125694] init: out of loopback devices options = (null)
[   78.145835] init: command 'mount' r=0
[   78.150199] init: processing action 0x19fb010 (post-fs)
[   78.156116] init: out of loopback devices source = rootfs
[   78.162319] init: out of loopback devices target = /
[   78.167935] init: out of loopback devices system = rootfs
[   78.174120] init: out of loopback devices options = (null)
[   78.180430] init: command 'mount' r=0
[   78.184689] init: processing action 0x19fb070 (post-fs-data)
[   78.191438] init: command 'chown' r=0
[   78.195972] init: command 'chmod' r=0
[   78.200681] init: command 'chmod' r=-2
[   78.210065] init: command 'mkdir' r=0
[   78.214283] init: command 'restorecon' r=0
[   78.223837] init: command 'mkdir' r=0
[   78.232773] init: command 'mkdir' r=0
[   78.237011] init: processing action 0x19fbdc0 (post-fs-data)
[   78.248750] init: skipping insecure file '/system/vendor/modules/videobuf-core.ko'
[   78.269585] init: command 'insmod' r=0
[   78.274184] init: skipping insecure file '/system/vendor/modules/videobuf-dma-contig.ko'
[   78.284246] init: command 'insmod' r=0
[   78.288686] init: skipping insecure file '/system/vendor/modules/cci.ko'
[   78.326779] [VFE]cci probe start cci_sel = 0!
[   78.331911] [VFE]cci probe end cci_sel = 0!
[   78.336774] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[   78.345857] [VFE]cci_init end
[   78.349388] init: command 'insmod' r=0
[   78.353830] init: skipping insecure file '/system/vendor/modules/vfe_os.ko'
[   78.361875] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[   78.373044] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[   78.382457] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[   78.391712] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[   78.400594] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[   78.410864] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[   78.439603] init: command 'insmod' r=0
[   78.444114] init: skipping insecure file '/system/vendor/modules/vfe_subdev.ko'
[   78.453270] init: command 'insmod' r=0
[   78.457704] init: skipping insecure file '/system/vendor/modules/ar0330_mipi.ko'
[   78.467234] init: command 'insmod' r=0
[   78.471712] init: skipping insecure file '/system/vendor/modules/vfe_v4l2.ko'
[   78.610301] [VFE]Welcome to Video Front End driver
[   78.616345] [VFE]pdev->id = 0
[   78.619740] [VFE]dev->mipi_sel = 0
[   78.623653] [VFE]dev->vip_sel = 0
[   78.627448] [VFE]dev->isp_sel = 0
[   78.637524] [VFE_WARN]vfe vpu clock is null
[   78.648737] [ISP] isp platform_id = 6!
[   78.653182] platform reg-20-cs-dcdc2: Driver reg-20-cs-dcdc2 requests probe deferral
[   78.662023] [VFE]probe_work_handle start!
[   78.666568] [VFE]..........................vfe clk open!.......................
[   78.674976] [VFE]vfe_init end
[   78.678796] init: command 'insmod' r=0
[   78.683359] init: skipping insecure file '/system/vendor/modules/uvcvideo.ko'
[   78.691563] platform reg-20-cs-dcdc3: Driver reg-20-cs-dcdc3 requests probe deferral
[   78.700763] [VFE]v4l2 subdev register input_num = 0
[   78.706275] [VFE]vfe sensor detect start! input_num = 0
[   78.712284] [VFE_WARN]NOT found this item:  ar0330_mipi, you can add this sensor in the sensor_list_t!
[   78.722816] [VFE]Sub device register "ar0330_mipi" i2c_addr = 0x20 start!
[   78.730457] [VFE]v4l2_device_register_subdev return 0
[   78.736245] [VFE]registered sensor subdev is OK!
[   78.741467] [VFE]Check sensor!
[   78.744944] [VFE]Sub device register "ar0330_mipi" is OK!
[   78.753696] platform reg-20-cs-ldo1: Driver reg-20-cs-ldo1 requests probe deferral
[   78.762507] uvcvideo: Adding mapping Brightness to control 00000000-0000-0000-0000-000000000101/2.
[   78.772630] platform reg-20-cs-ldo2: Driver reg-20-cs-ldo2 requests probe deferral
[   78.781254] uvcvideo: Adding mapping Contrast to control 00000000-0000-0000-0000-000000000101/3.
[   78.791242] platform reg-20-cs-ldo3: Driver reg-20-cs-ldo3 requests probe deferral
[   78.799779] platform reg-20-cs-ldo4: Driver reg-20-cs-ldo4 requests probe deferral
[   78.808390] uvcvideo: Adding mapping Hue to control 00000000-0000-0000-0000-000000000101/6.
[   78.817856] uvcvideo: Adding mapping Saturation to control 00000000-0000-0000-0000-000000000101/7.
[   78.828038] platform reg-20-cs-ldoio0: Driver reg-20-cs-ldoio0 requests probe deferral
[   78.836938] uvcvideo: Adding mapping Sharpness to control 00000000-0000-0000-0000-000000000101/8.
[   78.847365] uvcvideo: Adding mapping Gamma to control 00000000-0000-0000-0000-000000000101/9.
[   78.857175] uvcvideo: Adding mapping Backlight Compensation to control 00000000-0000-0000-0000-000000000101/1.
[   78.869157] uvcvideo: Adding mapping Gain to control 00000000-0000-0000-0000-000000000101/4.
[   78.878848] uvcvideo: Adding mapping Power Line Frequency to control 00000000-0000-0000-0000-000000000101/5.
[   78.890704] [VFE]Check open /system/etc/hawkview/ar0330_mipi/isp_test_param.ini failed!
[   78.890716] Match isp cfg  start!
[   78.903662] [VFE]Match isp cfg ok
[   78.907595] uvcvideo: Adding mapping Hue, Auto to control 00000000-0000-0000-0000-000000000101/16.
[   78.917778] uvcvideo: Adding mapping Exposure, Auto to control 00000000-0000-0000-0000-000000000001/2.
[   78.928727] [VFE]V4L2 device registered as video0
[   78.934246] [VFE]..........................vfe clk close!.......................
[   78.942597] uvcvideo: Adding mapping Exposure, Auto Priority to control 00000000-0000-0000-0000-000000000001/3.
[   78.954023] [VFE]probe_work_handle end!
[   78.958477] uvcvideo: Adding mapping Exposure (Absolute) to control 00000000-0000-0000-0000-000000000001/4.
[   78.969491] uvcvideo: Adding mapping White Balance Temperature, Auto to control 00000000-0000-0000-0000-000000000101/11.
[   78.981671] uvcvideo: Adding mapping White Balance Temperature to control 00000000-0000-0000-0000-000000000101/10.
[   78.993353] uvcvideo: Adding mapping White Balance Component, Auto to control 00000000-0000-0000-0000-000000000101/13.
[   79.005419] uvcvideo: Adding mapping White Balance Blue Component to control 00000000-0000-0000-0000-000000000101/12.
[   79.017388] uvcvideo: Adding mapping White Balance Red Component to control 00000000-0000-0000-0000-000000000101/12.
[   79.029263] uvcvideo: Adding mapping Focus (absolute) to control 00000000-0000-0000-0000-000000000001/6.
[   79.039983] uvcvideo: Adding mapping Focus, Auto to control 00000000-0000-0000-0000-000000000001/8.
[   79.050215] uvcvideo: Adding mapping Zoom, Absolute to control 00000000-0000-0000-0000-000000000001/11.
[   79.060837] uvcvideo: Adding mapping Zoom, Continuous to control 00000000-0000-0000-0000-000000000001/12.
[   79.071652] uvcvideo: Adding mapping Privacy to control 00000000-0000-0000-0000-000000000001/17.
[   79.081684] usbcore: registered new interface driver uvcvideo
[   79.088256] USB Video Class driver (v1.0.8_SONiX_v2.6.36.04)
[   79.094714] init: command 'insmod' r=0
[   79.099206] init: skipping insecure file '/system/vendor/modules/da380.ko'
[   79.108097] step1 : gsensor_fetch_sysconfig_para
[   79.113548] step2 : gsensor_fetch_sysconfig_para
[   79.118769] step3 : gsensor_fetch_sysconfig_para
[   79.124089] step4 : mir3da_init
[   79.127903] i2c-core: driver [da380] using legacy suspend method
[   79.134715] i2c-core: driver [da380] using legacy resume method
[   79.141500]  richard mir3da_detect: mir3da_detect:bus[0] addr[0x27]
[   79.153795] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.168330] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.182846] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.192212] [MIR3DA] Can't find Mir3da gsensor!!
[   79.197499] init: command 'insmod' r=0
[   79.201919] init: skipping insecure file '/system/vendor/modules/sw-device.ko'
[   79.213849] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x18)
[   79.223414] init: command 'insmod' r=0
[   79.227699] init: processing action 0x19fd380 (property_service_init)
[   79.235163] init: skipping insecure file '/system/build.prop'
[   79.241844] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x18)
[   79.270423] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x18)
[   79.290532] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x18)
[   79.300598] init: Created socket '/dev/socket/property_service' with mode '666', user '0', group '0'
[   79.311153] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x18)
[   79.320582] init: command 'property_service_init' r=0
[   79.326313] init: processing action 0x19fd3c8 (signal_init)
[   79.332764] init: command 'signal_init' r=0
[   79.337513] init: processing action 0x19fd410 (check_startup)
[   79.344260] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x19)
[   79.353593] init: command 'check_startup' r=0
[   79.358632] init: processing action 0x19fb1c8 (boot)
[   79.364678] init: command 'ifup' r=0
[   79.368994] init: command 'hostname' r=0
[   79.373752] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x19)
[   79.383243] init: command 'domainname' r=0
[   79.387910] init: command 'setrlimit' r=0
[   79.392588] init: command 'chown' r=0
[   79.396958] init: starting 'servicemanager'
[   79.401907] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x19)
[   79.411808] init: starting 'vold'
[   79.416010] init: starting 'media'
[   79.426765] init: Created socket '/dev/socket/vold' with mode '660', user '0', group '1009'
[   79.437161] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x19)
[   79.454102] init: starting 'startupSound'
[   79.466248] init: command 'class_start' r=0
[   79.477827] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x19)
[   79.494785] init: starting 'ccdr'
[   79.499109] init: command 'class_start' r=0
[   79.514372] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x8)
[   79.524528] init: processing action 0x19fbf30 (boot)
[   79.530357] init: starting 'adbd'
[   79.534499] init: command 'start' r=0
[   79.538895] init: starting 'debuggerd'
[   79.549541] init: Created socket '/dev/socket/adbd' with mode '660', user '1000', group '1000'
[   79.560903] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x8)
[   79.582803] init: command 'start' r=0
[   79.593879] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x8)
[   79.606526] adb_open
[   79.612089] init: starting 'standby'
[   79.616580] init: command 'start' r=0
[   79.623066] init: processing action 0x19fd458 (queue_property_triggers)
[   79.631525] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x8)
[   79.642376] init: command 'queue_property_triggers' r=0
[   79.649111] init: processing action 0x19fb4a8 (property:ro.debuggable=1)
[   79.659061] init: starting 'console'
[   79.663990] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x8)
[   79.678105] init: command 'start' r=0
[   79.682952] init: processing action 0x19fcd70 (property:sys.usb.config=mass_storage,adb)
[   79.693271] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x38)
[   79.704966] android_usb: already disabled
[   79.710507] init: command 'write' r=0
[   79.716909] init: command 'write' r=0
[   79.721903] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x38)
[   79.731425] init: command 'write' r=0
[   79.735784] init: command 'write' r=0
[   79.740056] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   79.749834] adb_bind_config
[   79.753073] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   79.762736] ep_matches, wrn: endpoint already claimed, ep(0xc050f9f0, 0xc1a77ac0, ep1out-bulk)
[   79.772402] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   79.782051] ep_matches, wrn: endpoint already claimed, ep(0xc050f9f0, 0xc1a77ac0, ep1out-bulk)
[   79.791801] ep_matches, wrn: endpoint already claimed, ep(0xc050fa3c, 0xc1a91ec0, ep2in-bulk)
[   79.802560] init: command 'write' r=0
[   79.808081] init: command 'setprop' r=0
[   79.812629] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x38)
[   79.840248] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x38)
[   79.860801] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x38)
[   79.890220] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.910265] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.930724] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.960821] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   79.990764] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x27)
[   80.020835] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x26)
[   80.050318] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x26)
[   80.070826] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x26)
[   80.100549] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x26)
[   80.120617] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x26)
[   80.150689] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1c)
[   80.180643] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1c)
[   80.201051] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1c)
[   80.230263] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1c)
[   80.251178] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1c)
[   80.280278] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1d)
[   80.300864] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1d)
[   80.330656] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1d)
[   80.363904] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1d)
[   80.390837] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1d)
[   80.420567] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x4c)
[   80.440337] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x4c)
[   80.460681] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x4c)
[   80.480650] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x4c)
[   80.512394] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x4c)
[   80.550895] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x3d)
[   80.580245] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x3d)
[   80.600773] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x3d)
[   80.630244] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x3d)
[   80.650483] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x3d)
[   80.690520] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x28)
[   80.719665] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x28)
[   80.758301] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x28)
[   80.780572] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x28)
root@camdroid:/ # [   80.821396] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x28)
[   80.852433] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x29)
[   80.881224] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x29)
[   80.910268] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x29)
[   80.931229] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x29)
[   80.963233] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x29)
[   81.005499] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0xf)
[   81.049337] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0xf)
[   81.070848] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0xf)
[   81.100857] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0xf)
[   81.130401] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0xf)
[   81.161025] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x15)
[   81.215156] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x15)
[   81.262374] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x15)
[   81.330417] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x15)
[   81.351022] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x15)
[   81.380393] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1e)
[   81.401580] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1e)
[   81.433159] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1e)
[   81.461358] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1e)
[   81.490617] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1e)
[   81.530489] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1f)
[   81.560837] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1f)
[   81.590263] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1f)
[   81.610808] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1f)
[   81.644307] sunxi_i2c_do_xfer()985 - [i2c0] incomplete xfer (status: 0x20, dev addr: 0x1f)
[   82.307424] newcdr: main entry
[   82.315704] newcdr: [Firmware Version: smartpie@tiger_cdr 2018-10-31 12:03:16]
[   82.325551] newcdr: ===no need to check battery capacity ===
[   82.339223] [VFE]vfe_open
[   82.343538] [VFE]..........................vfe clk open!.......................
[   82.354649] [VFE]vfe_open ok
[   82.359325] [VFE]vfe_close
[   82.362579] [VFE]vfe select input flag = 0, s_input have not be used .
[   82.369931] [VFE]..........................vfe clk close!.......................
[   82.378435] [VFE]vfe_close end
[   82.382042] [VFE]vfe_open
[   82.385046] [VFE]..........................vfe clk open!.......................
[   82.395902] [VFE]vfe_open ok
[   82.400185] [VFE]vfe_close
[   82.403334] [VFE]vfe select input flag = 0, s_input have not be used .
[   82.410786] [VFE]..........................vfe clk close!.......................

[   82.420405] [VFE]vfe_close end
root@camdroid:/ # [   83.429219] [DISP] ready enter pm_runtime_get_sync, device0
[   83.558912] [VFE]vfe_open
[   83.562742] [VFE]..........................vfe clk open!.......................
[   83.571440] [VFE]vfe_open ok
[   83.575083] [VFE_WARN]NOT found this item:  ar0330_mipi, you can add this sensor in the sensor_list_t!
[   83.585659] [VFE_WARN]Not find this sensor info, Set vfe core clk = 500000000, after Set vfe core clk = 297000000 
[   83.607524] [VFE_WARN]os_gpio_set_status, hdl is NULL
[   83.615766] [VFE]mclk on
[   83.677269] [VFE CCI_0 ERR] Status error at addr_8bit = 20, wr_flag = 1, val = 30
[   83.686120] [VFE CCI_0 ERR] Status error at addr_8bit = 20, wr_flag = 1, val = 30
[   83.694779] [VFE CCI_0 ERR] Status error at addr_8bit = 20, wr_flag = 1, val = 30
[   83.703575] [VFE CCI_0 ERR] Status error at addr_8bit = 20, wr_flag = 1, val = 30
[   83.712100] [ar0330_mipi Raw]error at sensor_detect
[   83.717617] [ar0330_mipi Raw]chip found is not an target chip.
[   83.724278] [VFE_ERR]sensor initial error when selecting target device!
[   83.731901] [VFE]vfe_close
[   83.735005] [VFE]mclk off
[   83.812417] [VFE]..........................vfe clk close!.......................
[   83.820862] [VFE]vfe_close end
[   83.826310] newcdr: startPreview finished
[   84.245954] init: waitpid returned pid 68, status = 00000000
[   84.269337] init: process 'startupSound', pid 68 exited
[   84.321291] init: processing action 0x19fcd70 (property:sys.usb.config=mass_storage,adb)
[   84.341013] adb_release
[   84.344273] init: command 'write' r=0
[   84.348610] adb_open
[   84.359203] init: command 'write' r=0
[   84.363898] init: command 'write' r=0
[   84.368160] init: command 'write' r=0
[   84.376920] [VFE]vfe_open
[   84.380349] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   84.390122] [VFE]..........................vfe clk open!.......................
[   84.398876] [VFE]vfe_open ok
[   84.402313] adb_bind_config
[   84.405537] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   84.415208] ep_matches, wrn: endpoint already claimed, ep(0xc050f9f0, 0xc1a77ac0, ep1out-bulk)
[   84.424968] ep_matches, wrn: endpoint already claimed, ep(0xc050f9a4, 0xc1a77ac0, ep1in-bulk)
[   84.434619] ep_matches, wrn: endpoint already claimed, ep(0xc050f9f0, 0xc1a77ac0, ep1out-bulk)
[   84.444286] ep_matches, wrn: endpoint already claimed, ep(0xc050fa3c, 0xc1a91ec0, ep2in-bulk)
[   84.454065] [VFE]vfe_close
[   84.457166] [VFE]vfe select input flag = 0, s_input have not be used .
[   84.464625] [VFE]..........................vfe clk close!.......................
[   84.473156] init: command 'write' r=0
[   84.477414] init: command 'setprop' r=0
[   84.481883] [VFE]vfe_close end

root@camdroid:/ # 

离线

楼主 #49 2019-09-23 14:15:10

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

发一个 荔枝派zero 能跑的 camdroid 固件, ov5647摄像头, 视频效果相当暗,很难看清楚: https://whycan.cn/t_1780.html





离线

#50 2019-09-23 14:17:48

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

目前我感觉在这个地方不一样 .
下面这个是芒果派打印的

[   78.063883] init: command 'setupfs' r=1
[   78.068309] init: out of loopback devices source = /dev/block/mtdblock2
[   78.075822] init: out of loopback devices target = /system
[   78.082102] init: out of loopback devices system = squashfs
[   78.088380] init: out of loopback devices options = (null)
[   78.097647] init: command 'mount' r=0
[   78.101950] init: command 'wait' r=0
[   78.106141] init: out of loopback devices source = /dev/block/mtdblock3
[   78.113610] init: out of loopback devices target = /data
[   78.119692] init: out of loopback devices system = jffs2
[   78.125694] init: out of loopback devices options = (null)
[   78.145835] init: command 'mount' r=0
[   78.150199] init: processing action 0x19fb010 (post-fs)
[   78.156116] init: out of loopback devices source = rootfs
[   78.162319] init: out of loopback devices target = /
[   78.167935] init: out of loopback devices system = rootfs
[   78.174120] init: out of loopback devices options = (null)

下面是licheepi zero 打印的

[   78.041916] init: processing action 0x19fd338 (console_init)
[   78.048646] init: command 'console_init' r=0
[   78.053629] init: processing action 0x19faf30 (fs)
[   78.059106] init: command 'wait' r=0
[   78.063883] init: command 'setupfs' r=1
[   78.068309] init: out of loopback devices source = /dev/block/mtdblock2
[   78.075822] init: out of loopback devices target = /system
[   78.082102] init: out of loopback devices system = squashfs
[   78.088380] init: out of loopback devices options = (null)
[   78.097647] init: command 'mount' r=0
[   78.101950] init: command 'wait' r=0
[   78.106141] init: out of loopback devices source = /dev/block/mtdblock3
[   78.113610] init: out of loopback devices target = /data
[   78.119692] init: out of loopback devices system = jffs2
[   78.125694] init: out of loopback devices options = (null)
[   78.145835] init: command 'mount' r=0
[   78.150199] init: processing action 0x19fb010 (post-fs)
[   78.156116] init: out of loopback devices source = rootfs
[   78.162319] init: out of loopback devices target = /
[   78.167935] init: out of loopback devices system = rootfs
[   78.174120] init: out of loopback devices options = (null)
[   78.180430] init: command 'mount' r=0
[   78.184689] init: processing action 0x19fb070 (post-fs-data)
[   78.191438] init: command 'chown' r=0
[   78.195972] init: command 'chmod' r=0
[   78.200681] init: command 'chmod' r=-2
[   78.210065] init: command 'mkdir' r=0
[   78.214283] init: command 'restorecon' r=0
[   78.223837] init: command 'mkdir' r=0

离线

#51 2019-09-23 14:19:42

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

晕哥 说:

发一个 荔枝派zero 能跑的 camdroid 固件, ov5647摄像头, 视频效果相当暗,很难看清楚: https://whycan.cn/t_1780.html

这个是固件,没有源码.囧

离线

#52 2019-09-24 14:08:22

晕哥小弟
会员
注册时间: 2019-04-04
已发帖子: 309
积分: 299.5

Re: 入坑V3s camdroid编解码视频

使用camdroid ,学习下拍照,可是居然:

[    7.692142] [VFE]vfe_close end
[    8.672478] [DISP] ready enter pm_runtime_get_sync, device0
[    8.823402] [VFE]vfe_open
[    8.826435] [VFE]..........................vfe clk open!.......................
[    8.835973] [VFE]vfe_open ok
[    8.839426] [VFE]Set vfe core clk = 216000000, after Set vfe core clk = 297000000 
[    8.858204] [VFE_ERR]sensor standby off error when selecting target device!
[    8.866207] [VFE]vfe_close
[    8.879451] [VFE_ERR]sensor power off error at device number when csi close!
[    8.887496] [VFE]..........................vfe clk close!.......................
[    8.896007] [VFE]vfe_close end
[    8.901353] newcdr: startPreview finished
[    9.337175] init: waitpid returned pid 68, status = 00000000
[    9.359599] init: process 'startupSound', pid 68 exited
[    9.401532] init: processing action 0x7c7d70 (property:sys.usb.config=mass_storage,adb)
[    9.420688] adb_release
[    9.425096] adb_open
[    9.428450] init: command 'write' r=0
[    9.439645] init: command 'write' r=0
[    9.448988] init: command 'write' r=0
[    9.453914] [VFE]vfe_open
[    9.457359] init: command 'write' r=0
[    9.461630] [VFE]..........................vfe clk open!.......................
[    9.470146] ep_matches, wrn: endpoint already claimed, ep(0xc04d4f7c, 0xc1a66ac0, ep1in-bulk)
[    9.479821] adb_bind_config

离线

#53 2019-12-13 17:36:33

dml1048147924
会员
所在地: 江苏无锡
注册时间: 2019-11-08
已发帖子: 119
积分: 115.5

Re: 入坑V3s camdroid编解码视频

晕哥 说:

我觉得如果在V3s获取摄像头数据, 可以用Linux, 但是要进行视频编解码,那还是得上camdroid.

晕哥大神, bsp 内核 mipi 摄像头采集的图像 要想在LCD 上显示出来,就必须要用camdroid吗

离线

楼主 #54 2019-12-13 17:57:45

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,339
积分: 9202

Re: 入坑V3s camdroid编解码视频

dml1048147924 说:

晕哥大神, bsp 内核 mipi 摄像头采集的图像 要想在LCD 上显示出来,就必须要用camdroid吗

可以不用,采集到rgb/yuv之后直接显示到framebuffer上就行。





离线

#55 2020-05-13 10:02:27

yinyehua
会员
注册时间: 2020-04-16
已发帖子: 17
积分: 17

Re: 入坑V3s camdroid编解码视频

踩前面人的足迹,尽量少掉到坑

离线

#56 2020-09-15 14:50:52

建议重开
会员
注册时间: 2020-09-15
已发帖子: 2
积分: 2

Re: 入坑V3s camdroid编解码视频

晕哥,要做网络视频监控必须得用camdroid吗

离线

#57 2020-10-23 09:28:56

shawn.d
会员
注册时间: 2020-09-12
已发帖子: 164
积分: 95

Re: 入坑V3s camdroid编解码视频

看来我还是得回去整camdroid

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn