NXP PN7160 NCI അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളർ നിർദ്ദേശങ്ങൾ

പ്രമാണ വിവരം 

വിവരങ്ങൾ ഉള്ളടക്കം
കീവേഡുകൾ PN7160, PN7220, NCI, EMVCo, NFC ഫോറം, Android, NFC
അമൂർത്തമായ ആൻഡ്രോയിഡ് 7160-ലേക്ക് PN7220/PN14 കോമൺ മിഡിൽവെയർ റിലീസ് എങ്ങനെ പോർട്ട് ചെയ്യാമെന്ന് ഈ ഡോക്യുമെൻ്റ് വിവരിക്കുന്നു.

ഈ ഗൈഡ് NXP NCI അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളറുകളായ PN7160, PN7220 എന്നിവ ഒരു ആൻഡ്രോയിഡ് പരിതസ്ഥിതിയിലേക്ക് എങ്ങനെ സംയോജിപ്പിക്കാം എന്നതിനെക്കുറിച്ചുള്ള വിശദമായ നിർദ്ദേശങ്ങൾ നൽകുന്നു. ആവശ്യമായ കേർണൽ ഡ്രൈവറും മെഗാവാട്ടിൻ്റെ കോൺഫിഗറേഷനും ഇൻസ്റ്റോൾ ചെയ്യുന്ന പ്രക്രിയയിൽ ഉൾപ്പെടുന്നു (കാണുക [1]). കൂടുതൽ വിവരങ്ങൾക്ക്, PN7160 [2], PN7220 [3] എന്നിവയുടെ ഉൽപ്പന്ന പേജ് കാണുക. PN7160, PN7220 NFC കൺട്രോളറുകൾക്കുള്ള പിന്തുണ സംയോജിപ്പിക്കുന്നതിനായി Android ഓപ്പൺ സോഴ്‌സ് പ്രോജക്‌റ്റ് (AOSP) അപ്‌ഡേറ്റ് ചെയ്‌തു.

PN7220 രണ്ട് കോൺഫിഗറേഷനുകളിലാണ് വരുന്നത്: സിംഗിൾ-ഹോസ്റ്റ്, ഡ്യുവൽ-ഹോസ്റ്റ്. സ്റ്റാക്ക് പൊതുവെ രണ്ടിനും ഒരുപോലെയാണ്. ഡ്യുവൽ-ഹോസ്റ്റ് മോഡിൽ, SMCU ചേർത്തിരിക്കുന്നു, അതിനർത്ഥം EMVCo-യുമായി ബന്ധപ്പെട്ട എല്ലാ ജോലികളും SMCU-ൽ നിർവ്വഹിക്കുന്നു എന്നാണ്. സിംഗിൾഹോസ്റ്റിൽ EMVCo ഒരു സമർപ്പിത EMVCo MW സ്റ്റാക്കിലാണ് നടപ്പിലാക്കുന്നത്

ആൻഡ്രോയിഡ് MW സ്റ്റാക്ക്

PN1 Android NFC സ്റ്റാക്കിൻ്റെ ആർക്കിടെക്ചർ ചിത്രം 7220 വ്യക്തമാക്കുന്നു.

  • PN2-ൻ്റെ ഹാർഡ്‌വെയർ ഉറവിടങ്ങളിലേക്ക് പ്രവേശനം അനുവദിക്കുന്ന ഒരു കേർണൽ മൊഡ്യൂളാണ് NXP I7220C ഡ്രൈവർ.
  • NXP NFC കൺട്രോളർ-നിർദ്ദിഷ്ട ഹാർഡ്‌വെയർ അബ്‌സ്‌ട്രാക്ഷൻ ലെയറിൻ്റെ ഒരു നിർവ്വഹണമാണ് HAL മൊഡ്യൂൾ.
  • NFC പ്രവർത്തനം നൽകുന്ന ഒരു നേറ്റീവ് ലൈബ്രറിയാണ് LibNfc-Nci.
  • NFC JNI ജാവ, നേറ്റീവ് ക്ലാസുകൾ തമ്മിലുള്ള പാലമായി പ്രവർത്തിക്കുന്നു.
  • NFC, EMVCo എന്നീ പ്രവർത്തനങ്ങളിലേക്കുള്ള പ്രവേശനം അനുവദിക്കുന്ന ആപ്ലിക്കേഷൻ ചട്ടക്കൂടിൻ്റെ ഒരു മൊഡ്യൂളാണ് NFC, EMVCo ഫ്രെയിംവർക്ക്.

PN2 ആൻഡ്രോയിഡ് NFC സ്റ്റാക്കിൻ്റെ ആർക്കിടെക്ചർ ചിത്രം 7160 കാണിക്കുന്നു. 


ചിത്രം 2. PN7160 Android MW സ്റ്റാക്ക് 

  • PN2-ൻ്റെ ഹാർഡ്‌വെയർ ഉറവിടങ്ങളിലേക്ക് പ്രവേശനം അനുവദിക്കുന്ന ഒരു കേർണൽ മൊഡ്യൂളാണ് NXP I7160C ഡ്രൈവർ.
  • NXP NFC കൺട്രോളർ-നിർദ്ദിഷ്ട ഹാർഡ്‌വെയർ അബ്‌സ്‌ട്രാക്ഷൻ ലെയറിൻ്റെ ഒരു നിർവ്വഹണമാണ് HAL മൊഡ്യൂൾ.
  • NFC പ്രവർത്തനം നൽകുന്ന ഒരു നേറ്റീവ് ലൈബ്രറിയാണ് LibNfc-nci.
  • NFC JNI ജാവ, നേറ്റീവ് ക്ലാസുകൾ തമ്മിലുള്ള പാലമായി പ്രവർത്തിക്കുന്നു.
  • NFC ഫങ്ഷണലിറ്റികളിലേക്ക് പ്രവേശനം അനുവദിക്കുന്ന ആപ്ലിക്കേഷൻ ചട്ടക്കൂടിൻ്റെ ഒരു മൊഡ്യൂളാണ് NFC.
  • MW സോഴ്സ് കോഡ് PN7160, PN7220 എന്നിവയ്ക്ക് സമാനമാണ്, എന്നാൽ കുറച്ച് പരിമിതികളുണ്ട്.

ഓരോ NFC കൺട്രോളറിൻ്റെയും പിന്തുണയ്ക്കാത്ത സവിശേഷതകൾ പട്ടിക 1 കാണിക്കുന്നു. 

പട്ടിക 1. പിന്തുണയ്ക്കാത്ത സവിശേഷതകൾ 

NFC കൺട്രോളർ പിന്തുണയ്ക്കാത്ത സവിശേഷതകൾ
PN7160
  • EMVCo MW സ്റ്റാക്ക്
  • എസ്.എം.സി.യു
  • CT സവിശേഷത
PN7220
  • NFCEE_NDEF

കുറിപ്പ്: ആൻഡ്രോയിഡ് 14 മുതൽ P2P-യും PN7160-ൽ പിന്തുണയ്‌ക്കുന്നില്ല.

കേർണൽ ഡ്രൈവർ

PN7220 അല്ലെങ്കിൽ PN7160-മായി കണക്ഷൻ സ്ഥാപിക്കുന്നതിന്, ആൻഡ്രോയിഡ് സ്റ്റാക്ക് nxpnfc കേർണൽ ഡ്രൈവർ ഉപയോഗിക്കുന്നു. ഇത് [4] എന്നതിൽ കാണാം.

ഡ്രൈവർ വിശദാംശങ്ങൾ

PN7220 I2C ഫിസിക്കൽ ഇൻ്റർഫേസിനെ പിന്തുണയ്ക്കുന്നു, അതേസമയം PN7160 I2C അല്ലെങ്കിൽ SPI ഫിസിക്കൽ ഇൻ്റർഫേസിനെ പിന്തുണയ്ക്കുന്നു. കേർണലിലേക്ക് ഇൻസ്റ്റോൾ ചെയ്യുമ്പോൾ, /dev/nxpnfc-ലെ ഡിവൈസ് നോഡ് വഴി ഡ്രൈവർ എക്സ്പോസ് ചെയ്യുന്നു.

കുറിപ്പ്: PN7160, PN7220 എന്നിവ രണ്ട് വ്യത്യസ്ത ഡ്രൈവറുകൾ ഉപയോഗിക്കുന്നു, ചിപ്പ് തരം അടിസ്ഥാനമാക്കി ശരിയായ ഡ്രൈവർ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്.

PN7160 ഡ്രൈവർ സോഴ്സ് കോഡ് ലഭിക്കുന്നു

nfcandroid_platform_drivers/drivers/pn7160/nfc ഡ്രൈവർ ശേഖരം കേർണൽ ഡയറക്ടറിയിലേക്ക് പകർത്തുക, നിലവിലുള്ള നടപ്പിലാക്കൽ മാറ്റിസ്ഥാപിക്കുക. കേർണലിനായി [4] കാണുക files.

$rm -rf ഡ്രൈവറുകൾ/nfc
$git ക്ലോൺ “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 (സിംഗിൾ-ഹോസ്റ്റ് യൂസ്‌കേസ്) അല്ലെങ്കിൽ nfcandroid_platform_ ഡ്രൈവറുകൾ/ഡ്രൈവറുകൾ/pn7220cms/nfc (ഡ്യുവൽ-ഹോസ്റ്റ് യൂസ്‌കേസ്) കേർണലിലേക്ക്, നിലവിലുള്ള ഡ്രൈവറുകൾ/nfc എന്ന ഡയറക്ടറിയിൽ പകർത്തുക. കേർണലിനായി [4] കാണുക files.

$rm -rf drivers/nfc$git ക്ലോൺ “https://github.com/nxp-nfc-infra/nfcandroid_platform_drivers.git” -bbr_ar_14_comm_infra_dev

ഈ കമാൻഡ് പിന്തുടർന്ന്, ഫോൾഡർ ഡ്രൈവറുകൾ/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
ഡ്രൈവറെ നിർമ്മിക്കുന്നു

