A20 实现 红外 开关机

       实现本文的前提是要先实现 红外按键的匹配,我的是基于前几篇的基础上做的:      


    /usr/Cubie_A20/lichee/linux-3.4/drivers/input/keyboard 下面的sun7i-ir.c文件中做更改:

参考:

     ( 1. 原因:
               这个power是进入休眠状态而不是关机.
               不能开机的真正原因是:
               内核中的sun7i-ir.c中对休眠进行了处理,把红外的时钟关闭了.
               即在休眠状态下,红外不接收任何信号,所以也就不能唤醒了.
         2. 解决方法:
               把sun-7i-ir.c修改成如下形式: 即将suspend的处理的两个函数,改为空.)

把sun7i-ir.c 中的两个函数

//ͣ???豸
#ifdef CONFIG_HAS_EARLYSUSPEND
static void sun7i_ir_suspend(struct early_suspend *h)
{
/*	unsigned long tmp = 0;
	int ret;
	struct sun7i_ir_data *ts = container_of(h, struct sun7i_ir_data, early_suspend);

	tmp = readl(IR_BASE+IR_CTRL_REG);
	tmp &= 0xfffffffc;
	writel(tmp, IR_BASE+IR_CTRL_REG);
*/
//		dprintk(DEBUG_SUSPEND, "EARLYSUSPEND:enter earlysuspend: sun7i_ir_suspend. \n");
//        if(NULL == ir_clk || IS_ERR(ir_clk)) {
//        		printk("ir_clk handle is invalid, just return!\n");
//        		return;
//        } else {	
//        		clk_disable(ir_clk);
//        }
//	
//	if(NULL == apb_ir_clk || IS_ERR(ir_clk)) {
//		printk("ir_clk handle is invalid, just return!\n");
//		return;
//	} else {	
//		clk_disable(apb_ir_clk);
//	}
	
}


//???»???
static void sun7i_ir_resume(struct early_suspend *h)
{

//	dprintk(DEBUG_INIT, "EARLYSUSPEND:enter laterresume: sun7i_ir_resume. \n");
//	
//	ir_code = 0;
//	timer_used = 0;
//	ir_reset_rawbuffer();
//	ir_clk_cfg();
//	ir_reg_cfg();
}


改成 这个样子,函数中的全部注释掉

然后,再更该/usr/Cubie_A20/android/device/softwinner/wing-common下面的 axp20-supplyer.kl
     是这一行key 255   POWER               WAKE
将Power的值改为255,因为我电源键值对应的是255
保存,变异系统,烧写进板子,启动,就会发现可以实现 电源键关机了,
不过这样实现,短按电源键 只是实现了关闭屏幕,但没有真正给cpu断电,这样子在按电源键就可以实现开机啦
长按能关机, 这样会把cpu断电,红外遥控不能开机








  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A20 Brief 2013-02-27.pdf A20 user manual V1.0 20130322.pdf A20_User_Manual_v1.4_20150510.pdf android应用控制GPIO控制LED灯开发实例1014.pdf 全志A20_系统配置手册_V3.pdf 在风火轮A20开发板平台上使用sipdroid.pdf 树莓派3[android教程]-A10_Android内容定制说明文档V2.1.pdf 树莓派官方购买渠道.pdf 树莓派3[android教程]A20_Camera模组自适应说明_V1.0.pdf 树莓派3 [android教程]A20 CTP与Sensor自动检测使用文档_20130617.pdf 树莓派3[android教程]A20 CTP与Sensor自动检测使用文档_20130617.pdf 树莓派3[android教程]A20_LCD模块开发说明文档_V1.0.pdf 树莓派3 [android教程]A20_Script和GPIO开发说明文档_V1.0.pdf 树莓派3[android教程]A20_Script和GPIO开发说明文档_V1.0.pdf 树莓派3[android教程]A20_Standby使用文档_V1.0.pdf 树莓派3[android教程]A20_USB以太网开发说明文档_V1.0.pdf 树莓派3[android教程]A20平台CTP模块开发说明文档V2.0_20130628.pdf 树莓派3[android教程]A20平台G-sensor模块开发说明文档V2.0_20130628.pdf 树莓派3 [android教程]A20平台I2C设备调试文档_20130617.pdf 树莓派3[android教程]A20平台I2C设备调试文档_20130617.pdf 树莓派3[android教程]A20平台init-input说明文档_20130617.pdf 树莓派3[android教程]A20平台input设备 2.0 更新说明-20130703.txt 树莓派3[android教程]A20平台sensor hal层使用说明_20130617.pdf 树莓派3[android教程]A20_系统配置手册_V2.0.pdf 树莓派3[android教程]A20音频驱动使用说明_20130627.pdf 树莓派3[android教程]-Android4.2 wifi+bt配置说明_V0.2.pdf 树莓派3[android教程]-Android定制详细教程_V1.0.pdf 树莓派3 [android教程]-Android定制详细教程_V1.0(配置文件详解).pdf 树莓派3 [android教程]-Android系统定制教珵.pdf 树莓派3[android教程]-android系统教程.pdf 树莓派3 [android教程]-android驱动开发与环境搭建.pdf 树莓派3[android教程]GPIO配置和管理说明1014.pdf 树莓派3[android教程]-红外遥控器调试.pdf 树莓派3 [android教程]编译服务器搭建.pdf 树莓派3 linux驱动移植指导.pdf 树莓派3主控芯片手册V1.0(A20datasheet).pdf 树莓派3固件烧录教程.pdf 树莓派3规格书.pdf 树莓派3 [软件教程]python驱动GPIO控制LED.pdf 树莓派3-连接VGA 原理图.pdf 树莓派3 集群超算技术.pdf 树莓派3[android教程]A20_Android4.2_wifi+bt配置说明_V0.2_20130716.pdf

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值