1>>>
进入kernel
目录,替换driver
层文件:
- kernel/drivers/nfc/pn544.c
- kernel/include/linux/nfc/pn544.h
- 更新nfc目录下得Makefile喝Config
2>>>
将Firmware
复制到device
/rockchip
/rk3066
下
3>>>修改device/rockchip/rk3066/
rk3066.mk
更新在设备配置文件中更新
library list。(与具体设备相关的代码存放于根目录的
device下)。进入目录
,添加下面代码到rk3066.mk文件。
PRODUCT_PACKAGES += libnfc-nci libnfc_nci_jni nfc_nci_pn547.rk3066 NfcNci Tag com.android.nfc_extras
:
注释:PRODUCT_PACKAGES
是告诉系统哪些包要编译。
PRODUCT_COPY_FILES +=
frameworks/native/data/etc/com.nxp.mifare.xml:system/etc/permissions/com.nxp.mifare.xml
frameworks/native/data/etc/com.android.nfc_extras.xml:system/etc/permissions/com.android.nfc_extras.xml
frameworks/native/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml
frameworks
/native
/data
/etc
/android.hardware.nfc.hce.xml:system
/etc
/permissions
/android.hardware.nfc.hce.xml
PRODUCT_COPY_FILES +=
device
/rokcchip
/rk3066
/Firmware
/libnfc-brcm.conf:system
/etc
/libnfc-brcm.conf
device
/rokcchip
/rk3066
/Firmware
/libnfc-nxp.conf:system
/etc
/libnfc-nxp.conf
device
/rokcchip
/rk3066
/Firmware
/route.xml:system
/etc
/param
/route.xml
device
/rokcchip
/rk3066
/Firmware
/libpn547_fw.so:system
/vendor
/firmware
/libpn547_fw.so
:
注释:android
下copy
文件的方法,格式是:
通常可以直接加到device.mk中。
4>>>将source_android下得文件复制到相应目录中,必须采用scp的方式,(采用samba的方式有复制失败的情况发生)
package
frameworks
external
5>>>如果init.rc中没有下面的内容,则添加进去
on post-fs-data
mkdir /data/nfc
mkdir /etc/param
on boot
setprop ro.nfc.port “I2C”
chmod 0660 /dev/pn544
chown nfc nfc /dev/pn544
6>>>修改板级支持包board-rk30-sdk.c,I2C设备结构体中添加NFC,由于该文件已被其他人修改,导致屏幕点不亮,因此该文件需要改回到之前的版本。
7>>>修改文件external/libnfc-nci/halimpl/pn547/Android.mk,将
HAL_SUFFIX := $(TARGET_DEVICE)
修改为
HAL_SUFFIX := rk30board
8>>>进入kernel,打开make menuconfig,
选上pn544 nfc模块
9>>>重新编译整个系统