¿
Ä Krievanin Â
ÄúËùÔÚµÄλÖãºÉè¼Æ¿ª·¢ > JavaϵÁÐ > 23.3 MSMÖеÄʵÏÖ
¡¶Androidϵͳ¼¶ÉîÈ뿪·¢--ÒÆÖ²Óëµ÷ÊÔ¡·µÚ23Õ Õñ¶¯Æ÷ϵͳ£¬±¾Õ½éÉÜÕñ¶¯Æ÷ÔÚAndroid½ÏСϵͳµÄÒÆÖ²¡£±¾½ÚΪ´ó¼Ò½éÉÜMSMÖеÄʵÏÖ¡£
AD£º
23.3 MSMÖеÄʵÏÖ
MSMµÄmahimahiƽ̨ÖÐVibratorʵÏÖÊÇ»ùÓÚTimed OutputÇý¶¯³ÌÐò¿ò¼ÜµÄÇý¶¯³ÌÐò£¬Òò´Ë²»ÐèÒªÔÙʵÏÖÓ²¼þ³éÏó²ã¡£
VibratorµÄÇý¶¯³ÌÐòÔÚÄں˵Äarch/arm/mach-msm/Ŀ¼ÖеÄmsm_vibrator.cÎļþÖÐʵÏÖ¡£
msm_vibrator.cÖеĺËÐÄʵÏÖÊÇset_pmic_vibrator()º¯Êý£¬ÆäʵÏÖÄÚÈÝÈçÏÂËùʾ£º
- static void set_pmic_vibrator(int on)
- {} req;
- if (!vib_endpoint) {}
- if (on)
- req.data = cpu_to_be32(PMIC_VIBRATOR_LEVEL);
/* µÃµ½ÇëÇóʱ¼ä */- else
- req.data = cpu_to_be32(0);
- msm_rpc_call(vib_endpoint, HTC_PROCEDURE_SET_VIB_ON_OFF, &req,
- sizeof(req), 5 * HZ); /* ½øÐÐRPCµ÷ÓÃ */
- }
set_pmic_vibrator()º¯Êýͨ¹ýMSMϵͳµÄÔ¶³Ì¹ý³Ìµ÷Óã¨RPC£©ÊµÏÖÁ˾ßÌåµÄ¹¦ÄÜ£¬µ÷ÓõÄÖ¸ÁîÓÉHTC_PROCEDURE_SET_VIB_ON_OFFÖ¸¶¨¡£
Õâ¸öÇý¶¯³ÌÐòµÄ³õʼ»¯¹ý³ÌÈçÏÂËùʾ£º
- void __init msm_init_pmic_vibrator(void)
- {}
vibrator_workΪwork_structÀàÐÍ£¬ÔÚ¶ÓÁеÄÖ´Ðк¯Êýupdate_vibratorÖУ¬µ÷ÓÃset_pmic_vibrator()º¯Êý¡£
pmic_vibratorÊÇÒ»¸ötimed_output_devÀàÐ͵ÄÉ豸¡£Æäenableº¯ÊýÖ¸ÕëµÄʵÏÖvibrator_enable¸ù¾ÝÊäÈëµÄÊýÖµ¿ªÊ¼¶¨Ê±Æ÷£¬²¢Í¨¹ýÏòµ÷¶È¶ÓÁнøÐÐÊä³ö²Ù×÷¡£get_timeº¯ÊýÖ¸ÕëµÄʵÏÖvibrator_get_timeÔòÖ»ÊÇ´Ó¶¨Ê±Æ÷ÖлñȡʣÓàʱ¼ä¡£
ÕâÀïÖ®ËùÒÔʹÓö¨Ê±Æ÷¼Ó¶ÓÁеķ½Ê½£¬ÊÇÒòΪenableµÄµ÷Óý«ÐγÉÒ»¸ö³ÖÐøÊ±¼äµÄЧ¹û£¬µ«Êǵ÷Óñ¾Éí²»ÒË×èÈû£¬Òò´ËʵÏÖ¾ÍÈÃvibrator_enableº¯ÊýÍ˳öºó£¬Í¨¹ý¶¨Ê±Æ÷ʵÏÖЧ¹û¡£
| »ØÊéÄ¿ ÉÏÒ»½Ú |
¡¶51CTOÊÓÆµ½Ì³Ì£ºAndroid×é¼þÖ®ServiceÏê½â¡·½«ÏòAndroid¿ª·¢Õß[Ïêϸ]