കേർണലിലേക്ക് ഡ്രൈവർ ചേർക്കുന്നതിനും ഉപകരണ ബൂട്ടിൽ ലോഡ് ചെയ്യുന്നതിനും ഡിവൈസ്ട്രീ ഉത്തരവാദിയാണ്.

ഡിവൈസ്ട്രീ സ്പെസിഫിക്കേഷൻ അപ്ഗ്രേഡ് ചെയ്ത ശേഷം, പ്ലാറ്റ്ഫോമുമായി ബന്ധപ്പെട്ട ഡിവൈസ്ട്രീ പുനർനിർമ്മിക്കേണ്ടതുണ്ട്. സമഗ്രമായ മൂല്യനിർണ്ണയം നൽകുന്നതിനാൽ കേർണൽ പതിപ്പ് 5.10 ഉപയോഗിക്കാൻ NXP ശുപാർശ ചെയ്യുന്നു.

ഡ്രൈവർ നിർമ്മിക്കുന്നതിന്, ഇനിപ്പറയുന്ന ഘട്ടങ്ങൾ നടപ്പിലാക്കണം:

  1. കേർണൽ ഡ്രൈവർ നേടുക
  2. ഡ്രൈവർക്കുള്ള സോഴ്സ് കോഡ് നേടുക
  3. ഡിവൈസ്ട്രീ നിർവചനം പരിഷ്ക്കരിക്കുക, അത് ഉപയോഗത്തിലുള്ള ഉപകരണത്തിൻ്റെ പ്രത്യേകതയാണ്.
  4. ഡ്രൈവർ നിർമ്മിക്കുക:

എ. മെനു കോൺഫിഗറേഷൻ നടപടിക്രമത്തിലൂടെ, ബിൽഡിലേക്ക് ടാർഗെറ്റ് ഡ്രൈവർ ചേർക്കുക.

പൂർത്തിയാക്കിയ കേർണൽ പുനർനിർമ്മിച്ച ശേഷം, ഡ്രൈവർ കേർണൽ ഇമേജിൽ ഉൾപ്പെടുത്തും. എല്ലാ പുതിയ കേർണൽ ഇമേജുകളും AOSP ബിൽഡിലേക്ക് പകർത്തിയിരിക്കണം.

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

കുറിപ്പ്: റിപ്പോ ടൂൾ സിസ്റ്റത്തിൽ ഇൻസ്റ്റാൾ ചെയ്തിരിക്കണം. നിർദ്ദേശങ്ങൾക്കായി [6] കാണുക.

സോഴ്സ് കോഡ് നിർമ്മിക്കുക.

$cd Android_AROOT
$source build/envsetup.sh
$lunch സെലക്ട്_ടാർഗെറ്റ് #ടാർഗെറ്റ് ആണ് നമ്മൾ മുൻകാലത്തേക്ക് ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുന്ന DHample: evk_8mn-userdebug
$ ഉണ്ടാക്കുക -ജെ

എല്ലാ NXP റിപ്പോസിറ്ററികളും ടാർഗെറ്റ് ലൊക്കേഷനിലേക്ക് പകർത്തുക.

പട്ടിക 2. നിർദ്ദിഷ്ട ആൻഡ്രോയിഡ് പതിപ്പിനുള്ള ബ്രാഞ്ച്

ആൻഡ്രോയിഡ് പതിപ്പ് ശാഖ
ആൻഡ്രോയിഡ് 14 br_ar_14_comm_infra_dev

കുറിപ്പ്: ക്ലോണിംഗ് സമയത്ത്, ശരിയായ ശാഖ തിരഞ്ഞെടുക്കേണ്ടത് പ്രധാനമാണ്.

പട്ടിക 3. ക്ലോൺ റിപ്പോസിറ്ററികൾ

AOSP റിപ്പോസ് NXP GitHub Repos
“$ANDROID_ROOT”/പാക്കേജുകൾ/ apps/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”/vendor/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. ടെസ്റ്റ് ആപ്ലിക്കേഷനുകൾക്കും ടിഡിഎ പിന്തുണയ്‌ക്കുമുള്ള ക്ലോൺ റിപ്പോസിറ്ററികൾ 

GitHub-ലെ ഫോൾഡർ AOSP റിപ്പോസ് NXP GitHub ഐസി പിന്തുണയ്ക്കുന്നു
test_apps/SMCU_Switch “$ANDROID_ROOT”/

പാക്കേജുകൾ/ആപ്പുകൾ/

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

nfcandroid_infra_test_apps

PN7220
test_apps/EMVCoMode SwitchApp “$ANDROID_ROOT”/

പാക്കേജുകൾ/ആപ്പുകൾ/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 “$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”/സിസ്റ്റം/ 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”/

പാക്കേജുകൾ/ആപ്പുകൾ/Nfc/

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

പാച്ചുകൾ പ്രയോഗിക്കുക

പട്ടിക 5. പാച്ചുകൾ പ്രയോഗിക്കുക

അപേക്ഷിക്കാനുള്ള സ്ഥലം അപേക്ഷിക്കാൻ പാച്ച് പാച്ചിൻ്റെ സ്ഥാനം
“$ANDROID_ROOT”/ബിൽഡ്/ ബാസൽ/ 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”/ബിൽഡ്/ ഉണ്ടാക്കുക/ 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”/ബിൽഡ്/ ഉടൻ/ AROOT_build_song. പാച്ച് 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_ അടിസ്ഥാനം.പാച്ച് 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_ നേറ്റീവ്.പാച്ച് 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”/

പാക്കേജുകൾ/മൊഡ്യൂളുകൾ/ ബ്ലൂടൂത്ത്/

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”/

ഫ്രെയിംവർക്ക്/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/

കുറിപ്പ്: പാച്ചിംഗ് സമയത്ത് എന്തെങ്കിലും പ്രശ്നം ശ്രദ്ധയിൽപ്പെട്ടാൽ, പാച്ച് പ്രയോഗിച്ചതിന് ശേഷം ഔട്ട്പുട്ട് പരിശോധിക്കുക.

FW ലൈബ്രറികൾ ചേർക്കുക. FW നായി [8] കാണുക.

കുറിപ്പ്: നിർബന്ധമല്ല. FW എപ്പോഴും അപ്ഡേറ്റ് ചെയ്യാം.

PN7160-ന്: 

$git ക്ലോൺ https://github.com/NXP/nfc-NXPNFCC_FW.git
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn7160_fw.so AROOT/vendor/
nxp/7160/firmware/lib64/libpn7160_fw.so
$cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/32-bit/libpn7160_fw.so AROOT/vendor/
nxp/7160/firmware/lib/libpn7160_fw.so

PN7220-ന്: 

$git ക്ലോൺ 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 make ൽfile (ഉദാample, device/brand/platform/device.mk), നിർദ്ദിഷ്ട നിർമ്മാണം ഉൾപ്പെടുന്നുfiles:

$(കോൾ inherit-product, vendor/nxp/nfc/device-nfc.mk) 

BoardConfig.mk ൽ ഉണ്ടാക്കുകfile (ഉദാample, device/brand/platform/BoardConfig.mk), ഒരു പ്രത്യേക നിർമ്മാണം ഉൾപ്പെടുത്തുകfile:

വെണ്ടർ/nxp/nfc/BoardConfigNfc.mk ഉൾപ്പെടുത്തുക 

DTA ആപ്ലിക്കേഷൻ ചേർക്കുന്നു

$git ക്ലോൺ https://github.com/NXPNFCProject/NXPAndroidDTA.git $patch -p1 nfc-dta.patch #https://github.com/nxp-nfc-infra/ nfcandroid_platform_reference/tree/dev/gmar_14 build_mw_patches/db845c $ cp -r nfc-dta /system/nfc-dta $/system/nfc-dta/$ mm -j

മാറ്റങ്ങളോടെ AOSP നിർമ്മിക്കുക:

$cd ഫ്രെയിംവർക്ക്/ബേസ്
$mm
$cd ../..
$cd വെണ്ടർ/nxp/frameworks
$mm #ഇതിന് ശേഷം, com.nxp.emvco.jar, com.nxp.nfc.jar എന്നിവ അകത്ത് പുറത്തായിരിക്കണം/
ലക്ഷ്യം/ഉൽപ്പന്നം/xxxx/സിസ്റ്റം/ചട്ടക്കൂട്/
$cd ../../..
$cd ഹാർഡ്‌വെയർ/nxp/nfc
$mm
$cd ../../..
$ ഉണ്ടാക്കുക -ജെ

ഇപ്പോൾ, പുതിയ Android ചിത്രങ്ങൾ ഉപയോഗിച്ച് ഉപകരണം ഫ്ലാഷ് ചെയ്യുക.

ആൻഡ്രോയിഡ് എൻഎഫ്‌സി ആപ്പുകളും ലിബ് ഓൺ ടാർഗെറ്റുകളും

നിർമ്മാണത്തിന് ശേഷം, സൃഷ്ടിച്ച ലൈബ്രറികൾ ടാർഗെറ്റ് ഉപകരണത്തിൽ ഇൻസ്റ്റാൾ ചെയ്യണം. സെക്ഷൻ 4.2 പ്രൊജക്റ്റ് ലൊക്കേഷൻ, അനുബന്ധ ലൈബ്രറി, ടാർഗെറ്റ് ഡിവൈസ് ലൊക്കേഷൻ എന്നിവ വ്യക്തമാക്കുന്നു.

കുറിപ്പ്: EMVCo ബൈനറികൾ PN7220-ൽ മാത്രമേ ബാധകമാകൂ.

പട്ടിക 6. സമാഹരിച്ചത് fileഉപകരണ ടാർഗെറ്റിനൊപ്പം എസ് 

പദ്ധതിയുടെ സ്ഥാനം സമാഹരിച്ചത് Files അഭിപ്രായങ്ങൾ ടാർഗെറ്റ് ഉപകരണത്തിലെ സ്ഥാനം
“$ANDROID_ROOT”/

പാക്കേജുകൾ/ആപ്പുകൾ/Nfc

