ຄໍາແນະນໍາ NXP PN7160 NCI Based NFC controllers

ຂໍ້ມູນເອກະສານ 

ຂໍ້ມູນ ເນື້ອໃນ
ຄໍາສໍາຄັນ PN7160, PN7220, NCI, EMVCo, NFC Forum, Android, NFC
ບົດຄັດຫຍໍ້ ເອ​ກະ​ສານ​ນີ້​ອະ​ທິ​ບາຍ​ວິ​ທີ​ການ​ພອດ PN7160/PN7220 ການ​ປ່ອຍ​ຕົວ​ກາງ​ທົ່ວ​ໄປ​ກັບ Android 14​.

ຄູ່ມືນີ້ໃຫ້ຄໍາແນະນໍາຢ່າງລະອຽດກ່ຽວກັບວິທີການລວມຕົວຄວບຄຸມ NFC ທີ່ອີງໃສ່ NXP NCI, PN7160 ແລະ PN7220, ເຂົ້າໄປໃນສະພາບແວດລ້ອມ Android. ຂະບວນການປະກອບດ້ວຍການຕິດຕັ້ງໄດເວີ kernel ທີ່ຈໍາເປັນແລະການຕັ້ງຄ່າຂອງ MW (ເບິ່ງ [1]). ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ, ເບິ່ງຫນ້າຜະລິດຕະພັນສໍາລັບ PN7160 [2] ແລະ PN7220 [3]. ໂຄງການ Android Open Source (AOSP) ໄດ້ຖືກປັບປຸງເພື່ອລວມເອົາການຮອງຮັບທັງ PN7160 ແລະ PN7220 NFC controllers.

PN7220 ມາໃນສອງການຕັ້ງຄ່າ: single-host ແລະ dual-host. stack ແມ່ນໂດຍທົ່ວໄປຄືກັນສໍາລັບທັງສອງ. ໃນໂຫມດໂຮດສອງ, SMCU ຖືກເພີ່ມ, ຊຶ່ງຫມາຍຄວາມວ່າວຽກງານທີ່ກ່ຽວຂ້ອງກັບ EMVCo ທັງຫມົດຖືກປະຕິບັດຢູ່ໃນ SMCU. ໃນ singlehost EMVCo ຖືກປະຕິບັດໃນ stack EMVCo MW ທີ່ອຸທິດຕົນ

Android MW stack

ຮູບທີ 1 ສະແດງເຖິງສະຖາປັດຕະຍະກຳຂອງ PN7220 Android NFC stack.

  • NXP I2C Driver ເປັນໂມດູນແກ່ນທີ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງຊັບພະຍາກອນຮາດແວຂອງ PN7220.
  • ໂມດູນ HAL ແມ່ນການປະຕິບັດຂອງຊັ້ນການຄັດລອກຮາດແວສະເພາະ NXP NFC controller-specific abstraction.
  • LibNfc-Nci ເປັນຫ້ອງສະຫມຸດພື້ນເມືອງທີ່ສະຫນອງການເຮັດວຽກຂອງ NFC.
  • NFC JNI ເຮັດຫນ້າທີ່ເປັນຂົວລະຫວ່າງຫ້ອງຮຽນ Java ແລະ Native.
  • NFC ແລະ EMVCo Framework ເປັນໂມດູນຂອງກອບຄໍາຮ້ອງສະຫມັກທີ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງ NFC ແລະ EMVCo functionality.

ຮູບທີ 2 ສະແດງໃຫ້ເຫັນສະຖາປັດຕະຍະກໍາຂອງ PN7160 Android NFC stack. 


ຮູບ 2. PN7160 Android MW stack 

  • NXP I2C Driver ເປັນໂມດູນແກ່ນທີ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງຊັບພະຍາກອນຮາດແວຂອງ PN7160.
  • ໂມດູນ HAL ແມ່ນການປະຕິບັດຂອງຊັ້ນການຄັດລອກຮາດແວສະເພາະ NXP NFC controller-specific abstraction.
  • LibNfc-nci ເປັນຫ້ອງສະຫມຸດພື້ນເມືອງທີ່ສະຫນອງການເຮັດວຽກຂອງ NFC.
  • NFC JNI ເຮັດຫນ້າທີ່ເປັນຂົວລະຫວ່າງຫ້ອງຮຽນ Java ແລະ Native.
  • NFC ແມ່ນໂມດູນຂອງກອບແອັບພລິເຄຊັນທີ່ອະນຸຍາດໃຫ້ເຂົ້າເຖິງຟັງຊັນ NFC.
  • ລະຫັດແຫຼ່ງ MW ແມ່ນຄືກັນສໍາລັບ PN7160 ແລະ PN7220, ແຕ່ມີຂໍ້ຈໍາກັດຈໍານວນຫນ້ອຍຫນຶ່ງ.

ຕາຕະລາງ 1 ສະແດງຄຸນສົມບັດທີ່ບໍ່ຮອງຮັບຂອງແຕ່ລະຕົວຄວບຄຸມ NFC. 

ຕາຕະລາງ 1. ຄຸນສົມບັດທີ່ບໍ່ຮອງຮັບ 

ຕົວຄວບຄຸມ NFC ຄຸນສົມບັດທີ່ບໍ່ຮອງຮັບ
PN7160
  • EMVCo MW stack
  • SMCU
  • ຄຸນສົມບັດ CT
PN7220
  • NFCEE_NDEF

ໝາຍເຫດ: ຕັ້ງແຕ່ Android 14 ເປັນຕົ້ນໄປ P2P ຍັງບໍ່ຮອງຮັບໃນ PN7160.

Kernel driver

ເພື່ອສ້າງການເຊື່ອມຕໍ່ກັບ PN7220 ຫຼື PN7160, Android stack ໃຊ້ driver kernel nxpnfc. ມັນສາມາດພົບໄດ້ໃນ [4].

ລາຍລະອຽດຄົນຂັບ

PN7220 ສະຫນັບສະຫນູນ I2C ການໂຕ້ຕອບທາງດ້ານຮ່າງກາຍ, ໃນຂະນະທີ່ PN7160 ສະຫນັບສະຫນູນ I2C ຫຼື SPI ການໂຕ້ຕອບທາງດ້ານຮ່າງກາຍ. ເມື່ອຕິດຕັ້ງໃສ່ kernel, ໄດເວີຈະຖືກເປີດເຜີຍຜ່ານໂຫນດອຸປະກອນໃນ /dev/nxpnfc.

ໝາຍເຫດ: PN7160 ແລະ PN7220 ໃຊ້ສອງໄດເວີທີ່ແຕກຕ່າງກັນ, ການເລືອກໄດເວີທີ່ຖືກຕ້ອງແມ່ນຕ້ອງການໂດຍອີງໃສ່ປະເພດຊິບ.

ກຳລັງໄດ້ຮັບລະຫັດແຫຼ່ງຂັບ PN7160

ສຳເນົາ nfcandroid_platform_drivers/drivers/pn7160/nfc driver repository ເຂົ້າໄປໃນ kernel directory, ແທນທີ່ການຈັດຕັ້ງປະຕິບັດທີ່ມີຢູ່ແລ້ວ. ອ້າງເຖິງ [4] ສໍາລັບແກ່ນ files.

$rm -rf drivers/nfc
$git clone “https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git” -b
br_ar_14_comm_infra_dev

ນີ້ສິ້ນສຸດລົງດ້ວຍໄດເວີໂຟເດີ / nfc ທີ່ມີສິ່ງຕໍ່ໄປນີ້ files:

  • README.md: ຂໍ້ມູນບ່ອນເກັບມ້ຽນ
  • ເຮັດfile: ຄົນຂັບຫົວຂໍ້ເຮັດໃຫ້file
  • Kconfig: ການຕັ້ງຄ່າໄດເວີ file
  • ໃບອະນຸຍາດ: ຂໍ້ກໍານົດໃບອະນຸຍາດຂັບຂີ່
  • ໂຟເດີຍ່ອຍ nfc ປະກອບມີ:
    • commoc.c: ການປະຕິບັດໄດເວີທົ່ວໄປ
    • common.h: ຄໍານິຍາມການໂຕ້ຕອບຂອງໄດເວີທົ່ວໄປ
    • i2c_drv.c: ການຈັດຕັ້ງປະຕິບັດໄດເວີສະເພາະ i2c
    • – i2c_drv.h: i2c ຄໍານິຍາມການໂຕ້ຕອບຂອງໄດເວີສະເພາະ
    • spi_drv.c: ການປະຕິບັດໄດເວີສະເພາະ spi
    • spi_drv.h: spi ຄໍານິຍາມການໂຕ້ຕອບຂອງໄດເວີສະເພາະ
    • ເຮັດfile: ເຮັດfile ເຊິ່ງລວມຢູ່ໃນການຜະລິດfile ຂອງ​ຄົນ​ຂັບ​ລົດ​
    • Kbuild => ກໍ່ສ້າງ file
    • Kconfig => ການຕັ້ງຄ່າໄດເວີ file
ກຳລັງໄດ້ຮັບລະຫັດແຫຼ່ງຂັບ PN7220

ສຳເນົາ nfcandroid_platform_drivers/drivers/pn7220cs/nfc (single-host usecase) ຫຼື nfcandroid_platform_ drivers/drivers/pn7220cms/nfc (dual-host usecase) ເຂົ້າໄປໃນ kernel directory drivers/nfc, ແທນທີ່ໄດເວີທີ່ມີຢູ່ແລ້ວ. ອ້າງເຖິງ [4] ສໍາລັບແກ່ນ files.

$rm -rf drivers/nfc$git clone “https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git” -bbr_ar_14_comm_infra_dev