NfcNci.odex NfcNci.vdex lib/NfcNci.apk oat/libnfc_nci_jni.so   /system/app/NfcNci/ ഓട്സ്/കൈ64/

/system/app/NfcNci/ ഓട്സ്/കൈ64/

/system/app/NfcNci/

/system/lib64/

“$ANDROID_ROOT”/

സിസ്റ്റം/എൻഎഫ്സി

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

system/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   /വെൻഡർ/lib64

/vendor/bin/hw/

/വെൻഡർ/etc/init

/system/lib64/

/system/lib64/

/system/lib64/

/വെൻഡർ/lib64/

/വെൻഡർ/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   /സിസ്റ്റം\/ib64/

/system/lib64/

/system/lib64/

/system/lib64/

/വെൻഡർ/lib64/

/വെൻഡർ/lib64/

/വെൻഡർ/lib64/

“$ANDROID_ROOT”/

വെണ്ടർ/nxp/frameworks

com.nxp.emvco.jar (PN7220) com.nxp.nfc.jar   /സിസ്റ്റം/ഫ്രെയിംവർക്ക്

/സിസ്റ്റം/ഫ്രെയിംവർക്ക്

“$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   /വെൻഡർ/lib64/

/system/lib64/

/system/lib64/

/വെൻഡർ/lib64/

/vendor/bin/hw/

/vendor/etc/init/

“$ANDROID_ROOT/

ഹാർഡ്‌വെയർ/nxp/emvco_tda”

emvco_tda.so CT ഫീച്ചറിന് മാത്രം ബാധകം. /വെൻഡർ/lib64/
മാപ്പിംഗ് തടയുക

AOSP കോഡിലെ ടാർഗെറ്റ് ലൊക്കേഷനിലേക്ക് സെക്ഷൻ 1-ൽ നിന്ന് ബ്ലോക്ക് നാമം മാപ്പ് ചെയ്യുന്നു.

പട്ടിക 7. NFC സ്റ്റാക്കിൽ ലൊക്കേഷൻ പാച്ച് ചെയ്യുക 

ബ്ലോക്ക് പേര് AOSP കോഡിലെ സ്ഥാനം
NFC HAL, EMVCo HAL ഹാർഡ്‌വെയർ/ഇൻ്റർഫേസുകൾ/
NFC സ്റ്റാക്ക് ഹാർഡ്‌വെയർ/nxp/nfc/
EMVCo L1 ഡാറ്റ എക്സ്ചേഞ്ച് ലെയർ = EMVCo സ്റ്റാക്ക് ഹാർഡ്‌വെയർ/nxp/emvco/
LibNfc-Nci system/nfc/
എൻഎഫ്സി ജെഎൻഐ പാക്കേജുകൾ/ആപ്പുകൾ/nfc/
NFC സേവനം പാക്കേജുകൾ/ആപ്പുകൾ/nfc/
NFC ഫ്രെയിംവർക്ക് ചട്ടക്കൂടുകൾ/അടിസ്ഥാനം/
EMVCo ഫ്രെയിംവർക്ക് വെണ്ടർ/nxp/frameworks/
EMVCo എ.പി

PN7220 MW സ്റ്റാക്ക് EMVCo MW സ്റ്റാക്കിനൊപ്പം AOSP കോഡ് വിപുലീകരിക്കുന്നു. ഈ വിഭാഗം EMVCo API-കളെ വിവരിക്കുന്നു.

കുറിപ്പ്: PN7220 IC ഉപയോഗിക്കുമ്പോൾ മാത്രമേ API-കൾ വിളിക്കാൻ കഴിയൂ. PN7160 IC ഉപയോഗിച്ച് വിളിക്കുകയാണെങ്കിൽ, API പ്രവർത്തിക്കില്ല. ഇഎംവികോ പ്രോfile കണ്ടെത്തൽ. കോൺടാക്റ്റ്, കോൺടാക്റ്റ്ലെസ് പ്രോ എന്നിവയ്‌ക്കൊപ്പം ആ API-കൾ ഉപയോഗിക്കാനാകുംfiles.

രജിസ്റ്റർ EMVCoEventListener()

  • ndk::ScopedAStatus registerEMVCoEventListener (const std::shared_ptr< INxpEmvcoClientCallback > & in_clientCallback, bool * in_aidl_return)
  • വിവരണം: ശ്രോതാക്കളുടെ ഉപകരണത്തിൽ നിന്ന് ഇവൻ്റുകൾ സ്വീകരിക്കുന്നതിന് EMVCo കോൾബാക്ക് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുക
  • കുറിപ്പ്: മറ്റേതെങ്കിലും എപിഐ അഭ്യർത്ഥിക്കുന്നതിന് മുമ്പ് ഈ പ്രവർത്തനം നിർബന്ധമാണ്.
  • പരാമീറ്ററുകൾ:
    • [in] *in_clientCallback: EMVCo ക്ലയൻ്റ് HAL കോൾബാക്ക് ഉണ്ട്
    • [in] *in_aidl_return: കോളർക്കുള്ള റിട്ടേൺ സ്റ്റാറ്റസ് സൂചിപ്പിക്കുന്നു
  • മടങ്ങുന്നു
    • രജിസ്റ്റർ ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടാൽ ബൂളിയൻ സത്യവും വിജയമാണെങ്കിൽ തെറ്റും നൽകുന്നു

നിലവിലെ കണ്ടെത്തൽ മോഡ് നേടുക () 

  • ndk::ScopedAStatus getCurrentDiscoveryMode(::aidl::ventor::nxp::emvco::NxpDiscoveryMode *_aidl_return)
  • വിവരണം: നിലവിലെ സജീവ പ്രോ നൽകുന്നുfile തരം.
  • മടങ്ങുന്നു
    • NxpDiscoveryMode - NFC/EMVCo/അജ്ഞാതം

onNfcStateChange() 

  • ndk::ScopedAStatus onNfcStateChange(NxpNfcState in_nfcState)
  • വിവരണം: NFC നില EMVCo HAL-ലേക്ക് അപ്ഡേറ്റ് ചെയ്തു.
  • പരാമീറ്ററുകൾ:
    • [in] in_nfcState: NFC നില വ്യക്തമാക്കുന്നു
  • റിട്ടേണുകൾ:
    • ശൂന്യം