ປະຕິບັດຕາມຄໍາສັ່ງນີ້, folder drivers/nfc ມີດັ່ງຕໍ່ໄປນີ້ files:

  • README.md: ຂໍ້ມູນບ່ອນເກັບມ້ຽນ
  • ເຮັດfile: ຄົນຂັບຫົວຂໍ້ເຮັດໃຫ້file
  • Kconfig: ການຕັ້ງຄ່າໄດເວີ file
  • ໃບອະນຸຍາດ: ຂໍ້ກໍານົດໃບອະນຸຍາດຂັບຂີ່
  • ໂຟເດີຍ່ອຍ nfc ປະກອບມີ:
    • commoc.c: ການປະຕິບັດໄດເວີທົ່ວໄປ
    • common.h: ຄໍານິຍາມການໂຕ້ຕອບຂອງໄດເວີທົ່ວໄປ
    • i2c_drv.c: i2 c ການປະຕິບັດໄດເວີສະເພາະ
    • i2c_drv.h: i2 c ຄໍານິຍາມການໂຕ້ຕອບຂອງໄດເວີສະເພາະ
    • ເຮັດfile: ເຮັດfile ເຊິ່ງລວມຢູ່ໃນການຜະລິດfile ຂອງ​ຄົນ​ຂັບ​ລົດ​
    • Kbuild => ກໍ່ສ້າງ file
    • Kconfig => ການຕັ້ງຄ່າໄດເວີ file
ການກໍ່ສ້າງຄົນຂັບ

devicetree ແມ່ນຮັບຜິດຊອບສໍາລັບການເພີ່ມໄດເວີກັບແກ່ນແລະໂຫລດມັນຢູ່ໃນ boot ອຸປະກອນ.

ຫຼັງຈາກການອັບເກຣດສະເພາະ devicetree, devicetree ທີ່ກ່ຽວຂ້ອງກັບ platform ຕ້ອງໄດ້ຮັບການສ້າງຂຶ້ນໃຫມ່. NXP ແນະນໍາໃຫ້ໃຊ້ kernel ຮຸ່ນ 5.10 ຍ້ອນວ່າມັນສະຫນອງການກວດສອບທີ່ສົມບູນແບບ.

ເພື່ອສ້າງໄດເວີ, ຂັ້ນຕອນຕໍ່ໄປນີ້ຕ້ອງຖືກປະຕິບັດ:

  1. ເອົາໄດເວີ kernel
  2. ເອົາລະຫັດແຫຼ່ງສໍາລັບຄົນຂັບ
  3. ແກ້ໄຂຄຳນິຍາມຂອງ devicetree, ເຊິ່ງເປັນເອກະລັກຂອງອຸປະກອນທີ່ໃຊ້ຢູ່.
  4. ສ້າງ​ຄົນ​ຂັບ​ໄດ້​:

ກ. ໂດຍຜ່ານຂັ້ນຕອນ menuconfig, ເພີ່ມໄດເວີເປົ້າຫມາຍເຂົ້າໄປໃນການກໍ່ສ້າງ.

ຫຼັງຈາກສ້າງ kernel ທີ່ສໍາເລັດແລ້ວ, ໄດເວີຈະຖືກລວມຢູ່ໃນຮູບພາບຂອງແກ່ນ. ຮູບພາບ kernel ໃຫມ່ທັງຫມົດຕ້ອງໄດ້ຮັບການຄັດລອກເຂົ້າໄປໃນ AOSP build.

ການປັບຕົວ AOSP

NXP ເພີ່ມການດັດແປງລະຫັດ AOSP. ນີ້ຫມາຍຄວາມວ່າລະຫັດ AOSP ຖືກນໍາໃຊ້ເປັນພື້ນຖານ, ແຕ່ຂະຫຍາຍສໍາລັບລັກສະນະສະເພາະ NXP. [5] ແມ່ນ AOSP ໃນປະຈຸບັນ tag ໃຊ້ໂດຍ NXP. ຫຼັງຈາກໄດ້ຮັບການກໍ່ສ້າງ AOSP, ລະຫັດ AOSP ທີ່ມີຢູ່ແລ້ວຕ້ອງຖືກປ່ຽນແທນ, ແລະຈໍານວນແພັກເກັດຕ້ອງຖືກນໍາໃຊ້.

ໝາຍເຫດ: ສາມາດໃຊ້ລະຫັດ AOSP ຮຸ່ນທີ່ແຕກຕ່າງກັນ, ແຕ່ການດັດແກ້ເພີ່ມເຕີມຕ້ອງຖືກປະຕິບັດ.

AOSP ກໍ່ສ້າງ

ເອົາລະຫັດແຫຼ່ງ AOSP.

$ repo init -u https://android.googlesource.com/platform/manifest -b android-14.0.0_r2 $ repo sync

ໝາຍເຫດ: ເຄື່ອງມື repo ຕ້ອງໄດ້ຮັບການຕິດຕັ້ງຢູ່ໃນລະບົບ. ອ້າງອີງເຖິງ [6] ສໍາລັບຄໍາແນະນໍາ.

ສ້າງລະຫັດແຫຼ່ງ.

$cd Android_AROOT
$source build/envsetup.sh
$lunch select_target #target ແມ່ນ DH ທີ່ພວກເຮົາຕ້ອງການໃຊ້ສໍາລັບຕົວຢ່າງample: evk_8mn-userderbug
$make -j

ຄັດລອກ NXP repositories ທັງຫມົດເຂົ້າໄປໃນສະຖານທີ່ເປົ້າຫມາຍ.

ຕາຕະລາງ 2. ສາຂາສໍາລັບສະບັບ Android ສະເພາະ

ລຸ້ນ Android ສາຂາ
Android 14 br_ar_14_comm_infra_dev

ໝາຍເຫດ: ໃນຂະນະທີ່ cloning, ມັນເປັນສິ່ງສໍາຄັນທີ່ຈະເລືອກເອົາສາຂາທີ່ຖືກຕ້ອງ.

ຕາຕະລາງ 3. Clone repositories

AOSP Repos NXP GitHub Repos
“$ANDROID_ROOT”/packages/ ແອັບ/Nfc https://github.com/nxp-nfc-infra/nxp_nci_hal_nfc/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/system/nfc https://github.com/nxp-nfc-infra/nxp_nci_hal_libnfc-nci/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/ຮາດແວ/ nxp/nfc https://github.com/nxp-nfc-infra/nfcandroid_nfc_hidlimpl/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/ຜູ້ຂາຍ/nxp/ ກອບ https://github.com/nxp-nfc-infra/nfcandroid_frameworks/tree/br_ar_14_comm_infra_dev
“$ANDROID_ROOT”/ຮາດແວ/ nxp/emvco https://github.com/nxp-nfc-infra/nfcandroid_emvco_aidlimpl/tree/ br_ar_14_comm_infra_dev
“$ANDROID_ROOT” https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/tree/ br_ar_14_comm_infra_dev

ຕາຕະລາງ 4. Clone repositories ສໍາລັບຄໍາຮ້ອງສະຫມັກການທົດສອບແລະການສະຫນັບສະຫນູນ TDA 

ໂຟນເດີໃນ GitHub AOSP Repos NXP GitHub IC ຮອງຮັບ
test_apps/SMCU_Switch “$ANDROID_ROOT”/

ແພັກເກດ/ແອັບ/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/EMVCoMode SwitchApp “$ANDROID_ROOT”/

packages/apps/Nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/Cockpit “$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/ການທົດສອບຕົນເອງ “$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/SelfTest_pn7160 “$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7160
test_apps/load_unload “$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
test_apps/SelfTestAidl “$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_test_apps

PN7220
nfc_tda “$ANDROID_ROOT”/system/ https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
emvco_tda “$ANDROID_ROOT”/

ຮາດແວ/nxp/emvco/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
emvco_tda_test “$ANDROID_ROOT”/

ຮາດແວ/nxp/emvco/

https://github.com/ nxp-nfc-infra/

nfcandroid_infra_comm_libs

PN7220
NfcTdaTestApp “$ANDROID_ROOT”/

packages/apps/Nfc/

https://github.com/ nxp-nfc-infra/nfcandroid_infra_comm_libs PN7220

ນຳໃຊ້ແພັດ

ຕາຕະລາງ 5. ນຳໃຊ້ແຜ່ນແພ

ສະຖານທີ່ສະໝັກ Patch ທີ່ຈະນໍາໃຊ້ ສະຖານທີ່ຂອງ patch ໄດ້
“$ANDROID_ROOT”/build/ bazel/ AROOT_build_bazel. ເພີ້ມ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/build/ ເຮັດ/ AROOT_build_make. ເພີ້ມ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/build/ soong/ AROOT_build_soong. ເພີ້ມ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ກອບ/ພື້ນຖານ/

AROOT_frameworks_ base.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ໂຄງຮ່າງການ/ພື້ນເມືອງ/

AROOT_frameworks_ native.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ລະບົບ/ບັນທຶກ/

AROOT_system_logging. ເພີ້ມ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

ແພັກເກດ/ໂມດູນ/ Bluetooth/

AROOT_packages_ modules_Bluethooth. ເພີ້ມ https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/
“$ANDROID_ROOT”/

framework/proto_logging/

AROOT_framework_ proto_logging.patch https://github.com/nxp-nfc-infra/nfcandroid_platform_reference/ tree/br_ar_14_comm_infra_dev/build_cfg/build_pf_patches/

ໝາຍເຫດ: ກວດເບິ່ງຜົນຜະລິດຫຼັງຈາກນໍາໃຊ້ການສ້ອມແປງ, ຖ້າບັນຫາໃດຫນຶ່ງໄດ້ຖືກສັງເກດເຫັນໃນລະຫວ່າງການ patching.

ເພີ່ມຫ້ອງສະໝຸດ FW. ອ້າງເຖິງ [8] ສໍາລັບ FW.

ໝາຍເຫດ: ບໍ່ບັງຄັບ. FW ສາມາດອັບເດດໄດ້ສະເໝີ.

ສໍາລັບ PN7160: 

$git clone https://github.com/NXP/nfc-NXPNFCC_FW.git
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn7160_fw.so AROOT/ຜູ້ຂາຍ/
nxp/7160/firmware/lib64/libpn7160_fw.so
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/32-bit/libpn7160_fw.so AROOT/ຜູ້ຂາຍ/
nxp/7160/firmware/lib/libpn7160_fw.so

ສໍາລັບ PN7220: 

$git clone https://github.com/NXP/nfc-NXPNFCC_FW.git
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn7220_64bit.so AROOT/vendor/nxp/
pn7220/firmware/lib64/libpn72xx_fw.so

ເພີ່ມ NFC ເຂົ້າໃນການກໍ່ສ້າງ

ໃນ device.mk ເຮັດfile (ສໍາ​ລັບ​ການ example, device/brand/platform/device.mk), ຮວມເຖິງການສ້າງສະເພາະfiles:

$(ໂທຫາ inherit-product, vendor/nxp/nfc/device-nfc.mk) 

ໃນ BoardConfig.mk ເຮັດfile (ສໍາ​ລັບ​ການ example, device/brand/platform/BoardConfig.mk), ປະກອບມີການສ້າງສະເພາະfile:

-include vendor/nxp/nfc/BoardConfigNfc.mk 

ເພີ່ມແອັບພລິເຄຊັນ DTA

$git clone https://github.com/NXPNFCProject/NXPAndroidDTA.git $patch -p1 nfc-dta.patch #located in https://github.com/nxp-nfc-infra/ nfcandroid_platform_reference/tree/br_ar_14_comm_infra_dev/ build_mw_patches/db845c $ cp -r nfc-dta /system/nfc-dta $/system/nfc-dta/$ mm -j

ສ້າງ AOSP ດ້ວຍການປ່ຽນແປງ:

$cd framework/base
$mm
$cd ../..
$cd vendor/nxp/frameworks
$mm #ຫຼັງຈາກອັນນີ້, com.nxp.emvco.jar ແລະ com.nxp.nfc.jar ຄວນຢູ່ພາຍໃນ/
ເປົ້າໝາຍ/ຜະລິດຕະພັນ/xxxx/system/framwework/
$cd ../../..
$cd hardware/nxp/nfc
$mm
$cd ../../..
$make -j

ດຽວນີ້, ເປີດອຸປະກອນດ້ວຍຮູບ Android ໃໝ່.

ແອັບ Android NFC ແລະ Lib ຢູ່ໃນເປົ້າໝາຍ

ຫຼັງຈາກການກໍ່ສ້າງ, ຫ້ອງສະຫມຸດທີ່ສ້າງຂຶ້ນຕ້ອງໄດ້ຮັບການຕິດຕັ້ງຢູ່ໃນອຸປະກອນເປົ້າຫມາຍດັ່ງກ່າວ. ພາກທີ 4.2 ກໍານົດສະຖານທີ່ໂຄງການ, ຫ້ອງສະຫມຸດທີ່ສອດຄ້ອງກັນ, ແລະສະຖານທີ່ອຸປະກອນເປົ້າຫມາຍທີ່ຈະຕິດຕັ້ງ.

ໝາຍເຫດ: EMVCo binary ແມ່ນໃຊ້ໄດ້ກັບ PN7220 ເທົ່ານັ້ນ.

ຕາຕະລາງ 6. ລວບລວມ files ກັບເປົ້າຫມາຍອຸປະກອນ 

ສະຖານທີ່ໂຄງການ ລວບລວມ Files ຄຳເຫັນ ສະຖານທີ່ຢູ່ໃນອຸປະກອນເປົ້າຫມາຍ
“$ANDROID_ROOT”/

packages/apps/Nfc

NfcNci.odex NfcNci.vdex lib/NfcNci.apk oat/libnfc_nci_jni.so   /system/app/NfcNci/ oat/arm64/

/system/app/NfcNci/ oat/arm64/

/system/app/NfcNci/

/system/lib64/

“$ANDROID_ROOT”/

ລະບົບ/nfc

libnfc_nci.so   /system/lib64/
“$ANDROID_ROOT”/

ລະບົບ/nfc_tda”

nfc_tda.so ໃຊ້ໄດ້ກັບຄຸນສົມບັດ CT ເທົ່ານັ້ນ. /system/lib64/
“$ANDROID_ROOT”/

ຮາດແວ/nxp/nfc

nfc_nci_nxp_pn72xx.so android.hardware.nfc_72xx@1.2-service android.hardware.nfc_72xx@1.2-service.rc android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so ຜູ້ຂາຍ.nxp.nxpnfc@2.0.so ຜູ້ຂາຍ.nxp.nxpnfc@1.0.so   /vendor/lib64

/vendor/bin/hw/

/vendor/etc/init

/system/lib64/

/system/lib64/

/system/lib64/

/vendor/lib64/

/vendor/lib64/

“$ANDROID_ROOT/

ຮາດແວ/ການໂຕ້ຕອບ/nfc”

android.hardware.nfc-V1-ndk.so android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so android.hardware.nfc@1.0.so android.hardware.nfc@1.1.so android.hardware.nfc@1.2.so   /system\/ib64/

/system/lib64/

/system/lib64/

/system/lib64/

/vendor/lib64/

/vendor/lib64/

/vendor/lib64/

“$ANDROID_ROOT”/

ຜູ້ຂາຍ/nxp/frameworks

com.nxp.emvco.jar (PN7220) com.nxp.nfc.jar   /system/framework

/system/framework

“$ANDROID_ROOT”/

ຮາດແວ/nxp/emvco

emvco_poller.so (PN7220) vendor.nxp.emvco-V1-ndk.so vendor.nxp.emvco-V2-ndk.so vendor.nxp.emvco-V2-ndk.so vendor.nxp.emvco-service vendor.nxp. emvco-service.rc   /vendor/lib64/

/system/lib64/

/system/lib64/

/vendor/lib64/

/vendor/bin/hw/

/vendor/etc/init/

“$ANDROID_ROOT/

ຮາດແວ/nxp/emvco_tda”

emvco_tda.so ໃຊ້ໄດ້ກັບຄຸນສົມບັດ CT ເທົ່ານັ້ນ. /vendor/lib64/
ຂັດຂວາງການສ້າງແຜນທີ່

ການສ້າງແຜນທີ່ຊື່ບລັອກຈາກພາກທີ 1 ໄປຫາສະຖານທີ່ເປົ້າໝາຍໃນລະຫັດ AOSP.

ຕາຕະລາງ 7. Patch ສະຖານທີ່ໃນ NFC Stack 

ບລັອກຊື່ ສະຖານທີ່ຢູ່ໃນລະຫັດ AOSP
NFC HAL ແລະ EMVCo HAL ຮາດແວ/ການໂຕ້ຕອບ/
NFC Stack ຮາດແວ/nxp/nfc/
ຊັ້ນແລກປ່ຽນຂໍ້ມູນ EMVCo L1 = EMVCo Stack ຮາດແວ/nxp/emvco/
LibNfc-Nci ລະບົບ/nfc/
NFC JNI packages/apps/nfc/
ບໍລິການ NFC packages/apps/nfc/
NFC Framework ກອບ/ພື້ນຖານ/
EMVCo Framework ຜູ້ຂາຍ/nxp/frameworks/
EMVCo AP

stack PN7220 MW ຂະຫຍາຍລະຫັດ AOSP ກັບ EMVCo MW stack. ພາກນີ້ອະທິບາຍເຖິງ EMVCo APIs.

ໝາຍເຫດ: APIs ສາມາດຖືກເອີ້ນພຽງແຕ່ເມື່ອໃຊ້ PN7220 IC. ຖ້າໂທຫາມັນດ້ວຍ PN7160 IC, API ບໍ່ເຮັດວຽກ. EMVCo Profile ການຄົ້ນພົບ. APIs ເຫຼົ່ານັ້ນສາມາດໃຊ້ກັບ contactless pro ແລະ contactless profiles.

ລົງທະບຽນEMVCoEventListener()

  • ndk::ScopedAStatus registerEMVCoEventListener ( const std::shared_ptr< INxpEmvcoClientCallback > & in_clientCallback, bool * in_aidl_return)
  • ລາຍລະອຽດ: ລົງທະບຽນຟັງຊັນໂທກັບ EMVCo ເພື່ອຮັບເຫດການຈາກອຸປະກອນຜູ້ຟັງ
  • ໝາຍເຫດ: ຟັງຊັນນີ້ແມ່ນຕ້ອງບານກ່ອນທີ່ຈະເອີ້ນ api ອື່ນ.
  • ພາລາມິເຕີ:
    • [in] *in_clientCallback: ມີ EMVCo client HAL callback
    • [ໃນ] *in_aidl_return: ຊີ້ບອກສະຖານະການລົງທະບຽນເພື່ອກັບຄືນໄປຫາຜູ້ໂທ
  • ກັບຄືນ
    • boolean ກັບຄືນຄວາມຈິງ, ຖ້າຄວາມສໍາເລັດແລະສົ່ງຄືນເປັນຜິດ, ຖ້າລົ້ມເຫລວໃນການລົງທະບຽນ

ໄດ້​ຮັບ​ຮູບ​ແບບ Discovery ປະ​ຈຸ​ບັນ () 

  • ndk::ScopedAStatus getCurrentDiscoveryMode(::aidl::vendor::nxp::emvco::NxpDiscoveryMode * _aidl_return)
  • ລາຍລະອຽດ: ສົ່ງຄືນໂປຣໂມຊັນທີ່ເຄື່ອນໄຫວໃນປັດຈຸບັນfile ປະເພດ.
  • ກັບຄືນ
    • NxpDiscoveryMode – NFC/EMVCo/ບໍ່ຮູ້ຈັກ

onNfcStateChange() 

  • ndk::ScopedAStatus onNfcStateChange(NxpNfcState in_nfcState)
  • ລາຍລະອຽດ: ອັບເດດສະຖານະ NFC ເປັນ EMVCo HAL.
  • ພາລາມິເຕີ:
    • [in] in_nfcState: ລະບຸສະຖານະ NFC
  • ຜົນຕອບແທນ:
    • ໂມຄະ