രജിസ്റ്റർNFCStateCallback()

  • ndk::ScopedAStatus registerNFCStateCallback ( const std::shared_ptr< ::aidl::vendor::nxp::emvco::INxpNfcStateChangeRequestCallback > & in_nfcStateChangeRequestCallback, boollback
  • വിവരണം: ഒരു ലിസണർ ഉപകരണത്തിൽ നിന്ന് ഇവൻ്റുകൾ സ്വീകരിക്കുന്നതിന് ഒരു NFC കോൾബാക്ക് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുക.
  • കുറിപ്പ്: മറ്റേതെങ്കിലും എപിഐ അഭ്യർത്ഥിക്കുന്നതിന് മുമ്പ് ഈ ഫംഗ്‌ഷൻ വിളിക്കേണ്ടതാണ്.
  • പരാമീറ്ററുകൾ:
    • [in] in_nfcStateChangeCallback: INxpNfcStateChangeRequestCallback ഇവൻ്റ് കോൾബാക്ക് ഫംഗ്‌ഷൻ കോളർ കൈമാറും. ലഭിച്ച അഭ്യർത്ഥനയുടെ അടിസ്ഥാനത്തിൽ NFC ഓൺ/ഓഫ് ചെയ്യുന്നതിന് ഇത് നടപ്പിലാക്കണം.
  • റിട്ടേണുകൾ: ബൂളിയൻ റിട്ടേണുകൾ ശരിയാണ്, വിജയമാണെങ്കിൽ, റജിസ്റ്റർ ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടാൽ, തെറ്റായി നൽകുന്നു.

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 മോഡ് ആരംഭിക്കുന്നു. ആപ്ലിക്കേഷൻ ഡാറ്റ ചാനൽ സ്ഥാപിച്ചുകഴിഞ്ഞാൽ, ഡിവൈസ് കൺട്രോളർ ഉപയോഗിച്ച് EMVCo മോഡ് ആരംഭിക്കാൻ ആപ്ലിക്കേഷൻ അയച്ചേക്കാം.
  • പരാമീറ്ററുകൾ:
    • [in] in_disc_mask EMVCo: ഈ പരാമീറ്ററിലൂടെ പോളിംഗ് സാങ്കേതികവിദ്യകൾ ക്രമീകരിച്ചിരിക്കുന്നു
    • [in]in_isStartEMVCo: EMVCo മോഡ് ആരംഭിക്കാനോ നിർത്താനോ വ്യക്തമാക്കുന്നു
  • റിട്ടേണുകൾ:
    • ശൂന്യം

setLed()

ndk::ScopedAStatus setLed ( ::aidl::vendor::nxp::emvco::NxpLedControl
in_ledControl,
::aidl::vendor::nxp::emvco::NxpEmvcoStatus * emvco_status)

EMVCo-യെ ബന്ധപ്പെടുന്നതിന്, മുമ്പത്തേതിന് മുകളിൽ ഇനിപ്പറയുന്ന API-കൾ ഉപയോഗിക്കാം.

CloseTDA()

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

  • വിവരണം: TDA മുഖേന ബന്ധിപ്പിച്ചിട്ടുള്ള സ്മാർട്ട് കാർഡ് അടയ്ക്കുന്നു
  • പരാമീറ്ററുകൾ:
    • [in] tdaID: അടയ്‌ക്കേണ്ട tda സ്ലോട്ടിൻ്റെ ഐഡി
  • ഒഴിവാക്കലുകൾ:
    • EMVCO_STATUS_INVALID_PARAMETER, നൽകിയിട്ടുണ്ടെങ്കിൽ tdaID അസാധുവാണ്
    • കോൺടാക്റ്റ് കാർഡ് ഫീച്ചർ പിന്തുണയ്ക്കാത്തപ്പോൾ EMVCO_STATUS_FEATURE_NOT_SUPPORTED.
  • റിട്ടേണുകൾ:
    • ശൂന്യം

കണ്ടുപിടിക്കുകTDA()

ndk::ScopedAStatus DiscoverTDA
( std::vector<::aidl::vendor::nxp::emvco::NxpEmvcoTDAInfo > * emvcoTDAInfo )

വിവരണം: ടിഡിഎ വഴി ബന്ധിപ്പിച്ചിട്ടുള്ള സ്മാർട്ട് കാർഡിൻ്റെ എല്ലാ വിശദാംശങ്ങളും DiscoverTDA നൽകുന്നു

  • പരാമീറ്ററുകൾ:
    • [in]*in_clientCallback: കോൾബാക്ക് ആയി EMVCo അവസ്ഥയും TDA അവസ്ഥയും നൽകുന്നു
  • ഒഴിവാക്കലുകൾ:
    •  കോൺടാക്റ്റ് കാർഡ് ഫീച്ചർ പിന്തുണയ്ക്കാത്തപ്പോൾ EMVCO_STATUS_FEATURE_NOT_SUPPORTED.
  • റിട്ടേണുകൾ:
    • NxpEmvcoTDAInfo[] TDA വഴി ബന്ധിപ്പിച്ചിട്ടുള്ള എല്ലാ സ്‌മാർട്ട് കാർഡും നൽകുന്നു. സ്റ്റാറ്റസ് EMVCO_STATUS_OK ആയിരിക്കുമ്പോൾ മാത്രമേ സാധുവായ emvcoTDAInfo ലഭിക്കൂ

openTDA()

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

വിവരണം: TDA വഴി ബന്ധിപ്പിച്ചിട്ടുള്ള സ്മാർട്ട് കാർഡ് തുറക്കുന്നു

  • പരാമീറ്ററുകൾ:
    • [in]tdaID: DiscoverTDA വഴി ലഭിച്ച സ്മാർട്ട് കാർഡിൻ്റെ tda ഐഡി
  • ഒഴിവാക്കലുകൾ:
    • EMVCO_STATUS_INVALID_PARAMETER, നൽകിയിട്ടുണ്ടെങ്കിൽ tdaID അസാധുവാണ്
    • കോൺടാക്റ്റ് കാർഡ് ഫീച്ചർ പിന്തുണയ്ക്കാത്തപ്പോൾ EMVCO_STATUS_FEATURE_NOT_SUPPORTED.
  • റിട്ടേണുകൾ:
    • byte സ്മാർട്ട് കാർഡിൻ്റെ കണക്ഷൻ ഐഡി നൽകുന്നു. സ്റ്റാറ്റസ് EMVCO_STATUS_OK ആയിരിക്കുമ്പോൾ മാത്രമേ സാധുവായ കണക്ഷൻ ഐഡി ലഭിക്കുകയുള്ളൂ

രജിസ്റ്റർ EMVCoCTListener() 

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

  • വിവരണം: EMVCo സ്റ്റാക്കിലേക്ക് EMVCoCT കോൾബാക്ക് രജിസ്റ്റർ ചെയ്യുന്നു
  • പരാമീറ്ററുകൾ:
    • [in]*in_in_clientCallback: കോൾബാക്ക് ആയി EMVCo അവസ്ഥയും TDA അവസ്ഥയും നൽകുന്നു
  • റിട്ടേണുകൾ:
    • ശൂന്യം 

കൈമാറുക() 

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

  • വിവരണം: ഉപകരണ കൺട്രോളറുമായി ആപ്ലിക്കേഷൻ ഡാറ്റ അയയ്ക്കുകയും കൺട്രോളറിൽ നിന്ന് പ്രതികരണ ഡാറ്റ സ്വീകരിക്കുകയും ചെയ്യുന്നു
  • കുറിപ്പ്: NCI തലക്കെട്ടിൻ്റെ ഭാഗമായി TDA-യുടെ കണക്ഷൻ ഐഡി ചേർക്കണം.
  • പരാമീറ്ററുകൾ:
    • [in]in_cmd_data: ആപ്ലിക്കേഷൻ കമാൻഡ് ഡാറ്റ ബഫർ
  • ഒഴിവാക്കലുകൾ:
    • EMVCO_STATUS_INVALID_PARAMETER, നൽകിയിരിക്കുന്ന കണക്ഷൻ ഐഡി അസാധുവാണെങ്കിൽ
    • കോൺടാക്റ്റ് കാർഡ് ഫീച്ചർ പിന്തുണയ്ക്കാത്തപ്പോൾ EMVCO_STATUS_FEATURE_NOT_SUPPORTED.
  • റിട്ടേണുകൾ:
    • കൺട്രോളറിൽ നിന്ന് പ്രതികരണം APDU ലഭിച്ചു. സ്റ്റാറ്റസ് EMVCO_STATUS_OK ആയിരിക്കുമ്പോൾ മാത്രമാണ് APDU-ന് സാധുവായ പ്രതികരണം ലഭിക്കുന്നത്

EMVCo കോൺടാക്റ്റ്‌ലെസ്സിനായി, ഇനിപ്പറയുന്ന API-കളെ വിളിക്കാം:

രജിസ്റ്റർ EMVCoEventListener()

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

  • വിവരണം: ഒരു ശ്രോതാവിൻ്റെ ഉപകരണത്തിൽ നിന്ന് ഇവൻ്റുകൾ സ്വീകരിക്കുന്നതിന് ഒരു EMVCo കോൾബാക്ക് ഫംഗ്‌ഷൻ രജിസ്റ്റർ ചെയ്യുക.
  • കുറിപ്പ്: മറ്റേതെങ്കിലും എപിഐ അഭ്യർത്ഥിക്കുന്നതിന് മുമ്പ് ഈ ഫംഗ്‌ഷൻ വിളിക്കേണ്ടതാണ്.
  • പരാമീറ്ററുകൾ:
    • [in]*in_clientCallback: EMVCo ക്ലയൻ്റ് HAL കോൾബാക്ക് ഉണ്ട്
    • [in]*in_aidl_return: കോളർക്കുള്ള റിട്ടേൺ റജിസ്റ്റർ സ്റ്റാറ്റസ് സൂചിപ്പിക്കുന്നു
  • റിട്ടേണുകൾ:
    • രജിസ്റ്റർ ചെയ്യുന്നതിൽ പരാജയപ്പെട്ടാൽ ബൂളിയൻ സത്യവും വിജയമാണെങ്കിൽ തെറ്റും നൽകുന്നു

setEMVCoMode()

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

  • വിവരണം: ഉപകരണ കൺട്രോളർ ഉപയോഗിച്ച് EMVCo മോഡ് ആരംഭിക്കുന്നു. ആപ്ലിക്കേഷൻ ഡാറ്റ ചാനൽ സ്ഥാപിച്ചുകഴിഞ്ഞാൽ, ഡിവൈസ് കൺട്രോളർ ഉപയോഗിച്ച് EMVCo മോഡ് ആരംഭിക്കാൻ ആപ്ലിക്കേഷൻ അയച്ചേക്കാം.
  • പരാമീറ്ററുകൾ:
    • [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 നൽകുകയും ചെയ്യുന്നു. ഈ API-ലേക്ക് വിളിക്കാൻ EMVCo മോഡ് ഓണായിരിക്കണം

കൈമാറുക()

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

  • വിവരണം: ഡിവൈസ് കൺട്രോളർ ഉപയോഗിച്ച് ആപ്ലിക്കേഷൻ ഡാറ്റ അയയ്ക്കുക.
  • കുറിപ്പ്: ഡാറ്റ അയയ്ക്കുന്നത് പരാജയപ്പെട്ടാൽ, ഈ API അഭ്യർത്ഥിക്കുന്നതിന് മുമ്പ് ആപ്ലിക്കേഷൻ വീണ്ടും ഓപ്പൺ() അഭ്യർത്ഥിക്കും.
  • പരാമീറ്ററുകൾ:
    • (in]in_data: ആപ്ലിക്കേഷൻ ഡാറ്റ ബഫർ
  • റിട്ടേണുകൾ:
    • നിർവ്വഹണ നിലയെ സൂചിപ്പിക്കുന്ന NxpEmvcoStatus
കോൺഫിഗറേഷൻ filePN7160

PN7160-ന്, രണ്ട് വ്യത്യസ്ത കോൺഫിഗറേഷനുകളുണ്ട് files.

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

കുറിപ്പ്: കോൺഫിഗറേഷൻ fileNXP നൽകുന്ന ങ്ങൾ മുൻampNFC കൺട്രോളർ ഡെമോ ബോർഡുമായി ബന്ധപ്പെട്ട les. ഇവ fileടാർഗെറ്റുചെയ്‌ത സംയോജനമനുസരിച്ച് കൾ സ്വീകരിക്കണം.

കോൺഫിഗറേഷൻ fileകൾ ലക്ഷ്യസ്ഥാനത്ത് സ്ഥാപിക്കണം (പട്ടിക 8 കാണുക).

പട്ടിക 8. കോൺഫിഗറേഷൻ്റെ സ്ഥാനങ്ങൾ files 

കോൺഫിഗറേഷൻ്റെ പേര് file ഉപകരണത്തിലെ സ്ഥാനം
libnfc-nci.conf സിസ്റ്റം / തുടങ്ങിയവ
libnfc-nxp.conf വെണ്ടർ/തുടങ്ങിയവ

കോൺഫിഗറേഷനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ലഭിക്കുന്നതിന് files, [9] കാണുക.

കോൺഫിഗറേഷൻ filePN7220

PN7220-ന്, അഞ്ച് വ്യത്യസ്ത കോൺഫിഗറേഷനുകളുണ്ട് files.

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

കുറിപ്പ്: കോൺഫിഗറേഷൻ fileNXP നൽകുന്ന ങ്ങൾ മുൻampNFC കൺട്രോളർ ഡെമോ ബോർഡുമായി ബന്ധപ്പെട്ട les. ഇവ fileടാർഗെറ്റുചെയ്‌ത സംയോജനമനുസരിച്ച് കൾ സ്വീകരിക്കണം

കോൺഫിഗറേഷൻ fileലക്ഷ്യസ്ഥാനത്ത് സ്ഥാപിക്കേണ്ടതുണ്ട് (പട്ടിക 9 കാണുക).

പട്ടിക 9. കോൺഫിഗറേഷൻ്റെ സ്ഥാനങ്ങൾ files 

കോൺഫിഗറേഷൻ്റെ പേര് file ഉപകരണത്തിലെ സ്ഥാനം
libemvco-nxp.conf വെണ്ടർ/തുടങ്ങിയവ
libnfc-nci.conf സിസ്റ്റം / തുടങ്ങിയവ
libnfc-nxp.conf വെണ്ടർ/തുടങ്ങിയവ
libnfc-nxp-eeprom.conf വെണ്ടർ/തുടങ്ങിയവ
libnfc-nxprfExt.conf വെണ്ടർ/തുടങ്ങിയവ

കോൺഫിഗറേഷനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ ലഭിക്കുന്നതിന് files, [9] കാണുക. 

DTA ആപ്ലിക്കേഷൻ

NFC ഫോറം സർട്ടിഫിക്കേഷൻ ടെസ്റ്റിംഗ് അനുവദിക്കുന്നതിന്, ഒരു ഉപകരണ പരിശോധന ആപ്ലിക്കേഷൻ നൽകിയിരിക്കുന്നു. വ്യത്യസ്‌ത ആൻഡ്രോയിഡ് ലെയറുകളിൽ ഇത് നിരവധി ഘടകങ്ങൾ ഉൾക്കൊള്ളുന്നു, അവ നിർമ്മിക്കുകയും ആൻഡ്രോയിഡ് ഇമേജിൽ ഉൾപ്പെടുത്തുകയും വേണം.

DTA ആപ്ലിക്കേഷൻ പുഷ് ചെയ്യുന്നതിന്, ഇനിപ്പറയുന്ന ഘട്ടങ്ങൾ നടപ്പിലാക്കേണ്ടതുണ്ട്:

  1. എല്ലാ ഡിടിഎയും പകർത്തുക fileഒരു സ്ഥലത്തേക്ക് എസ്
    $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. താഴെ പറയുന്നതുപോലെ ബൈനറികൾ ഉപകരണത്തിലേക്ക് പുഷ് ചെയ്യുക
    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 പുഷ് NxpDTA.apk /system/app/NxpDTA/

ടാർഗെറ്റ് ഫ്ലാഷ് ചെയ്ത ശേഷം, ഇൻസ്റ്റാൾ ചെയ്ത ആപ്ലിക്കേഷനുകളുടെ പട്ടികയിൽ DTA ആപ്ലിക്കേഷൻ ഉണ്ടായിരിക്കണം. ആപ്ലിക്കേഷൻ എങ്ങനെ ഉപയോഗിക്കണം എന്നതിൻ്റെ വിശദമായ വിവരണത്തിന് [7] കാണുക.

ചുരുക്കെഴുത്തുകൾ

പട്ടിക 10. ചുരുക്കങ്ങൾ 

ചുരുക്കെഴുത്ത് വിവരണം
എ.പി.ഡി.യു ആപ്ലിക്കേഷൻ പ്രോട്ടോക്കോൾ ഡാറ്റ യൂണിറ്റ്
എഒഎസ്പി ആൻഡ്രോയിഡ് ഓപ്പൺ സോഴ്സ് പ്രോജക്റ്റ്
DH ഉപകരണ ഹോസ്റ്റ്
എച്ച്എഎൽ ഹാർഡ്‌വെയർ അബ്‌സ്‌ട്രാക്ഷൻ ലെയർ
FW ഫേംവെയർ
I2C ഇൻ്റർ-ഇൻ്റഗ്രേറ്റഡ് സർക്യൂട്ട്
എൽ.പി.സി.ഡി താഴ്ന്ന പവർ കാർഡ് കണ്ടെത്തൽ
എൻസിഐ NFC കൺട്രോളർ ഇൻ്റർഫേസ്
എൻഎഫ്സി സമീപ-ഫീൽഡ് ആശയവിനിമയം
MW മിഡിൽവെയർ
PLL ഘട്ടം-ലോക്ക് ചെയ്ത ലൂപ്പ്
P2P പിയർ ടു പിയർ
RF റേഡിയോ ഫ്രീക്വൻസി
എസ്.ഡി.എ സീരിയൽ ഡാറ്റ
എസ്.എം.സി.യു സുരക്ഷിത മൈക്രോകൺട്രോളർ
SW സോഫ്റ്റ്വെയർ

റഫറൻസുകൾ

  1. GitHub ശേഖരം – PN7160, PN7220 Common MW: (ലിങ്ക്)
  2. Web പേജ് – PN7160 – ഇൻ്റഗ്രേറ്റഡ് ഫേംവെയറും NCI ഇൻ്റർഫേസും ഉള്ള NFC പ്ലഗ് ആൻഡ് പ്ലേ കൺട്രോളർ (ലിങ്ക്)
  3. Web പേജ് - PN7220 - EMV, NFC ഫോറം ആപ്ലിക്കേഷനുകൾ പിന്തുണയ്ക്കുന്ന NCI ഇൻ്റർഫേസുള്ള EMV L1 കംപ്ലയൻ്റ് NFC കൺട്രോളർ (ലിങ്ക്)
  4. GitHub ശേഖരം – PN7160, PN7220 കേർണൽ ഡ്രൈവർ: (ലിങ്ക്)
  5. ഉറവിടങ്ങൾ - AOSP r2 tag (ലിങ്ക്)
  6. ഉറവിടങ്ങൾ - ഉറവിട നിയന്ത്രണ ഉപകരണങ്ങൾ (ലിങ്ക്)
  7. ഉപയോക്തൃ ഗൈഡ് – UG10068 – PN7220 – ദ്രുത ആരംഭ ഗൈഡ് (ലിങ്ക്)
  8. GitHub ശേഖരം - PN7160, PN7220 FW സ്ഥാനം: (ലിങ്ക്)
  9. അപേക്ഷാ കുറിപ്പ് – AN14431 – PN7160/PN7220 കോൺഫിഗറേഷൻ files (ലിങ്ക്)

ഡോക്യുമെന്റിലെ സോഴ്സ് കോഡിനെക്കുറിച്ച് ശ്രദ്ധിക്കുക

Exampഈ പ്രമാണത്തിൽ കാണിച്ചിരിക്കുന്ന le കോഡിന് ഇനിപ്പറയുന്ന പകർപ്പവകാശവും BSD-3-ക്ലോസ് ലൈസൻസും ഉണ്ട്:

പകർപ്പവകാശം 2024 NXP പുനർവിതരണവും ഉറവിടത്തിലും ബൈനറി ഫോമുകളിലും, പരിഷ്‌ക്കരിച്ചോ അല്ലാതെയോ, ഇനിപ്പറയുന്ന വ്യവസ്ഥകൾ പാലിക്കുന്നുണ്ടെങ്കിൽ അനുവദനീയമാണ്

  1. സോഴ്‌സ് കോഡിൻ്റെ പുനർവിതരണങ്ങൾ മുകളിലെ പകർപ്പവകാശ അറിയിപ്പും ഈ വ്യവസ്ഥകളുടെ പട്ടികയും ഇനിപ്പറയുന്ന നിരാകരണവും നിലനിർത്തണം.
  2. ബൈനറി രൂപത്തിലുള്ള പുനർവിതരണങ്ങൾ മുകളിലെ പകർപ്പവകാശ അറിയിപ്പ് പുനർനിർമ്മിക്കേണ്ടതാണ്, ഈ വ്യവസ്ഥകളുടെ പട്ടികയും ഡോക്യുമെന്റേഷനിലെ ഇനിപ്പറയുന്ന നിരാകരണവും കൂടാതെ/അല്ലെങ്കിൽ മറ്റ് മെറ്റീരിയലുകളും വിതരണത്തോടൊപ്പം നൽകണം.
  3. നിർദ്ദിഷ്ട മുൻകൂർ രേഖാമൂലമുള്ള അനുമതിയില്ലാതെ ഈ സോഫ്‌റ്റ്‌വെയറിൽ നിന്ന് ഉരുത്തിരിഞ്ഞ ഉൽപ്പന്നങ്ങളെ അംഗീകരിക്കുന്നതിനോ പ്രോത്സാഹിപ്പിക്കുന്നതിനോ പകർപ്പവകാശ ഉടമയുടെ പേരോ സംഭാവന ചെയ്യുന്നവരുടെ പേരുകളോ ഉപയോഗിക്കരുത്.

ഈ സോഫ്‌റ്റ്‌വെയർ നൽകുന്നത് പകർപ്പവകാശ ഉടമകളും സംഭാവകരും "ആയിരിക്കുന്നതുപോലെ" കൂടാതെ ഏതെങ്കിലും പ്രകടമായ അല്ലെങ്കിൽ പ്രകടമായ വാറൻ്റികൾ ഉൾപ്പെടെ, എന്നാൽ പരിമിതപ്പെടുത്തിയിട്ടില്ലാത്ത, സൂചിപ്പിച്ചിട്ടുള്ളവ ഒരു പ്രത്യേക ആവശ്യത്തിനായി നിരാകരിക്കപ്പെടുന്നു. നേരിട്ടുള്ള, പരോക്ഷമായ, സാന്ദർഭികമായ, പ്രത്യേകമായ, മാതൃകാപരമായ, അല്ലെങ്കിൽ തത്ഫലമായുണ്ടാകുന്ന നാശനഷ്ടങ്ങൾക്ക് (നോട്ടിംഗ്, വായ്‌പനൽകൽ) ഒരു കാരണവശാലും പകർപ്പവകാശ ഉടമയോ സംഭാവന ചെയ്യുന്നവരോ ബാധ്യസ്ഥരായിരിക്കില്ല. ബദൽ സാധനങ്ങൾ അല്ലെങ്കിൽ സേവനങ്ങൾ നഷ്ടം, ഡാറ്റ, അല്ലെങ്കിൽ ലാഭം അല്ലെങ്കിൽ ബിസിനസ് തടസ്സം) എങ്ങനെയായാലും ബാധ്യതയുടെ ഏതെങ്കിലും സിദ്ധാന്തത്തിൽ, (കോൺട്രാക്റ്റിലായാലും, വ്യവസ്ഥയിലായാലും; അശ്രദ്ധയോ അല്ലാതെയോ) ഈ സോഫ്‌റ്റ്‌വെയറിൻ്റെ ഉപയോഗത്തിൽ നിന്ന് ഏതെങ്കിലും വിധത്തിൽ ഉണ്ടാകുന്നത്, അത്തരം നാശനഷ്ടങ്ങളുടെ സാധ്യതയെക്കുറിച്ച് ഉപദേശിച്ചാലും.

റിവിഷൻ ചരിത്രം

പട്ടിക 11. റിവിഷൻ ചരിത്രം 

ഡോക്യുമെൻ്റ് ഐഡി റിലീസ് തീയതി വിവരണം
AN14430 v.1.0 03 സെപ്റ്റംബർ 2024 • പ്രാരംഭ പതിപ്പ്

നിയമപരമായ വിവരങ്ങൾ

നിർവചനങ്ങൾ

ഡ്രാഫ്റ്റ് - ഒരു ഡോക്യുമെൻ്റിലെ ഡ്രാഫ്റ്റ് സ്റ്റാറ്റസ് സൂചിപ്പിക്കുന്നത് ഉള്ളടക്കം ഇപ്പോഴും ആന്തരിക പുനരവലോകനത്തിലാണ്view കൂടാതെ ഔപചാരികമായ അംഗീകാരത്തിന് വിധേയമാണ്, അത് പരിഷ്‌ക്കരണങ്ങൾക്കോ ​​കൂട്ടിച്ചേർക്കലുകൾക്കോ ​​കാരണമായേക്കാം. ഒരു ഡോക്യുമെൻ്റിൻ്റെ ഡ്രാഫ്റ്റ് പതിപ്പിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന വിവരങ്ങളുടെ കൃത്യതയോ പൂർണ്ണതയോ സംബന്ധിച്ച് NXP അർദ്ധചാലകങ്ങൾ ഏതെങ്കിലും പ്രതിനിധാനങ്ങളോ വാറൻ്റികളോ നൽകുന്നില്ല, മാത്രമല്ല അത്തരം വിവരങ്ങളുടെ ഉപയോഗത്തിൻ്റെ അനന്തരഫലങ്ങൾക്ക് യാതൊരു ബാധ്യതയുമില്ല.

നിരാകരണങ്ങൾ

പരിമിതമായ വാറന്റിയും ബാധ്യതയും - ഈ പ്രമാണത്തിലെ വിവരങ്ങൾ കൃത്യവും വിശ്വസനീയവുമാണെന്ന് വിശ്വസിക്കപ്പെടുന്നു. എന്നിരുന്നാലും, NXP അർദ്ധചാലകങ്ങൾ അത്തരം വിവരങ്ങളുടെ കൃത്യതയോ പൂർണ്ണതയോ സംബന്ധിച്ച് പ്രകടിപ്പിക്കുന്നതോ സൂചിപ്പിച്ചതോ ആയ ഏതെങ്കിലും പ്രാതിനിധ്യങ്ങളോ വാറന്റികളോ നൽകുന്നില്ല, മാത്രമല്ല അത്തരം വിവരങ്ങളുടെ ഉപയോഗത്തിന്റെ അനന്തരഫലങ്ങൾക്ക് ഒരു ബാധ്യതയുമില്ല. NXP അർദ്ധചാലകങ്ങൾക്ക് പുറത്തുള്ള ഒരു വിവര ഉറവിടം നൽകിയാൽ ഈ പ്രമാണത്തിലെ ഉള്ളടക്കത്തിന് NXP അർദ്ധചാലകങ്ങൾ ഒരു ഉത്തരവാദിത്തവും എടുക്കുന്നില്ല.

ഒരു സാഹചര്യത്തിലും NXP അർദ്ധചാലകങ്ങൾക്ക് പരോക്ഷമായ, ആകസ്മികമായ, ശിക്ഷാപരമായ, പ്രത്യേക അല്ലെങ്കിൽ അനന്തരഫലമായ നാശനഷ്ടങ്ങൾക്ക് (പരിമിതികളില്ലാതെ - നഷ്ടപ്പെട്ട ലാഭം, നഷ്ടപ്പെട്ട സമ്പാദ്യം, ബിസിനസ്സ് തടസ്സം, ഏതെങ്കിലും ഉൽപ്പന്നങ്ങൾ നീക്കം ചെയ്യുന്നതിനോ മാറ്റിസ്ഥാപിക്കുന്നതുമായി ബന്ധപ്പെട്ട ചിലവുകളോ പുനർനിർമ്മാണ നിരക്കുകളോ ഉൾപ്പെടെ) ബാധ്യസ്ഥരായിരിക്കില്ല. അല്ലെങ്കിൽ അത്തരം നാശനഷ്ടങ്ങൾ ടോർട്ട് (അശ്രദ്ധ ഉൾപ്പെടെ), വാറന്റി, കരാർ ലംഘനം അല്ലെങ്കിൽ മറ്റേതെങ്കിലും നിയമ സിദ്ധാന്തത്തെ അടിസ്ഥാനമാക്കിയുള്ളതല്ല.

ഏതെങ്കിലും കാരണത്താൽ ഉപഭോക്താവിന് എന്തെങ്കിലും നാശനഷ്ടങ്ങൾ ഉണ്ടായാലും, ഇവിടെ വിവരിച്ചിരിക്കുന്ന ഉൽപ്പന്നങ്ങൾക്ക് ഉപഭോക്താവിനോടുള്ള NXP അർദ്ധചാലകങ്ങളുടെ മൊത്തം ബാധ്യതയും NXP അർദ്ധചാലകങ്ങളുടെ വാണിജ്യ വിൽപ്പനയുടെ നിബന്ധനകളും വ്യവസ്ഥകളും അനുസരിച്ച് പരിമിതപ്പെടുത്തിയിരിക്കുന്നു.

മാറ്റങ്ങൾ വരുത്താനുള്ള അവകാശം — NXP അർദ്ധചാലകങ്ങൾ ഈ പ്രമാണത്തിൽ പ്രസിദ്ധീകരിച്ച വിവരങ്ങളിൽ പരിമിതികളില്ലാതെ, ഏത് സമയത്തും അറിയിപ്പ് കൂടാതെ ഉൽപ്പന്ന വിവരണങ്ങളും ഉൾപ്പെടെ മാറ്റങ്ങൾ വരുത്താനുള്ള അവകാശം നിക്ഷിപ്തമാണ്. ഇത് പ്രസിദ്ധീകരിക്കുന്നതിന് മുമ്പ് നൽകിയ എല്ലാ വിവരങ്ങളും ഈ പ്രമാണം അസാധുവാക്കുകയും മാറ്റിസ്ഥാപിക്കുകയും ചെയ്യുന്നു.

ഉപയോഗത്തിന് അനുയോജ്യത - NXP അർദ്ധചാലക ഉൽപ്പന്നങ്ങൾ ലൈഫ് സപ്പോർട്ട്, ലൈഫ്-ക്രിട്ടിക്കൽ അല്ലെങ്കിൽ സേഫ്റ്റി-ക്രിട്ടിക്കൽ സിസ്റ്റങ്ങൾ അല്ലെങ്കിൽ ഉപകരണങ്ങൾ, അല്ലെങ്കിൽ ഒരു NXP അർദ്ധചാലക ഉൽപ്പന്നത്തിന്റെ പരാജയം അല്ലെങ്കിൽ തകരാർ ന്യായമായും പ്രതീക്ഷിക്കാവുന്ന ആപ്ലിക്കേഷനുകൾ എന്നിവയിൽ ഉപയോഗിക്കുന്നതിന് അനുയോജ്യമാകാൻ രൂപകൽപ്പന ചെയ്തതോ അംഗീകരിക്കപ്പെട്ടതോ വാറന്റുള്ളതോ അല്ല. വ്യക്തിപരമായ പരിക്കുകൾ, മരണം അല്ലെങ്കിൽ ഗുരുതരമായ സ്വത്ത് അല്ലെങ്കിൽ പാരിസ്ഥിതിക നാശത്തിന് കാരണമാകുന്നു. NXP അർദ്ധചാലകങ്ങളും അതിന്റെ വിതരണക്കാരും NXP അർദ്ധചാലക ഉൽപ്പന്നങ്ങൾ അത്തരം ഉപകരണങ്ങളിലോ ആപ്ലിക്കേഷനുകളിലോ ഉൾപ്പെടുത്തുന്നതിനും കൂടാതെ/അല്ലെങ്കിൽ ഉപയോഗിക്കുന്നതിനും യാതൊരു ബാധ്യതയും സ്വീകരിക്കുന്നില്ല, അതിനാൽ അത്തരം ഉൾപ്പെടുത്തലും കൂടാതെ/അല്ലെങ്കിൽ ഉപയോഗവും ഉപഭോക്താവിന്റെ സ്വന്തം ഉത്തരവാദിത്തത്തിലാണ്.

ആപ്ലിക്കേഷനുകൾ - ഈ ഉൽപ്പന്നങ്ങളിൽ ഏതെങ്കിലുമൊന്നിന് ഇവിടെ വിവരിച്ചിരിക്കുന്ന ആപ്ലിക്കേഷനുകൾ ചിത്രീകരണ ആവശ്യങ്ങൾക്ക് മാത്രമുള്ളതാണ്. NXP അർദ്ധചാലകങ്ങൾ അത്തരം ആപ്ലിക്കേഷനുകൾ കൂടുതൽ പരിശോധനയോ പരിഷ്‌ക്കരണമോ കൂടാതെ നിർദ്ദിഷ്ട ഉപയോഗത്തിന് അനുയോജ്യമാകുമെന്ന് യാതൊരു പ്രാതിനിധ്യമോ വാറന്റിയോ നൽകുന്നില്ല.

NXP അർദ്ധചാലക ഉൽപ്പന്നങ്ങൾ ഉപയോഗിച്ച് അവരുടെ ആപ്ലിക്കേഷനുകളുടെയും ഉൽപ്പന്നങ്ങളുടെയും രൂപകൽപ്പനയ്ക്കും പ്രവർത്തനത്തിനും ഉപഭോക്താക്കൾ ഉത്തരവാദികളാണ്, കൂടാതെ ആപ്ലിക്കേഷനുകളുമായോ ഉപഭോക്തൃ ഉൽപ്പന്ന രൂപകൽപ്പനയുമായോ ഉള്ള ഒരു സഹായത്തിനും NXP അർദ്ധചാലകങ്ങൾ ഒരു ബാധ്യതയും സ്വീകരിക്കുന്നില്ല. NXP അർദ്ധചാലക ഉൽപ്പന്നം ഉപഭോക്താവിന്റെ ആസൂത്രണം ചെയ്ത ആപ്ലിക്കേഷനുകൾക്കും ഉൽപ്പന്നങ്ങൾക്കും അനുയോജ്യവും അനുയോജ്യവുമാണോ എന്ന് നിർണ്ണയിക്കുന്നത് ഉപഭോക്താവിന്റെ മാത്രം ഉത്തരവാദിത്തമാണ്, അതുപോലെ തന്നെ ഉപഭോക്താവിന്റെ മൂന്നാം കക്ഷി ഉപഭോക്താവിന്റെ(കളുടെ) ആസൂത്രിത ആപ്ലിക്കേഷനും ഉപയോഗവും. ഉപഭോക്താക്കൾ അവരുടെ ആപ്ലിക്കേഷനുകളുമായും ഉൽപ്പന്നങ്ങളുമായും ബന്ധപ്പെട്ട അപകടസാധ്യതകൾ കുറയ്ക്കുന്നതിന് ഉചിതമായ രൂപകൽപ്പനയും പ്രവർത്തന സുരക്ഷയും നൽകണം.

ഉപഭോക്താവിന്റെ ആപ്ലിക്കേഷനുകളിലോ ഉൽപ്പന്നങ്ങളിലോ ഉള്ള ഏതെങ്കിലും ബലഹീനത അല്ലെങ്കിൽ ഡിഫോൾട്ട് അല്ലെങ്കിൽ ഉപഭോക്താവിന്റെ മൂന്നാം കക്ഷി ഉപഭോക്താവിന്റെ (കൾ) ആപ്ലിക്കേഷനോ ഉപയോഗമോ അടിസ്ഥാനമാക്കിയുള്ള ഏതെങ്കിലും ഡിഫോൾട്ട്, കേടുപാടുകൾ, ചെലവുകൾ അല്ലെങ്കിൽ പ്രശ്നം എന്നിവയുമായി ബന്ധപ്പെട്ട ഒരു ബാധ്യതയും NXP അർദ്ധചാലകങ്ങൾ സ്വീകരിക്കുന്നില്ല. ഉപഭോക്താവിന്റെ ആപ്ലിക്കേഷനുകളുടെയും ഉൽപ്പന്നങ്ങളുടെയും അല്ലെങ്കിൽ ഉപഭോക്താവിന്റെ മൂന്നാം കക്ഷി ഉപഭോക്താവിന്റെ(കൾ) ആപ്ലിക്കേഷന്റെയോ ഉപയോഗത്തിന്റെയോ ഡിഫോൾട്ട് ഒഴിവാക്കാൻ NXP അർദ്ധചാലക ഉൽപ്പന്നങ്ങൾ ഉപയോഗിച്ച് ഉപഭോക്താവിന്റെ ആപ്ലിക്കേഷനുകൾക്കും ഉൽപ്പന്നങ്ങൾക്കും ആവശ്യമായ എല്ലാ പരിശോധനകളും നടത്തുന്നതിന് ഉത്തരവാദിത്തമുണ്ട്. NXP ഇക്കാര്യത്തിൽ ഒരു ബാധ്യതയും സ്വീകരിക്കുന്നില്ല.

വാണിജ്യ വിൽപ്പനയുടെ നിബന്ധനകളും വ്യവസ്ഥകളും — https://www.nxp.com/pro എന്നതിൽ പ്രസിദ്ധീകരിച്ച വാണിജ്യ വിൽപനയുടെ പൊതു നിബന്ധനകൾക്കും വ്യവസ്ഥകൾക്കും വിധേയമായി NXP സെമികണ്ടക്ടർ ഉൽപ്പന്നങ്ങൾ വിൽക്കുന്നുfile/ നിബന്ധനകൾ, സാധുവായ രേഖാമൂലമുള്ള വ്യക്തിഗത ഉടമ്പടിയിൽ അംഗീകരിക്കപ്പെട്ടിട്ടില്ലെങ്കിൽ. ഒരു വ്യക്തിഗത കരാർ അവസാനിച്ചാൽ, ബന്ധപ്പെട്ട കരാറിന്റെ നിബന്ധനകളും വ്യവസ്ഥകളും മാത്രമേ ബാധകമാകൂ. ഉപഭോക്താവ് NXP അർദ്ധചാലക ഉൽപ്പന്നങ്ങൾ വാങ്ങുന്നതുമായി ബന്ധപ്പെട്ട് ഉപഭോക്താവിന്റെ പൊതുവായ നിബന്ധനകളും വ്യവസ്ഥകളും പ്രയോഗിക്കുന്നതിന് NXP അർദ്ധചാലകങ്ങൾ ഇതിനാൽ വ്യക്തമായി എതിർക്കുന്നു.

കയറ്റുമതി നിയന്ത്രണം - ഈ ഡോക്യുമെന്റും ഇവിടെ വിവരിച്ചിരിക്കുന്ന ഇനങ്ങളും (ഇനങ്ങളും) കയറ്റുമതി നിയന്ത്രണ നിയന്ത്രണങ്ങൾക്ക് വിധേയമായിരിക്കാം. കയറ്റുമതിക്ക് യോഗ്യതയുള്ള അധികാരികളുടെ മുൻകൂർ അനുമതി ആവശ്യമായി വന്നേക്കാം.

നോൺ-ഓട്ടോമോട്ടീവ് യോഗ്യതയുള്ള ഉൽപ്പന്നങ്ങളിൽ ഉപയോഗിക്കുന്നതിനുള്ള അനുയോജ്യത - ഈ നിർദ്ദിഷ്ട NXP സെമികണ്ടക്ടർ ഉൽപ്പന്നം ഓട്ടോമോട്ടീവ് യോഗ്യതയുള്ളതാണെന്ന് ഈ പ്രമാണം വ്യക്തമായി പ്രസ്താവിക്കുന്നില്ലെങ്കിൽ, ഉൽപ്പന്നം വാഹന ഉപയോഗത്തിന് അനുയോജ്യമല്ല. ഇത് ഓട്ടോമോട്ടീവ് ടെസ്റ്റിംഗ് അല്ലെങ്കിൽ ആപ്ലിക്കേഷൻ ആവശ്യകതകൾക്ക് അനുസൃതമായി യോഗ്യതയുള്ളതോ പരീക്ഷിച്ചതോ അല്ല. NXP അർദ്ധചാലകങ്ങൾ ഓട്ടോമോട്ടീവ് ഉപകരണങ്ങളിലോ ആപ്ലിക്കേഷനുകളിലോ ഓട്ടോമോട്ടീവ് അല്ലാത്ത യോഗ്യതയുള്ള ഉൽപ്പന്നങ്ങൾ ഉൾപ്പെടുത്തുന്നതിനും കൂടാതെ/അല്ലെങ്കിൽ ഉപയോഗിക്കുന്നതിനും ഒരു ബാധ്യതയും സ്വീകരിക്കുന്നില്ല.

ഓട്ടോമോട്ടീവ് സ്‌പെസിഫിക്കേഷനുകൾക്കും സ്റ്റാൻഡേർഡുകൾക്കും വേണ്ടി ഓട്ടോമോട്ടീവ് ആപ്ലിക്കേഷനുകളിൽ ഡിസൈൻ-ഇൻ ഉപയോഗിക്കാനും ഉപയോഗിക്കാനും ഉപഭോക്താവ് ഉൽപ്പന്നം ഉപയോഗിക്കുന്ന സാഹചര്യത്തിൽ, ഉപഭോക്താവ് (എ) അത്തരം ഓട്ടോമോട്ടീവ് ആപ്ലിക്കേഷനുകൾക്കും ഉപയോഗത്തിനും സ്പെസിഫിക്കേഷനുകൾക്കുമായി ഉൽപ്പന്നത്തിൻ്റെ NXP അർദ്ധചാലകങ്ങളുടെ വാറൻ്റി ഇല്ലാതെ ഉൽപ്പന്നം ഉപയോഗിക്കും, കൂടാതെ ( b) NXP അർദ്ധചാലകങ്ങളുടെ സ്പെസിഫിക്കേഷനുകൾക്കപ്പുറമുള്ള ഓട്ടോമോട്ടീവ് ആപ്ലിക്കേഷനുകൾക്കായി ഉപഭോക്താവ് ഉൽപ്പന്നം ഉപയോഗിക്കുമ്പോഴെല്ലാം അത്തരം ഉപയോഗം ഉപഭോക്താവിൻ്റെ സ്വന്തം ഉത്തരവാദിത്തത്തിൽ മാത്രമായിരിക്കും, കൂടാതെ (c) ഉപഭോക്താവ് ഉപഭോക്താവിൻ്റെ രൂപകല്പനയും ഉപയോഗവും മൂലമുണ്ടാകുന്ന ഏതെങ്കിലും ബാധ്യതയ്ക്കും കേടുപാടുകൾക്കും പരാജയപ്പെട്ട ഉൽപ്പന്ന ക്ലെയിമുകൾക്കും NXP അർദ്ധചാലകങ്ങൾക്ക് പൂർണ്ണമായും നഷ്ടപരിഹാരം നൽകുന്നു. NXP അർദ്ധചാലകങ്ങളുടെ സ്റ്റാൻഡേർഡ് വാറൻ്റിക്കും NXP അർദ്ധചാലകങ്ങളുടെ ഉൽപ്പന്ന സവിശേഷതകൾക്കും അപ്പുറത്തുള്ള ഓട്ടോമോട്ടീവ് ആപ്ലിക്കേഷനുകൾക്കുള്ള ഉൽപ്പന്നം

HTML പ്രസിദ്ധീകരണങ്ങൾ — ഈ പ്രമാണത്തിൻ്റെ ഒരു HTML പതിപ്പ്, ലഭ്യമാണെങ്കിൽ, ഒരു കടപ്പാട് എന്ന നിലയിൽ നൽകിയിരിക്കുന്നു. കൃത്യമായ വിവരങ്ങൾ PDF ഫോർമാറ്റിലുള്ള ബാധകമായ ഡോക്യുമെൻ്റിൽ അടങ്ങിയിരിക്കുന്നു. HTML പ്രമാണവും PDF പ്രമാണവും തമ്മിൽ പൊരുത്തക്കേടുണ്ടെങ്കിൽ, PDF പ്രമാണത്തിന് മുൻഗണനയുണ്ട്.

വിവർത്തനങ്ങൾ - ഒരു പ്രമാണത്തിന്റെ ഇംഗ്ലീഷ് ഇതര (വിവർത്തനം ചെയ്ത) പതിപ്പ്, ആ പ്രമാണത്തിലെ നിയമപരമായ വിവരങ്ങൾ ഉൾപ്പെടെ, റഫറൻസിനായി മാത്രം. വിവർത്തനം ചെയ്തതും ഇംഗ്ലീഷിലുള്ളതുമായ പതിപ്പുകൾ തമ്മിൽ എന്തെങ്കിലും പൊരുത്തക്കേട് ഉണ്ടായാൽ ഇംഗ്ലീഷ് പതിപ്പ് നിലനിൽക്കും.

സുരക്ഷ - എല്ലാ NXP ഉൽപ്പന്നങ്ങളും തിരിച്ചറിയപ്പെടാത്ത കേടുപാടുകൾക്ക് വിധേയമാകാം അല്ലെങ്കിൽ അറിയപ്പെടുന്ന പരിമിതികളുള്ള സ്ഥാപിത സുരക്ഷാ മാനദണ്ഡങ്ങൾ അല്ലെങ്കിൽ സ്പെസിഫിക്കേഷനുകളെ പിന്തുണയ്ക്കാം എന്ന് ഉപഭോക്താവ് മനസ്സിലാക്കുന്നു. ഉപഭോക്താവിന്റെ ആപ്ലിക്കേഷനുകളിലും ഉൽപ്പന്നങ്ങളിലും ഈ കേടുപാടുകൾ കുറയ്ക്കുന്നതിന് അവരുടെ ജീവിതചക്രത്തിൽ ഉടനീളം അതിന്റെ ആപ്ലിക്കേഷനുകളുടെയും ഉൽപ്പന്നങ്ങളുടെയും രൂപകൽപ്പനയ്ക്കും പ്രവർത്തനത്തിനും ഉത്തരവാദിത്തമുണ്ട്. ഉപഭോക്താവിന്റെ ആപ്ലിക്കേഷനുകളിൽ ഉപയോഗിക്കുന്നതിന് NXP ഉൽപ്പന്നങ്ങൾ പിന്തുണയ്ക്കുന്ന മറ്റ് തുറന്ന കൂടാതെ/അല്ലെങ്കിൽ ഉടമസ്ഥതയിലുള്ള സാങ്കേതികവിദ്യകളിലേക്കും ഉപഭോക്താവിന്റെ ഉത്തരവാദിത്തം വ്യാപിക്കുന്നു. ഏതെങ്കിലും അപകടസാധ്യതയ്ക്ക് NXP ഒരു ബാധ്യതയും സ്വീകരിക്കുന്നില്ല. ഉപഭോക്താവ് NXP-യിൽ നിന്നുള്ള സുരക്ഷാ അപ്‌ഡേറ്റുകൾ പതിവായി പരിശോധിക്കുകയും ഉചിതമായി ഫോളോ അപ്പ് ചെയ്യുകയും വേണം. ഉപഭോക്താവ് ഉദ്ദേശിച്ച ആപ്ലിക്കേഷന്റെ നിയമങ്ങളും നിയന്ത്രണങ്ങളും മാനദണ്ഡങ്ങളും ഏറ്റവും മികച്ച രീതിയിൽ പാലിക്കുന്ന സുരക്ഷാ സവിശേഷതകളുള്ള ഉൽപ്പന്നങ്ങൾ തിരഞ്ഞെടുക്കുകയും അതിന്റെ ഉൽപ്പന്നങ്ങളെ സംബന്ധിച്ച അന്തിമ ഡിസൈൻ തീരുമാനങ്ങൾ എടുക്കുകയും അതിന്റെ ഉൽപ്പന്നങ്ങളെ സംബന്ധിച്ച എല്ലാ നിയമപരവും നിയന്ത്രണപരവും സുരക്ഷയുമായി ബന്ധപ്പെട്ടതുമായ ആവശ്യകതകൾ പാലിക്കുന്നതിനുള്ള ഉത്തരവാദിത്തം മാത്രമാണ്. NXP നൽകിയേക്കാവുന്ന ഏതെങ്കിലും വിവരങ്ങൾ അല്ലെങ്കിൽ പിന്തുണ.

NXP ഉൽപ്പന്നങ്ങളുടെ സുരക്ഷാ വീഴ്ചകളുടെ അന്വേഷണം, റിപ്പോർട്ടിംഗ്, പരിഹാരം റിലീസ് എന്നിവ നിയന്ത്രിക്കുന്ന ഒരു ഉൽപ്പന്ന സുരക്ഷാ സംഭവ പ്രതികരണ ടീം (PSIRT) (PSIRT@nxp.com എന്നതിൽ എത്തിച്ചേരാനാകും).

NXP B.V. — NXP B.V. ഒരു ഓപ്പറേറ്റിംഗ് കമ്പനിയല്ല, അത് ഉൽപ്പന്നങ്ങൾ വിതരണം ചെയ്യുകയോ വിൽക്കുകയോ ചെയ്യുന്നില്ല.

ലൈസൻസുകൾ

NFC സാങ്കേതികവിദ്യയുള്ള NXP IC-കൾ വാങ്ങൽ — ISO/IEC 18092, ISO/IEC 21481 എന്നീ നിയർ ഫീൽഡ് കമ്മ്യൂണിക്കേഷൻ (NFC) മാനദണ്ഡങ്ങളിൽ ഒന്ന് പാലിക്കുന്ന NXP അർദ്ധചാലക IC വാങ്ങൽ, ഏതെങ്കിലും പേറ്റന്റ് അവകാശ ലംഘനത്തിന് കീഴിൽ ഒരു പരോക്ഷമായ ലൈസൻസ് നൽകുന്നില്ല. ആ മാനദണ്ഡങ്ങളിൽ ഏതെങ്കിലും. NXP അർദ്ധചാലകങ്ങളുടെ വാങ്ങൽ IC-യിൽ ഏതെങ്കിലും NXP പേറ്റന്റിനുള്ള (അല്ലെങ്കിൽ മറ്റ് IP അവകാശം) ലൈസൻസ് ഉൾപ്പെടുന്നില്ല, ആ ഉൽപ്പന്നങ്ങളുടെ ഹാർഡ്‌വെയറോ സോഫ്‌റ്റ്‌വെയറോ ആകട്ടെ, ആ ഉൽപ്പന്നങ്ങളുടെ കോമ്പിനേഷനുകൾ ഉൾക്കൊള്ളുന്നു.

വ്യാപാരമുദ്രകൾ

അറിയിപ്പ്: എല്ലാ റഫറൻസ് ബ്രാൻഡുകളും ഉൽപ്പന്ന നാമങ്ങളും സേവന നാമങ്ങളും വ്യാപാരമുദ്രകളും അവയുടെ ഉടമസ്ഥരുടെ സ്വത്താണ്. NXP — വേഡ്‌മാർക്കും ലോഗോയും NXP BV I2C-ബസിൻ്റെ വ്യാപാരമുദ്രകളാണ് — ലോഗോ NXP BV യുടെ വ്യാപാരമുദ്രയാണ്

ഈ ഡോക്യുമെൻ്റിനെയും ഇവിടെ വിവരിച്ചിരിക്കുന്ന ഉൽപ്പന്നങ്ങളെയും കുറിച്ചുള്ള പ്രധാന അറിയിപ്പുകൾ 'നിയമപരമായ വിവരങ്ങൾ' എന്ന വിഭാഗത്തിൽ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്.

© 2024 NXP BV എല്ലാ അവകാശങ്ങളും നിക്ഷിപ്തം.
കൂടുതൽ വിവരങ്ങൾക്ക്, ദയവായി സന്ദർശിക്കുക: https://www.nxp.com

 

പ്രമാണങ്ങൾ / വിഭവങ്ങൾ

NXP PN7160 NCI അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളറുകൾ [pdf] നിർദ്ദേശങ്ങൾ
PN7160, PN7220, PN7160 NCI അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളറുകൾ, PN7160, NCI അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളറുകൾ, അടിസ്ഥാനമാക്കിയുള്ള NFC കൺട്രോളറുകൾ, NFC കൺട്രോളറുകൾ, കൺട്രോളറുകൾ

റഫറൻസുകൾ

ഒരു അഭിപ്രായം ഇടൂ

നിങ്ങളുടെ ഇമെയിൽ വിലാസം പ്രസിദ്ധീകരിക്കില്ല. ആവശ്യമായ ഫീൽഡുകൾ അടയാളപ്പെടുത്തി *