ລົງທະບຽນNFCStateChangeCallback()

  • ndk::ScopedAStatus registerNFCStateChangeCallback ( const std::shared_ptr< ::aidl::vendor::nxp::emvco::INxpNfcStateChangeRequestCallback > & in_nfcStateChangeRequestCallback, bool *_aidl
  • ລາຍລະອຽດ: ລົງທະບຽນຟັງຊັນການໂທກັບ NFC ເພື່ອຮັບເຫດການຈາກອຸປະກອນຜູ້ຟັງ.
  • ໝາຍເຫດ: ຟັງຊັນນີ້ຕ້ອງໂທຫາກ່ອນທີ່ຈະເອີ້ນໃຊ້ api ອື່ນ.
  • ພາລາມິເຕີ:
    • [in] in_nfcStateChangeCallback: INxpNfcStateChangeRequestCallback ຟັງຊັນການໂທກັບເຫດການທີ່ຈະຜ່ານໂດຍຜູ້ໂທ. ມັນຄວນຈະປະຕິບັດເພື່ອເປີດ / ປິດ NFC ໂດຍອີງໃສ່ຄໍາຮ້ອງຂໍທີ່ໄດ້ຮັບ.
  • ຜົນຕອບແທນ: boolean ໃຫ້ຜົນເປັນຈິງ, ຖ້າສຳເລັດ ແລະສົ່ງຄືນເປັນຜິດ, ຖ້າລົງທະບຽນບໍ່ສຳເລັດ.

setByteConfig()

ndk::ScopedAStatus setByteConfig ( ::aidl::vendor::nxp::emvco::NxpConfigType
in_type,
int32_t in_length,
int8_t in_value,
::aidl::vendor::nxp::emvco::NxpEmvcoStatus * _aidl_return

setEMVCoMode()

ndk::ScopedAStatus setEMVCoMode ( int8_t in_disc_mask,
bool in_isStartEMVCo )

  • ລາຍລະອຽດ: ເລີ່ມໂໝດ EMVCo ດ້ວຍ Device-Controller. ເມື່ອ Application Data Channel ຖືກສ້າງຕັ້ງຂຶ້ນ, ແອັບພລິເຄຊັນອາດຈະສົ່ງເລີ່ມຕົ້ນໂໝດ EMVCo ກັບ Device-Controller.
  • ພາລາມິເຕີ:
    • [in] in_disc_mask EMVCo: ເທັກໂນໂລຍີການລົງຄະແນນສຽງຖືກຕັ້ງຄ່າຜ່ານພາລາມິເຕີນີ້
    • [in]in_isStartEMVCo: ລະບຸເພື່ອເລີ່ມຕົ້ນ ຫຼືຢຸດໂໝດ EMVCo
  • ຜົນຕອບແທນ:
    • ໂມຄະ

setLed()

ndk::ScopedAStatus setLed ( ::aidl::vendor::nxp::emvco::NxpLedControl
in_ledControl,
::aidl::ຜູ້ຂາຍ::nxp::emvco::NxpEmvcoStatus * emvco_status)

ສໍາລັບການຕິດຕໍ່ EMVCo, APIs ຕໍ່ໄປນີ້ສາມາດຖືກນໍາໃຊ້ຢູ່ເທິງສຸດຂອງອັນທີ່ຜ່ານມາ.

closeTDA()

ndk::ScopedAStatus closeTDA (int8_t in_tdaID, bool in_standBy )

  • ລາຍລະອຽດ: ປິດບັດອັດສະລິຍະທີ່ເຊື່ອມຕໍ່ຜ່ານ TDA
  • ພາລາມິເຕີ:
    • [ໃນ] tdaID: id ຂອງຊ່ອງ tda ທີ່ຈະປິດ
  • ຂໍ້ຍົກເວັ້ນ:
    • EMVCO_STATUS_INVALID_PARAMETER, ຖ້າໃຫ້ tdaID ບໍ່ຖືກຕ້ອງ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED ເມື່ອຄຸນສົມບັດບັດຕິດຕໍ່ບໍ່ຖືກຮອງຮັບ.
  • ຜົນຕອບແທນ:
    • ໂມຄະ

ຄົ້ນພົບTDA()

ndk::ScopedAStatus discoverTDA
( std::vector<::aidl::vendor::nxp::emvco::NxpEmvcoTDAInfo > * emvcoTDAIinfo )

ລາຍລະອຽດ: discoverTDA ໃຫ້ລາຍລະອຽດທັງໝົດຂອງບັດອັດສະລິຍະທີ່ເຊື່ອມຕໍ່ຜ່ານ TDA

  • ພາລາມິເຕີ:
    • [ໃນ]*in_clientCallback: ໃຫ້ສະຖານະ EMVCo ແລະສະຖານະ TDA ເປັນການໂທກັບ
  • ຂໍ້ຍົກເວັ້ນ:
    •  EMVCO_STATUS_FEATURE_NOT_SUPPORTED ເມື່ອຄຸນສົມບັດບັດຕິດຕໍ່ບໍ່ຖືກຮອງຮັບ.
  • ຜົນຕອບແທນ:
    • NxpEmvcoTDAinfo[] ສົ່ງຄືນບັດອັດສະລິຍະທັງໝົດທີ່ເຊື່ອມຕໍ່ຜ່ານ TDA. emvcoTDAIinfo ທີ່ຖືກຕ້ອງແມ່ນໄດ້ຮັບເມື່ອສະຖານະແມ່ນ EMVCO_STATUS_OK ເທົ່ານັ້ນ

openTDA()

ndk::ScopedAStatus openTDA (int8_t in_tdaID, bool in_standBy, int8_t * out_connID )

ລາຍລະອຽດ: ເປີດບັດອັດສະລິຍະທີ່ເຊື່ອມຕໍ່ຜ່ານ TDA

  • ພາລາມິເຕີ:
    • [ໃນ]tdaID: tda id ຂອງບັດອັດສະລິຍະທີ່ໄດ້ຮັບຜ່ານ discoverTDA
  • ຂໍ້ຍົກເວັ້ນ:
    • EMVCO_STATUS_INVALID_PARAMETER, ຖ້າໃຫ້ tdaID ບໍ່ຖືກຕ້ອງ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED ເມື່ອຄຸນສົມບັດບັດຕິດຕໍ່ບໍ່ຖືກຮອງຮັບ.
  • ຜົນຕອບແທນ:
    • byte ສົ່ງຄືນ id ການເຊື່ອມຕໍ່ຂອງບັດອັດສະລິຍະ. ID ການເຊື່ອມຕໍ່ທີ່ຖືກຕ້ອງໄດ້ຮັບພຽງແຕ່ເມື່ອສະຖານະແມ່ນ EMVCO_STATUS_OK ເທົ່ານັ້ນ

ລົງທະບຽນEMVCoCTListener() 

ndk::ScopedAStatus registerEMVCoCTListener ( const std::shared_ptr<::aidl::vendor::nxp::emvco::INxpEmvcoTDACallback > & in_in_clientCallback, bool * _aidl_return)

  • ລາຍລະອຽດ: ລົງທະບຽນ EMVCoCT callback ກັບ stack EMVCo
  • ພາລາມິເຕີ:
    • [ໃນ]*in_in_clientCallback: ໃຫ້ສະຖານະ EMVCo ແລະສະຖານະ TDA ເປັນການໂທກັບ
  • ຜົນຕອບແທນ:
    • ໂມຄະ 

transceive() 

ndk::ScopedAStatus transceive ( const std::vector< uint8_t > & in_cmd_data, std::vector< uint8_t > * out_rsp_data )

  • ລາຍລະອຽດ: ສົ່ງຂໍ້ມູນແອັບພລິເຄຊັນກັບ Device-Controller ແລະຮັບຂໍ້ມູນການຕອບສະໜອງຈາກຕົວຄວບຄຸມ
  • ໝາຍເຫດ: id ການເຊື່ອມຕໍ່ຂອງ TDA ຄວນຖືກເພີ່ມເປັນສ່ວນຫນຶ່ງຂອງ NCI header.
  • ພາລາມິເຕີ:
    • [in]in_cmd_data: ຂໍ້ມູນຄຳສັ່ງຄຳສັ່ງແອັບພລິເຄຊັນ
  • ຂໍ້ຍົກເວັ້ນ:
    • EMVCO_STATUS_INVALID_PARAMETER, ຖ້າໃຫ້ ID ການເຊື່ອມຕໍ່ບໍ່ຖືກຕ້ອງ
    • EMVCO_STATUS_FEATURE_NOT_SUPPORTED ເມື່ອຄຸນສົມບັດບັດຕິດຕໍ່ບໍ່ຖືກຮອງຮັບ.
  • ຜົນຕອບແທນ:
    • ການຕອບສະໜອງ APDU ໄດ້ຮັບຈາກຕົວຄວບຄຸມ. ການຕອບສະໜອງ APDU ທີ່ຖືກຕ້ອງໄດ້ຮັບພຽງແຕ່ເມື່ອສະຖານະແມ່ນ EMVCO_STATUS_OK ເທົ່ານັ້ນ

ສໍາລັບ EMVCo contactless, APIs ຕໍ່ໄປນີ້ສາມາດຖືກເອີ້ນວ່າ:

ລົງທະບຽນEMVCoEventListener()

ndk::ScopedAStatus registerEMVCoEventListener ( const std::shared_ptr< INxpEmvcoClientCallback > & in_clientCallback, bool * _aidl_return )

  • ລາຍລະອຽດ: ລົງທະບຽນຟັງຊັນໂທກັບ EMVCo ເພື່ອຮັບເຫດການຈາກອຸປະກອນຜູ້ຟັງ.
  • ໝາຍເຫດ: ຟັງຊັນນີ້ຕ້ອງໂທຫາກ່ອນທີ່ຈະເອີ້ນໃຊ້ api ອື່ນ.
  • ພາລາມິເຕີ:
    • [in]*in_clientCallback: ມີ EMVCo client HAL callback
    • [ໃນ]*in_aidl_return: ຊີ້ບອກສະຖານະການລົງທະບຽນເພື່ອກັບຄືນຫາຜູ້ໂທ
  • ຜົນຕອບແທນ:
    • boolean ກັບຄືນຄວາມຈິງ, ຖ້າຄວາມສໍາເລັດແລະສົ່ງຄືນເປັນຜິດ, ຖ້າລົ້ມເຫລວໃນການລົງທະບຽນ

setEMVCoMode()

ndk::ScopedAStatus setEMVCoMode ( int8_t in_config, bool in_isStartEMVCo )

  • ລາຍລະອຽດ: ເລີ່ມໂໝດ EMVCo ດ້ວຍ Device-Controller. ເມື່ອ Application Data Channel ຖືກສ້າງຕັ້ງຂຶ້ນ, ແອັບພລິເຄຊັນອາດຈະສົ່ງເລີ່ມຕົ້ນໂໝດ EMVCo ກັບ Device-Controller.
  • ພາລາມິເຕີ:
    • [in]in_config: ເທັກໂນໂລຍີການລົງຄະແນນສຽງ EMVCo ຖືກຕັ້ງຄ່າຜ່ານພາລາມິເຕີນີ້
    • [in]in_isStartEMVCo: ລະບຸເພື່ອເລີ່ມຕົ້ນ ຫຼືຢຸດໂໝດ EMVCo
  • ຜົນຕອບແທນ:
    • ໂມຄະ

StopRFDisovery()

ndk::ScopedAStatus stopRFDisovery
( ::aidl::vendor::nxp::emvco::NxpDeactivationType in_deactivationType, ::aidl::vendor::nxp::emvco::NxpEmvcoStatus * emvco_status )

  • ລາຍລະອຽດ: ຢຸດຊ່ອງຂໍ້ມູນ RF ແລະຍ້າຍໄປຢູ່ໃນສະຖານະປິດໃຊ້ງານທີ່ລະບຸໄວ້.
  • ພາລາມິເຕີ:
    • [in]in_deactivationType: ລະບຸສະຖານະທີ່ຈະຢູ່ໃນຫຼັງຈາກປິດການນຳໃຊ້ RF
  • ຜົນຕອບແທນ:
    • NxpEmvcoStatus ສົ່ງຄືນ EMVCO_STATUS_OK ຖ້າຄຳສັ່ງປະມວນຜົນສຳເລັດ ແລະສົ່ງຄືນ EMVCO_STATUS_FAILED, ຖ້າຄຳສັ່ງບໍ່ຖືກປະມວນຜົນເນື່ອງຈາກສະຖານະບໍ່ຖືກຕ້ອງ. ໂໝດ EMVCo ຄວນເປີດເພື່ອໂທຫາ API ນີ້

transceive()

ndk::ScopedAStatus transceive ( const std::vector< uint8_t > & in_data, int32_t * _aidl_return )

  • ລາຍລະອຽດ: ສົ່ງຂໍ້ມູນແອັບພລິເຄຊັນດ້ວຍ Device-Controller.
  • ໝາຍເຫດ: ໃນ​ກໍ​ລະ​ນີ​ຖ້າ​ຫາກ​ວ່າ​ການ​ສົ່ງ​ຂໍ້​ມູນ​ບໍ່​ສໍາ​ເລັດ​, ຄໍາ​ຮ້ອງ​ສະ​ຫມັກ​ຈະ​ຮ້ອງ​ຂໍ​ອີກ​ເທື່ອ​ຫນຶ່ງ open() ກ່ອນ​ທີ່​ຈະ​ເອີ້ນ API ນີ້​.
  • ພາລາມິເຕີ:
    • (in]in_data: ບັຟເຟີຂໍ້ມູນແອັບພລິເຄຊັນ
  • ຜົນຕອບແທນ:
    • NxpEmvcoStatus ຊີ້ບອກສະຖານະການປະຕິບັດ
ການຕັ້ງຄ່າ files PN7160

ສໍາລັບ PN7160, ມີສອງການຕັ້ງຄ່າທີ່ແຕກຕ່າງກັນ files.

  1. libnfc-nci.conf
  2. libnfc-nxp.conf

ໝາຍເຫດ: ການຕັ້ງຄ່າ files ສະຫນອງໃຫ້ໂດຍ NXP ແມ່ນ examples ກ່ຽວຂ້ອງກັບກະດານສາທິດຕົວຄວບຄຸມ NFC. ເຫຼົ່ານີ້ files ຕ້ອງໄດ້ຮັບການຮັບຮອງເອົາຕາມການລວມເປົ້າຫມາຍ.

ການຕັ້ງຄ່າ files ຕ້ອງຖືກຈັດໃສ່ໃນສະຖານທີ່ເປົ້າຫມາຍ (ເບິ່ງຕາຕະລາງ 8).

ຕາຕະລາງ 8. ສະຖານທີ່ຂອງການຕັ້ງຄ່າ files 

ຊື່ຂອງການຕັ້ງຄ່າ file ສະຖານທີ່ຢູ່ໃນອຸປະກອນ
libnfc-nci.conf system / etc
libnfc-nxp.conf ຜູ້ຂາຍ / ແລະອື່ນໆ

ເພື່ອໃຫ້ໄດ້ຮັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບການຕັ້ງຄ່າ files, ເບິ່ງ [9].

ການຕັ້ງຄ່າ files PN7220

ສໍາລັບ PN7220, ມີຫ້າການຕັ້ງຄ່າທີ່ແຕກຕ່າງກັນ files.

  1. libemvco-nxp.conf
  2. libnfc-nci.conf
  3. libnfc-nxp.conf
  4. libnfc-nxp-eeprom.conf
  5. libnfc-nxp-rfExt.conf

ໝາຍເຫດ: ການຕັ້ງຄ່າ files ສະຫນອງໃຫ້ໂດຍ NXP ແມ່ນ examples ກ່ຽວຂ້ອງກັບກະດານສາທິດຕົວຄວບຄຸມ NFC. ເຫຼົ່ານີ້ files ຕ້ອງໄດ້ຮັບການຮັບຮອງເອົາຕາມການລວມເປົ້າຫມາຍ

ການຕັ້ງຄ່າ files ຈໍາເປັນຕ້ອງຖືກຈັດໃສ່ໃນສະຖານທີ່ເປົ້າຫມາຍ (ເບິ່ງຕາຕະລາງ 9).

ຕາຕະລາງ 9. ສະຖານທີ່ຂອງການຕັ້ງຄ່າ files 

ຊື່ຂອງການຕັ້ງຄ່າ file ສະຖານທີ່ຢູ່ໃນອຸປະກອນ
libemvco-nxp.conf ຜູ້ຂາຍ / ແລະອື່ນໆ
libnfc-nci.conf system / etc
libnfc-nxp.conf ຜູ້ຂາຍ / ແລະອື່ນໆ
libnfc-nxp-eeprom.conf ຜູ້ຂາຍ / ແລະອື່ນໆ
libnfc-nxprfExt.conf ຜູ້ຂາຍ / ແລະອື່ນໆ

ເພື່ອໃຫ້ໄດ້ຮັບຂໍ້ມູນເພີ່ມເຕີມກ່ຽວກັບການຕັ້ງຄ່າ files, ເບິ່ງ [9]. 

ຄໍາຮ້ອງສະຫມັກ DTA

ເພື່ອອະນຸຍາດໃຫ້ການທົດສອບການຢັ້ງຢືນ NFC Forum, ຄໍາຮ້ອງສະຫມັກການທົດສອບອຸປະກອນແມ່ນສະຫນອງໃຫ້. ມັນປະກອບດ້ວຍອົງປະກອບຈໍານວນຫນຶ່ງໃນຊັ້ນ Android ທີ່ແຕກຕ່າງກັນ, ເຊິ່ງຕ້ອງໄດ້ຮັບການສ້າງແລະລວມຢູ່ໃນຮູບພາບ Android.

ເພື່ອຊຸກຍູ້ແອັບພລິເຄຊັນ DTA, ຂັ້ນຕອນຕໍ່ໄປນີ້ຕ້ອງຖືກປະຕິບັດ:

  1. ສຳເນົາ DTA ທັງໝົດ files ໄປ​ທີ່​ຫນຶ່ງ​
    $cp -rf “out/target/product/hikey960/system/lib64/libosal.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libmwif.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libdta.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/lib64/libdta_jni.so” /DTA-PN7220
    $cp -rf “out/target/product/hikey960/system/app/NxpDTA/NxpDTA.apk” /DTAPN7220
  2. ຍູ້ binary ກັບອຸປະກອນດັ່ງລຸ່ມນີ້
    adb shell mkdir /system/app/NxpDTA/
    adb push libosal.so /system/lib64/
    adb push libdta.so /system/lib64/
    adb push libdta_jni.so /system/lib64/
    adb push libmwif.so /system/lib64/
    adb push NxpDTA.apk /system/app/NxpDTA/

ຫຼັງຈາກ flashing ເປົ້າຫມາຍ, ຄໍາຮ້ອງສະຫມັກ DTA ຄວນຈະມີຢູ່ໃນບັນຊີລາຍຊື່ຂອງຄໍາຮ້ອງສະຫມັກທີ່ຕິດຕັ້ງ. ອ້າງເຖິງ [7] ສໍາລັບລາຍລະອຽດຂອງວິທີການນໍາໃຊ້ຄໍາຮ້ອງສະຫມັກ.

ຕົວຫຍໍ້

ຕາຕະລາງ 10. ຕົວຫຍໍ້ 

ຕົວຫຍໍ້ ລາຍລະອຽດ
APDU ຫົວໜ່ວຍຂໍ້ມູນໂປຣໂຕຄໍແອັບພລິເຄຊັນ
AOSP ໂຄງການ Android Open Source
DH ເຈົ້າພາບອຸປະກອນ
HAL ຊັ້ນ abstraction ຮາດແວ
FW ເຟີມແວ
I2C Inter-Integrated Circuit
LPCD ການກວດຫາບັດທີ່ມີພະລັງງານຕ່ໍາ
NCI ການໂຕ້ຕອບຕົວຄວບຄຸມ NFC
NFC ການ​ສື່​ສານ​ໃກ້​ກັບ​ພາກ​ສະ​ຫນາມ​
MW ເຄື່ອງກາງ
PLL loop ລັອກໄລຍະ
P2P peer to peer
RF ຄວາມຖີ່ວິທະຍຸ
SDA ຂໍ້ມູນ serial
SMCU microcontroller ທີ່ປອດໄພ
SW ຊອບ​ແວ​

ເອກະສານອ້າງອີງ

  1. GitHub repository – PN7160 ແລະ PN7220 MW ທົ່ວໄປ: (ເຊື່ອມຕໍ່)
  2. Web ຫນ້າ – PN7160 – NFC Plug and Play Controller ກັບເຟີມແວປະສົມປະສານ ແລະການໂຕ້ຕອບ NCI (ເຊື່ອມຕໍ່)
  3. Web page – PN7220 – EMV L1 Compliant NFC Controller with NCI Interface Supporting EMV ແລະ NFC Forum Applications (ເຊື່ອມຕໍ່)
  4. GitHub repository – PN7160 ແລະ PN7220 kernel driver: (ເຊື່ອມຕໍ່)
  5. ຊັບພະຍາກອນ – AOSP r2 tag (ເຊື່ອມຕໍ່)
  6. ຊັບພະຍາກອນ – ເຄື່ອງມືຄວບຄຸມແຫຼ່ງທີ່ມາ (ເຊື່ອມຕໍ່)
  7. ຄູ່ມືຜູ້ໃຊ້ – UG10068 – PN7220 – ຄູ່ມືເລີ່ມຕົ້ນດ່ວນ (ເຊື່ອມຕໍ່)
  8. GitHub repository – PN7160 ແລະ PN7220 FW ສະຖານທີ່: (ເຊື່ອມຕໍ່)
  9. ບັນທຶກແອັບພລິເຄຊັນ – AN14431 – PN7160/PN7220 ການຕັ້ງຄ່າ files (ເຊື່ອມຕໍ່)

ຫມາຍເຫດກ່ຽວກັບລະຫັດແຫຼ່ງໃນເອກະສານ

Exampລະຫັດທີ່ສະແດງຢູ່ໃນເອກະສານນີ້ມີລິຂະສິດຕໍ່ໄປນີ້ແລະໃບອະນຸຍາດ BSD-3-Clause:

ລິຂະສິດ 2024 ການແຈກຢາຍ NXP ແລະການນໍາໃຊ້ໃນຮູບແບບຕົ້ນສະບັບແລະຖານສອງ, ມີຫຼືບໍ່ມີການດັດແກ້, ແມ່ນອະນຸຍາດໃຫ້ມີເງື່ອນໄຂດັ່ງຕໍ່ໄປນີ້.

  1. ການຈັດຈໍາໜ່າຍລະຫັດແຫຼ່ງທີ່ມາຄືນໃໝ່ຕ້ອງຮັກສາແຈ້ງການລິຂະສິດຂ້າງເທິງ, ລາຍຊື່ເງື່ອນໄຂ ແລະຂໍ້ປະຕິເສດຄວາມຮັບຜິດຊອບຕໍ່ໄປນີ້.
  2. ການແຈກຢາຍຄືນໃໝ່ໃນຮູບແບບຄູ່ຕ້ອງສ້າງຄືນໃໝ່ຕາມແຈ້ງການລິຂະສິດຂ້າງເທິງ, ບັນຊີລາຍຊື່ຂອງເງື່ອນໄຂ ແລະຂໍ້ປະຕິເສດຕໍ່ໄປນີ້ໃນເອກະສານ ແລະ/ຫຼືອຸປະກອນອື່ນໆຕ້ອງໄດ້ຮັບການສະໜອງໃຫ້ກັບການແຈກຢາຍ.
  3. ທັງຊື່ຂອງຜູ້ຖືລິຂະສິດ ຫຼືຊື່ຂອງຜູ້ປະກອບສ່ວນຂອງມັນອາດຈະບໍ່ຖືກໃຊ້ເພື່ອຮັບຮອງ ຫຼືສົ່ງເສີມຜະລິດຕະພັນທີ່ມາຈາກຊອບແວນີ້ໂດຍບໍ່ມີການອະນຸຍາດເປັນລາຍລັກອັກສອນສະເພາະກ່ອນ.

ຊອບແວນີ້ແມ່ນສະໜອງໃຫ້ໂດຍຜູ້ຖືລິຂະສິດ ແລະຜູ້ປະກອບສ່ວນ "ຕາມທີ່ເປັນ" ແລະການຮັບປະກັນໃດໆກໍຕາມ, ລວມທັງການຮັບປະກັນດ້ານການສະໜອງສິນຄ້າໂດຍຫຍໍ້, ແຕ່ບໍ່ຈຳກັດການຮັບປະກັນດ້ານການສະໜອງສິນຄ້າ. ຖືກປະຕິເສດ. ໃນກໍລະນີໃດກໍ່ຕາມ, ຜູ້ຖືລິຂະສິດຫຼືຜູ້ປະກອບສ່ວນຈະຕ້ອງຮັບຜິດຊອບຕໍ່ຄວາມເສຍຫາຍໂດຍກົງ, ໂດຍທາງອ້ອມ, ໂດຍບັງເອີນ, ພິເສດ, ແບບຢ່າງ, ຫຼືຄວາມເສຍຫາຍທີ່ຕາມມາ (ລວມທັງ, ແຕ່ບໍ່ຈໍາກັດຕໍ່, ຂະບວນການທາງວິຊາການ. ການບໍລິການ; ການສູນເສຍການນໍາໃຊ້, ຂໍ້ມູນ, ຫຼືຜົນກໍາໄລ; ການນໍາໃຊ້ຊອບແວນີ້, ເຖິງແມ່ນວ່າຈະໃຫ້ຄໍາແນະນໍາກ່ຽວກັບຄວາມເປັນໄປໄດ້ຂອງຄວາມເສຍຫາຍດັ່ງກ່າວ.

ປະຫວັດການແກ້ໄຂ

ຕາຕະລາງ 11. ປະຫວັດການທົບທວນ 

ID ເອກະສານ ວັນທີປ່ອຍ ລາຍລະອຽດ
AN14430 v.1.0 ວັນທີ 03 ກັນຍາ 2024 • ສະບັບເລີ່ມຕົ້ນ

ຂໍ້ມູນທາງກົດໝາຍ

ຄໍານິຍາມ

ຮ່າງ — ສະ​ຖາ​ນະ​ພາບ​ຮ່າງ​ຢູ່​ໃນ​ເອ​ກະ​ສານ​ຊີ້​ໃຫ້​ເຫັນ​ວ່າ​ເນື້ອ​ໃນ​ຍັງ​ຢູ່​ພາຍ​ໃຕ້​ການ review ແລະຂຶ້ນກັບການອະນຸມັດຢ່າງເປັນທາງການ, ເຊິ່ງອາດຈະເຮັດໃຫ້ມີການປ່ຽນແປງຫຼືເພີ່ມເຕີມ. NXP Semiconductors ບໍ່ໄດ້ໃຫ້ການເປັນຕົວແທນຫຼືການຮັບປະກັນໃດໆກ່ຽວກັບຄວາມຖືກຕ້ອງຫຼືຄວາມສົມບູນຂອງຂໍ້ມູນທີ່ລວມຢູ່ໃນສະບັບຮ່າງຂອງເອກະສານແລະຈະບໍ່ຮັບຜິດຊອບຕໍ່ຜົນສະທ້ອນຂອງການນໍາໃຊ້ຂໍ້ມູນດັ່ງກ່າວ.

ການປະຕິເສດຄວາມຮັບຜິດຊອບ

ການຮັບປະກັນ ແລະຄວາມຮັບຜິດຊອບທີ່ຈຳກັດ — ຂໍ້ມູນໃນເອກະສານນີ້ຖືວ່າຖືກຕ້ອງ ແລະເຊື່ອຖືໄດ້. ຢ່າງໃດກໍ່ຕາມ, NXP Semiconductors ບໍ່ໄດ້ໃຫ້ການເປັນຕົວແທນຫຼືການຮັບປະກັນໃດໆ, ສະແດງອອກຫຼືສະແດງໃຫ້ເຫັນເຖິງຄວາມຖືກຕ້ອງຫຼືຄົບຖ້ວນຂອງຂໍ້ມູນດັ່ງກ່າວແລະຈະບໍ່ຮັບຜິດຊອບຕໍ່ຜົນສະທ້ອນຂອງການນໍາໃຊ້ຂໍ້ມູນດັ່ງກ່າວ. NXP Semiconductors ບໍ່ຮັບຜິດຊອບຕໍ່ເນື້ອໃນໃນເອກະສານນີ້ ຖ້າສະໜອງໃຫ້ໂດຍແຫຼ່ງຂໍ້ມູນພາຍນອກຂອງ NXP Semiconductors.

ໃນກໍລະນີໃດກໍ່ຕາມ NXP Semiconductors ຈະຕ້ອງຮັບຜິດຊອບຕໍ່ຄວາມເສຍຫາຍທາງອ້ອມ, ບັງເອີນ, ລົງໂທດ, ພິເສດຫຼືຜົນສະທ້ອນ (ລວມທັງ - ໂດຍບໍ່ມີການຈໍາກັດ - ການສູນເສຍຜົນກໍາໄລ, ເງິນຝາກປະຢັດທີ່ສູນເສຍ, ການຂັດຂວາງທຸລະກິດ, ຄ່າໃຊ້ຈ່າຍທີ່ກ່ຽວຂ້ອງກັບການໂຍກຍ້າຍຫຼືການທົດແທນຜະລິດຕະພັນຫຼືຄ່າໃຊ້ຈ່າຍໃນການເຮັດວຽກໃຫມ່) ບໍ່ວ່າຈະເປັນ. ຫຼືບໍ່ຄວາມເສຍຫາຍດັ່ງກ່າວແມ່ນອີງໃສ່ການທໍລະຍົດ (ລວມທັງການລະເລີຍ), ການຮັບປະກັນ, ການລະເມີດສັນຍາຫຼືທິດສະດີທາງດ້ານກົດຫມາຍອື່ນໆ.

ເຖິງແມ່ນວ່າຄວາມເສຍຫາຍທີ່ລູກຄ້າອາດຈະເກີດຂື້ນດ້ວຍເຫດຜົນໃດກໍ່ຕາມ, ຄວາມຮັບຜິດຊອບລວມແລະຄວາມຮັບຜິດຊອບສະສົມຂອງ NXP Semiconductors ຕໍ່ລູກຄ້າສໍາລັບຜະລິດຕະພັນທີ່ອະທິບາຍຢູ່ທີ່ນີ້ຈະຖືກຈໍາກັດໂດຍສອດຄ່ອງກັບເງື່ອນໄຂແລະເງື່ອນໄຂຂອງການຂາຍທາງການຄ້າຂອງ NXP Semiconductors.

ສິດທິໃນການປ່ຽນແປງ — NXP Semiconductors ສະຫງວນສິດທີ່ຈະເຮັດການປ່ຽນແປງຕໍ່ກັບຂໍ້ມູນທີ່ເຜີຍແຜ່ໃນເອກະສານນີ້, ລວມທັງບໍ່ມີຂໍ້ຈໍາກັດສະເພາະ ແລະລາຍລະອຽດຂອງຜະລິດຕະພັນ, ໄດ້ທຸກເວລາ ແລະໂດຍບໍ່ມີການແຈ້ງການ. ເອກະສານນີ້ປ່ຽນແທນ ແລະແທນທີ່ຂໍ້ມູນທັງໝົດທີ່ສະໜອງໃຫ້ກ່ອນການພິມເຜີຍແຜ່.

ຄວາມເໝາະສົມສຳລັບການນຳໃຊ້ — ຜະລິດຕະພັນ NXP Semiconductors ບໍ່ໄດ້ຖືກອອກແບບ, ອະນຸຍາດ ຫຼືຮັບປະກັນໃຫ້ເໝາະສົມກັບການນຳໃຊ້ໃນການຊ່ວຍເຫຼືອຊີວິດ, ລະບົບ ຫຼືອຸປະກອນທີ່ຈຳເປັນຕໍ່ຊີວິດ ຫຼືຄວາມປອດໄພ, ຫຼືໃນການນຳໃຊ້ທີ່ຄວາມລົ້ມເຫຼວ ຫຼືການເຮັດວຽກຜິດປົກກະຕິຂອງຜະລິດຕະພັນ NXP Semiconductors ສາມາດຄາດຫວັງໄດ້ຢ່າງສົມເຫດສົມຜົນ. ສົ່ງຜົນໃຫ້ມີການບາດເຈັບສ່ວນບຸກຄົນ, ການເສຍຊີວິດຫຼືຊັບສິນທີ່ຮ້າຍແຮງຫຼືຄວາມເສຍຫາຍຕໍ່ສິ່ງແວດລ້ອມ. NXP Semiconductors ແລະຜູ້ສະຫນອງຂອງມັນບໍ່ຍອມຮັບຄວາມຮັບຜິດຊອບສໍາລັບການລວມແລະ / ຫຼືການນໍາໃຊ້ຜະລິດຕະພັນ NXP Semiconductors ໃນອຸປະກອນຫຼືຄໍາຮ້ອງສະຫມັກດັ່ງກ່າວແລະດັ່ງນັ້ນການລວມເອົາແລະ / ຫຼືການນໍາໃຊ້ດັ່ງກ່າວແມ່ນມີຄວາມສ່ຽງຂອງຕົນເອງຂອງລູກຄ້າ.

ແອັບພລິເຄຊັ່ນ — ແອັບພລິເຄຊັ່ນທີ່ອະທິບາຍໄວ້ໃນນີ້ສຳລັບຜະລິດຕະພັນໃດໜຶ່ງເຫຼົ່ານີ້ແມ່ນເພື່ອຈຸດປະສົງທີ່ເປັນຕົວຢ່າງເທົ່ານັ້ນ. NXP Semiconductors ບໍ່ມີການເປັນຕົວແທນຫຼືການຮັບປະກັນວ່າຄໍາຮ້ອງສະຫມັກດັ່ງກ່າວຈະເຫມາະສົມກັບການນໍາໃຊ້ທີ່ລະບຸໄວ້ໂດຍບໍ່ມີການທົດສອບຫຼືດັດແກ້ເພີ່ມເຕີມ.

ລູກຄ້າມີຄວາມຮັບຜິດຊອບໃນການອອກແບບແລະການດໍາເນີນງານຂອງຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຂອງພວກເຂົາໂດຍນໍາໃຊ້ຜະລິດຕະພັນ NXP Semiconductors, ແລະ NXP Semiconductors ຍອມຮັບບໍ່ມີຄວາມຮັບຜິດຊອບສໍາລັບການຊ່ວຍເຫຼືອໃດໆກັບຄໍາຮ້ອງສະຫມັກຫຼືການອອກແບບຜະລິດຕະພັນຂອງລູກຄ້າ. ມັນເປັນຄວາມຮັບຜິດຊອບດຽວຂອງລູກຄ້າໃນການກໍານົດວ່າຜະລິດຕະພັນ NXP Semiconductors ແມ່ນເຫມາະສົມແລະເຫມາະສົມກັບຄໍາຮ້ອງສະຫມັກຂອງລູກຄ້າແລະຜະລິດຕະພັນທີ່ວາງແຜນ, ເຊັ່ນດຽວກັນກັບຄໍາຮ້ອງສະຫມັກທີ່ວາງແຜນແລະການນໍາໃຊ້ຂອງລູກຄ້າພາກສ່ວນທີສາມ (s). ລູກຄ້າຄວນສະຫນອງການອອກແບບທີ່ເຫມາະສົມແລະການປົກປ້ອງການດໍາເນີນງານເພື່ອຫຼຸດຜ່ອນຄວາມສ່ຽງທີ່ກ່ຽວຂ້ອງກັບຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຂອງພວກເຂົາ.

NXP Semiconductors ບໍ່ຍອມຮັບຄວາມຮັບຜິດຊອບທີ່ກ່ຽວຂ້ອງກັບຄ່າເລີ່ມຕົ້ນ, ຄວາມເສຍຫາຍ, ຄ່າໃຊ້ຈ່າຍຫຼືບັນຫາທີ່ອີງໃສ່ຈຸດອ່ອນຫຼືຄ່າເລີ່ມຕົ້ນໃນຄໍາຮ້ອງສະຫມັກຫຼືຜະລິດຕະພັນຂອງລູກຄ້າ, ຫຼືຄໍາຮ້ອງສະຫມັກຫຼືການນໍາໃຊ້ໂດຍລູກຄ້າພາກສ່ວນທີສາມຂອງລູກຄ້າ. ລູກຄ້າຮັບຜິດຊອບໃນການທົດສອບທີ່ຈໍາເປັນທັງຫມົດສໍາລັບຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຂອງລູກຄ້າໂດຍໃຊ້ຜະລິດຕະພັນ NXP Semiconductors ເພື່ອຫຼີກເວັ້ນການເລີ່ມຕົ້ນຂອງຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຫຼືຂອງຄໍາຮ້ອງສະຫມັກຫຼືການນໍາໃຊ້ໂດຍລູກຄ້າພາກສ່ວນທີສາມ (s). NXP ບໍ່ຍອມຮັບຄວາມຮັບຜິດຊອບໃດໆໃນເລື່ອງນີ້.

ຂໍ້ກໍານົດແລະເງື່ອນໄຂຂອງການຂາຍທາງການຄ້າ - ຜະລິດຕະພັນ NXP Semiconductors ຖືກຂາຍຂຶ້ນກັບຂໍ້ກໍານົດແລະເງື່ອນໄຂທົ່ວໄປຂອງການຂາຍທາງການຄ້າ, ຕາມທີ່ຈັດພີມມາຢູ່ https://www.nxp.com/profile/terms, ເວັ້ນເສຍແຕ່ໄດ້ຕົກລົງເປັນຢ່າງອື່ນໃນຂໍ້ຕົກລົງສ່ວນບຸກຄົນທີ່ຖືກຕ້ອງ. ໃນກໍລະນີທີ່ຂໍ້ຕົກລົງສ່ວນບຸກຄົນໄດ້ຖືກສະຫຼຸບພຽງແຕ່ຂໍ້ກໍານົດແລະເງື່ອນໄຂຂອງສັນຍາທີ່ກ່ຽວຂ້ອງເທົ່ານັ້ນ. NXP Semiconductors ໃນທີ່ນີ້ຄັດຄ້ານຢ່າງຈະແຈ້ງທີ່ຈະນໍາໃຊ້ຂໍ້ກໍານົດແລະເງື່ອນໄຂທົ່ວໄປຂອງລູກຄ້າກ່ຽວກັບການຊື້ຜະລິດຕະພັນ NXP Semiconductors ໂດຍລູກຄ້າ.

ການຄວບຄຸມການສົ່ງອອກ — ເອ​ກະ​ສານ​ນີ້​ພ້ອມ​ທັງ​ລາຍ​ການ​ທີ່​ອະ​ທິ​ບາຍ​ໃນ​ທີ່​ນີ້​ອາດ​ຈະ​ເປັນ​ຂຶ້ນ​ກັບ​ລະ​ບຽບ​ການ​ຄວບ​ຄຸມ​ການ​ສົ່ງ​ອອກ​. ການສົ່ງອອກອາດຈະຕ້ອງມີການອະນຸຍາດກ່ອນໜ້ານີ້ຈາກເຈົ້າໜ້າທີ່ທີ່ມີຄວາມສາມາດ.

ຄວາມເໝາະສົມສໍາລັບການນໍາໃຊ້ໃນຜະລິດຕະພັນທີ່ມີຄຸນວຸດທິທີ່ບໍ່ແມ່ນລົດຍົນ — ເວັ້ນເສຍແຕ່ເອກະສານສະບັບນີ້ລະບຸຢ່າງຈະແຈ້ງວ່າຜະລິດຕະພັນ NXP Semiconductors ສະເພາະນີ້ແມ່ນມີຄຸນສົມບັດໃນລົດຍົນ, ຜະລິດຕະພັນດັ່ງກ່າວບໍ່ເຫມາະສົມສໍາລັບການນໍາໃຊ້ລົດຍົນ. ມັນບໍ່ມີຄຸນສົມບັດ ຫຼື ການທົດສອບໂດຍສອດຄ່ອງກັບການທົດສອບລົດຍົນ ຫຼືຄວາມຕ້ອງການຄໍາຮ້ອງສະຫມັກ. NXP Semiconductors ຍອມຮັບບໍ່ມີຄວາມຮັບຜິດຊອບສໍາລັບການລວມເອົາແລະ / ຫຼືການນໍາໃຊ້ຜະລິດຕະພັນທີ່ມີຄຸນນະພາບທີ່ບໍ່ແມ່ນລົດຍົນໃນອຸປະກອນຫຼືຄໍາຮ້ອງສະຫມັກລົດຍົນ.

ໃນກໍລະນີທີ່ລູກຄ້ານໍາໃຊ້ຜະລິດຕະພັນສໍາລັບການອອກແບບແລະນໍາໃຊ້ໃນການນໍາໃຊ້ລົດຍົນກັບຂໍ້ກໍານົດແລະມາດຕະຖານຂອງລົດຍົນ, ລູກຄ້າ (a) ຈະຕ້ອງໃຊ້ຜະລິດຕະພັນໂດຍບໍ່ມີການຮັບປະກັນຂອງ NXP Semiconductors ຂອງຜະລິດຕະພັນສໍາລັບການນໍາໃຊ້ລົດຍົນດັ່ງກ່າວ, ການນໍາໃຊ້ແລະສະເພາະ, ແລະ ( b) ທຸກຄັ້ງທີ່ລູກຄ້າໃຊ້ຜະລິດຕະພັນສໍາລັບການນໍາໃຊ້ລົດຍົນທີ່ເກີນຂໍ້ກໍານົດຂອງ NXP Semiconductors ການໃຊ້ດັ່ງກ່າວຈະເປັນຄວາມສ່ຽງຂອງລູກຄ້າເອງເທົ່ານັ້ນ, ແລະ (c) ລູກຄ້າຈະຊົດເຊີຍຢ່າງເຕັມສ່ວນ NXP Semiconductors ສໍາລັບຄວາມຮັບຜິດຊອບ, ຄວາມເສຍຫາຍຫຼືການຮຽກຮ້ອງຜະລິດຕະພັນທີ່ລົ້ມເຫລວທີ່ເກີດຈາກການອອກແບບແລະການນໍາໃຊ້ຂອງລູກຄ້າ. ຜະລິດຕະພັນສໍາລັບການນໍາໃຊ້ລົດຍົນນອກເຫນືອຈາກການຮັບປະກັນມາດຕະຖານຂອງ NXP Semiconductors ແລະຜະລິດຕະພັນສະເພາະຂອງ NXP Semiconductors

ສິ່ງພິມ HTML — ສະບັບ HTML, ຖ້າມີ, ຂອງເອກະສານນີ້ແມ່ນສະໜອງໃຫ້ຕາມມາລະຍາດ. ຂໍ້ມູນລະອຽດແມ່ນບັນຈຸຢູ່ໃນເອກະສານທີ່ໃຊ້ໄດ້ໃນຮູບແບບ PDF. ຖ້າມີຄວາມແຕກຕ່າງລະຫວ່າງເອກະສານ HTML ແລະເອກະສານ PDF, ເອກະສານ PDF ມີບູລິມະສິດ.

ການແປ — ສະບັບທີ່ບໍ່ແມ່ນພາສາອັງກິດ (ແປ) ຂອງເອກະສານ, ລວມທັງຂໍ້ມູນທາງກົດໝາຍໃນເອກະສານນັ້ນ, ແມ່ນສໍາລັບການອ້າງອີງເທົ່ານັ້ນ. ສະບັບພາສາອັງກິດຈະຊະນະໃນກໍລະນີທີ່ມີຄວາມແຕກຕ່າງລະຫວ່າງສະບັບແປແລະພາສາອັງກິດ.

ຄວາມ​ປອດ​ໄພ — ລູກ​ຄ້າ​ເຂົ້າ​ໃຈ​ວ່າ​ຜະ​ລິດ​ຕະ​ພັນ NXP ທັງ​ຫມົດ​ອາດ​ຈະ​ມີ​ຄວາມ​ສ່ຽງ​ທີ່​ບໍ່​ຮູ້​ຈັກ​ຫຼື​ອາດ​ຈະ​ສະ​ຫນັບ​ສະ​ຫນູນ​ມາດ​ຕະ​ຖານ​ຄວາມ​ປອດ​ໄພ​ທີ່​ສ້າງ​ຕັ້ງ​ຂຶ້ນ​ຫຼື​ຂໍ້​ຈໍາ​ກັດ​ທີ່​ມີ​ຂໍ້​ຈໍາ​ກັດ​ທີ່​ຮູ້​ຈັກ​. ລູກຄ້າມີຄວາມຮັບຜິດຊອບໃນການອອກແບບແລະການດໍາເນີນງານຂອງຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຂອງຕົນຕະຫຼອດຊີວິດຂອງເຂົາເຈົ້າເພື່ອຫຼຸດຜ່ອນຜົນກະທົບຂອງຊ່ອງໂຫວ່ເຫຼົ່ານີ້ຕໍ່ຄໍາຮ້ອງສະຫມັກແລະຜະລິດຕະພັນຂອງລູກຄ້າ. ຄວາມຮັບຜິດຊອບຂອງລູກຄ້າຍັງຂະຫຍາຍໄປສູ່ເຕັກໂນໂລຢີທີ່ເປີດແລະ / ຫຼືເປັນເຈົ້າຂອງອື່ນໆທີ່ສະຫນັບສະຫນູນໂດຍຜະລິດຕະພັນ NXP ເພື່ອນໍາໃຊ້ໃນຄໍາຮ້ອງສະຫມັກຂອງລູກຄ້າ. NXP ຍອມຮັບບໍ່ມີຄວາມຮັບຜິດຊອບຕໍ່ຄວາມອ່ອນແອໃດໆ. ລູກຄ້າຄວນກວດສອບການອັບເດດຄວາມປອດໄພຈາກ NXP ເປັນປະຈຳ ແລະຕິດຕາມຢ່າງເໝາະສົມ. ລູກຄ້າຈະຕ້ອງເລືອກຜະລິດຕະພັນທີ່ມີລັກສະນະຄວາມປອດໄພທີ່ກົງກັບກົດລະບຽບ, ກົດລະບຽບ ແລະມາດຕະຖານຂອງແອັບພລິເຄຊັນທີ່ຕັ້ງໃຈ ແລະຕັດສິນໃຈອອກແບບສູງສຸດກ່ຽວກັບຜະລິດຕະພັນຂອງຕົນ ແລະຮັບຜິດຊອບພຽງຢ່າງດຽວສຳລັບການປະຕິບັດຕາມກົດໝາຍ, ລະບຽບການ ແລະຄວາມປອດໄພທັງໝົດກ່ຽວກັບຜະລິດຕະພັນຂອງມັນ, ໂດຍບໍ່ສົນເລື່ອງ. ຂອງຂໍ້ມູນ ຫຼືການຊ່ວຍເຫຼືອທີ່ອາດຈະສະໜອງໃຫ້ໂດຍ NXP.

NXP ມີທີມງານຕອບໂຕ້ເຫດການຄວາມປອດໄພຂອງຜະລິດຕະພັນ (PSIRT) (ສາມາດຕິດຕໍ່ໄດ້ທີ່ PSIRT@nxp.com) ທີ່ຈັດການການສືບສວນ, ການລາຍງານ ແລະການແກ້ໄຂການແກ້ໄຂຕໍ່ກັບຊ່ອງໂຫວ່ດ້ານຄວາມປອດໄພຂອງຜະລິດຕະພັນ NXP.

NXP BV — NXP BV ບໍ່ແມ່ນບໍລິສັດປະຕິບັດງານ ແລະມັນບໍ່ໄດ້ແຈກຢາຍ ຫຼືຂາຍຜະລິດຕະພັນ.

ໃບອະນຸຍາດ

ການຊື້ NXP ICs ດ້ວຍເທັກໂນໂລຍີ NFC — ການຊື້ NXP Semiconductors IC ທີ່ປະຕິບັດຕາມຫນຶ່ງຂອງ Near Field Communication (NFC) ມາດຕະຖານ ISO/IEC 18092 ແລະ ISO/IEC 21481 ບໍ່ໄດ້ບົ່ງບອກເຖິງໃບອະນຸຍາດທີ່ບົ່ງບອກພາຍໃຕ້ສິດທິບັດໃດໆທີ່ຖືກລະເມີດໂດຍການປະຕິບັດຂອງ ມາດຕະຖານໃດນຶ່ງນັ້ນ. ການຊື້ NXP Semiconductors IC ບໍ່ລວມເອົາໃບອະນຸຍາດຂອງສິດທິບັດ NXP ໃດໆ (ຫຼືສິດທິ IP ອື່ນໆ) ທີ່ກວມເອົາການລວມກັນຂອງຜະລິດຕະພັນເຫຼົ່ານັ້ນກັບຜະລິດຕະພັນອື່ນໆ, ບໍ່ວ່າຈະເປັນຮາດແວຫຼືຊອບແວ.

ເຄື່ອງໝາຍການຄ້າ

ແຈ້ງການ: ຍີ່ຫໍ້ອ້າງອີງທັງໝົດ, ຊື່ຜະລິດຕະພັນ, ຊື່ການບໍລິການ, ແລະເຄື່ອງໝາຍການຄ້າແມ່ນຊັບສິນຂອງເຈົ້າຂອງທີ່ກ່ຽວຂ້ອງ. NXP — ເຄື່ອງ​ຫມາຍ​ຄໍາ​ສັບ​ແລະ​ໂລ​ໂກ​ແມ່ນ​ເຄື່ອງ​ຫມາຍ​ການ​ຄ້າ​ຂອງ NXP BV I2C-bus — ສັນ​ຍາ​ລັກ​ເປັນ​ເຄື່ອງ​ຫມາຍ​ການ​ຄ້າ​ຂອງ NXP BV

ກະ​ລຸ​ນາ​ຮັບ​ຮູ້​ວ່າ​ຫນັງ​ສື​ແຈ້ງ​ການ​ສໍາ​ຄັນ​ກ່ຽວ​ກັບ​ເອ​ກະ​ສານ​ນີ້​ແລະ​ຜະ​ລິດ​ຕະ​ພັນ​ທີ່​ອະ​ທິ​ບາຍ​ໃນ​ທີ່​ນີ້​, ໄດ້​ຖືກ​ລວມ​ເຂົ້າ​ໃນ​ພາກ​ສ່ວນ 'ຂໍ້​ມູນ​ທາງ​ກົດ​ຫມາຍ​'​.

© 2024 NXP BV ສະຫງວນລິຂະສິດທັງໝົດ.
ສໍາລັບຂໍ້ມູນເພີ່ມເຕີມ, ກະລຸນາຢ້ຽມຊົມ: https://www.nxp.com

 

ເອກະສານ / ຊັບພະຍາກອນ

NXP PN7160 ຕົວຄວບຄຸມ NFC ອີງໃສ່ NCI [pdf] ຄໍາແນະນໍາ
PN7160, PN7220, PN7160 NCI Based NFC controllers, PN7160, NCI Based NFC controllers, Based NFC controllers, NFC controllers, controllers

ເອກະສານອ້າງອີງ

ອອກຄໍາເຫັນ

ທີ່ຢູ່ອີເມວຂອງເຈົ້າຈະບໍ່ຖືກເຜີຍແຜ່. ຊ່ອງຂໍ້ມູນທີ່ຕ້ອງການຖືກໝາຍໄວ້ *