NXP - logo

AN13971
PN7220 – Průvodce portováním pro Android
Rev. 1.0 – 18. září 2023
Poznámka k aplikaci

Řadič NFC kompatibilní s PN7220

Informace o dokumentu

Informace Obsah
Klíčová slova PN7220, NCI, EMVCo, NFC Forum, Android, NFC
Abstraktní Tento dokument popisuje, jak portovat vydání middlewaru PN7220 na Android.

Polovodiče NXP

Historie revizí
Historie revizí

Rev Datum Popis
v.1.0 20230818 Počáteční verze

Zavedení

Tento dokument poskytuje pokyny pro integraci řadiče NFC založeného na PN7220 NXP NCI do platformy Android z hlediska softwaru.
Nejprve vysvětluje, jak nainstalovat požadovaný ovladač jádra, a poté popisuje krok za krokem, jak přizpůsobit zdroje AOSP tak, aby byla přidána podpora pro řadič PN7220 NFC. Obrázek 1 ukazuje architekturu celého zásobníku Android NFC.

Ovladač NFC kompatibilní s NXP PN7220 – Úvod 1

Obrázek 1. Zásobník Android NFC

PN7220 je rozdělen do scénářů s jedním hostitelem a dvěma hostiteli. Obecně platí, že zásobník je stejný pro dual host, přidáme SMCU.

  • Ovladač NXP I2C je modul jádra, který poskytuje přístup k hardwarovým prostředkům PN7220.
  • Modul HAL je implementací specifické HW abstraktní vrstvy řadiče NXP NFC.
  • LibNfc-nci je nativní knihovna, která poskytuje funkce NFC.
  • NFC JNI je spojovací kód mezi třídami Java a Native.
  • NFC a EMVCo Framework je modul aplikačního rámce, který poskytuje přístup k funkcím NFC a EMVCo.

Ovladač jádra

Zásobník NFC Android používá ke komunikaci s PN7220 ovladač jádra nxpnfc. Je k dispozici zde.

2.1 Podrobnosti o ovladači
Ovladač jádra nxpnfc nabízí komunikaci s PN7220 přes fyzické rozhraní I2C.
Po nahrání do jádra tento ovladač zpřístupní rozhraní PN7220 prostřednictvím uzlu zařízení s názvem /dev/nxpnfc.

2.2 Získání zdrojového kódu
Naklonujte úložiště ovladačů PN7220 do adresáře jádra, čímž nahradíte stávající implementaci:
$rm -rf ovladače/nfc
$git klon “https://github.com/NXPNFCLinux/nxpnfc.git“-b PN7220-ovladače ovladače/

To skončí tím, že složka drivers/nfc obsahuje následující files:

  • README.md: informace o úložišti
  • Make file: značka záhlaví řidiče file
  • Kcon obr: konfigurace ovladače file
  • Licence: Podmínky řidičského oprávnění
  • nfc podsložka obsahující:
    – kom. c: implementace obecného ovladače
    - běžný. h: obecná definice rozhraní ovladače
    – i2c_drv.c: Implementace specifického ovladače i2c
    – i2c_drv.h: definice rozhraní ovladače specifické pro i2c
    – Udělatfile: udělatfile která je součástí provedenífile řidiče
    – Kbuild => sestavení file
    – Kconfig => konfigurace ovladače file

2.3 Sestavení ovladače
Zahrnutí ovladače do jádra a jeho načtení během bootování zařízení se děje díky stromu zařízení.
Po aktualizaci definice stromu zařízení je nutné znovu sestavit strom zařízení související s platformou. NXP doporučuje používat jádro verze 5.10, protože v této verzi je provedena kompletní validace.

  1. Stáhněte si jádro
  2. Získejte zdrojový kód ovladače.
  3. Změňte definici stromu zařízení (specifickou pro zařízení, které používáme).
  4. Sestavte ovladač.
    A. Pomocí procedury menuconfig zahrňte cílový ovladač do sestavení.

Po přebudování kompletního jádra bude ovladač zahrnut do obrazu jádra. Musíme zajistit, aby všechny nové obrazy jádra byly zkopírovány do sestavení AOSP.

Adaptace AOSP

NXP poskytuje záplaty nad kódem AOSP. To znamená, že uživatel může nejprve získat kód AOSP a aplikovat záplaty z NXP. Tato část popisuje, jak toho dosáhnout. Aktuální AOSP tag který používáme, je [1].

3.1 sestavení AOSP

  1. Musíme získat zdrojový kód AOSP. To můžeme udělat s:
    $ repo init -u https://android.googlesource.com/platform/manifest-b android-13.0.0_r3
    $ repo synchronizace
    Poznámka: Nástroj repo musí být nainstalován v systému. Postupujte podle pokynů [2].
  2. Když máme zdrojový kód, můžeme vstoupit do adresáře a sestavit jej:
    $cd Android_AROOT
    $source build/envsetup.sh
    $lunch select_target #target je DH, kterou chceme použít napřampsoubor: db845c-userdebug $make -j
  3. Když je AOSP úspěšně sestaven, musíme získat záplaty NXP. To můžeme udělat s:
    $git klon “https://github.com/NXPNFCLinux/PN7220_Android13.git”vendor/nxp/
  4. V tuto chvíli jsme všichni potřebovali použít záplaty pro podporu PN7220. Opravy můžeme aplikovat spuštěním skriptu install_NFC.sh.
    $chmod +x /vendor/nxp/nfc/install_NFC.sh #někdy potřebujeme ke skriptu přidat spustitelná práva
    $./vendor/nxp/nfc/install_NFC.sh
    Poznámka: Zkontrolujte výstup po spuštění install_NFC.sh. V případě potřeby musíme provést některé změny ručně.
  5. Můžeme také přidat binární soubory FW:
    $git klon xxxxxxx
    $cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/64-bit/libpn72xx_fw.so AROOT/vendor/nxp/pn7220/firmware/lib64/libpn72xx_fw.so
    $cp -r nfc-NXPNFCC_FW/InfraFW/pn7220/32-bit/libpn72xx_fw.so AROOT/vendor/nxp/pn7220/firmware/lib/libpn72xx_fw.so
  6. Přidání NFC k sestavení
    V zařízení.mk makefile (napřample, device/brand/platform/device.mk), zahrnují konkrétní značkufiles:
    $(call inherit-product, vendor/nxp/nfc/device-nfc.mk)
    V souboru BoardConfig.mkfile (napřample, device/brand/platform/BoardConfig.mk), obsahovat konkrétní značkufile:
    -zahrnout vendor/nxp/nfc/BoardConfigNfc.mk
  7. Přidání aplikace DTA
    $git klon https://github.com/NXPNFCProject/NXPAndroidDTA.git $git checkout NFC_DTA_v13.02_OpnSrc $patch -p1 AROOT_system_nfc-dta.patch
    $ cp -r nfc-dta /system/nfc-dta
    $ /system/nfc-dta/$ mm -j
  8. Nyní můžeme znovu sestavit AOSP se všemi změnami, které jsme provedli:
    $cd framework/base
    $ mm
    $cd ../..
    $cd vendor/nxp/frameworks
    $mm #po tomto bychom měli vidět com.nxp.emvco.jar naruby/target/product/xxxx/system/framwework/
    $cd ../../..
    $cd hardware/nxp/nfc
    $ mm
    $cd ../../..
    $make -j
    Nyní jsme schopni flashovat hostitele zařízení s obrázkem Androidu, který obsahuje funkce NFC.

3.2 Aplikace Android NFC a Lib na cíle
V této podsekci popíšeme, kde byly konkrétně sestaveny files jsou tlačeny. Pokud dojde k nějaké změně, můžeme nahradit pouze tuto file. Tabulka 1 ukazuje všechna umístění.
Tabulka 1. Sestaveno files s cílem zařízení

Umístění projektu Sestaveno Files Umístění v cílovém zařízení
„$ANDROID_ROOT“/packages/apps/Nfc lib/NfcNci.apk
oat/libnfc_nci_jni.so
/system/app/NfcNci/
/system/lib64/
„$ANDROID_ROOT“/system/nfc libnfc_nci.so /system/lib64/
„$ANDROID_ROOT“/hardware/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
/vendor/lib64
/vendor/bin/hw/
/vendor/etc/init
system/lib64/
system/lib64/
system/lib64/
„$ANDROID_ROOT“/hardware/nxp/nfc vendor.nxp.nxpnfc@2.0.so /system/lib64
„$ANDROID_ROOT“/vendor/nxp/frameworks com.nxp.emvco.jar /system/framework
/vendor/framework
„$ANDROID_ROOT“/hardware/nxp/emvco emvco_poller.so
android.hardware.emvco-service
android.hardware.emvco-service.rc
android.hardware.emvco-V1-ndk.so
android.hardware.emvco-V2-ndk.so
/vendor/lib64
/vendor/bin/hw/
/vendor/etc/init
system/lib64/
system/lib64/

3.3 Mapování záplat

Každá náplast musí být aplikována na určité místo. Tabulka 2 ukazuje název opravy a místo, kde ji musíme použít, a název bloku, který nám ukazuje, kde se nachází zásobník NFC (obrázek 1).
Tabulka 2. Umístění opravy v zásobníku NFC

Název bloku Název patche Místo pro aplikaci
NFC HAL a EMVCo HAL AROOT_hardware_interfaces.patch hardware/rozhraní/
Zásobník NFC AROOT_hardware_nxp_nfc.patch hardware/nxp/nfc/
Vrstva výměny dat EMVCo L1 = zásobník EMVCo AROOT_hardware_nxp_emvco.patch hardware/nxp/emvco/
LibNfc-Nci AROOT_system_nfc.patch systém/nfc/
NFC JNI AROOT_packages_apps_Nfc.patch packages/apps/nfc/
Služba NFC AROOT_packages_apps_Nfc.patch packages/apps/nfc/
NFC Framework AROOT_frameworks_base.patch frameworks/base/
Rámec EMVCo AROOT_vendor_nxp_frameworks.patch vendor/nxp/frameworks/

3.4 Blikající obrázky
Obrázky naleznete v /out/target/product/{selected_DH}. Pro flashování obrazů systému musíme spustit následující příkazy (testováno na Dragonboard 845c).
$ adb restartujte bootloader
$ fastboot flash boot boot_uefi.img
$ fastboot flash vendor_boot vendor_boot.img
$ fastboot flash super super.img
$ fastboot flash userdata userdata.img
$ formát rychlého spouštění: metadata ext4 $ restart rychlého spouštění

Po flashování obrázků musíme provést nějaké vyčištění MW spuštěním následujících příkazů (testováno na Dragonboard 845c).

$ adb čekání na zařízení
$ kořen adb
$ adb čekání na zařízení
$ adb remount
$ adb shell rm -rf vendor/etc/init/android.hardware.nfc@1.1-service.rc
$ adb shell rm -rf vendor/etc/init/android.hardware.nfc@1.2-service.rc
$ adb push Test_APK/EMVCoAidlHalComplianceTest/EMVCoAidlHalComplianceTestsystem/atd
$ adb shell chmod 0777 /system/etc/EMVCoAidlHalComplianceTest
$ adb push Test_APK/EMVCoAidlHalDesfireTest/EMVCoAidlHalDesfireTest system/atd
$ adb shell chmod 0777 /system/etc/EMVCoAidlHalDesfireTest
$ adb push Test_APK/EMVCoModeSwitchApp/EMVCoModeSwitchApp.apk system/app/EMVCoModeSwitchApp/EMVCoModeSwitchApp.apk
$ synchronizace prostředí adb
$ adb restart
$ adb čekání na zařízení

3.5 Konfigurace files
V PN7220 máme čtyři různé konfigurace files.

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

Poznámka: Věnujte pozornost konfiguraci fileje uvedeno v exampTýká se demo desky řadiče NFC. Tyto files musí být přijata podle cílené integrace.
Všechny čtyři files musí být posunut na konkrétní místo.

Tabulka 3. Umístění konfigurace files

Název konfigurace file Umístění v zařízení
libemvco-nxp.conf prodejce/atd
libnfc-nci.conf prodejce/atd
libnfc-nxp.conf systém / atd
libnfc-nxp-eeprom.conf prodejce/atd

libnfc-nxp-eeprom.conf

Tabulka 4. Vysvětlení libnfc-nxp-eeprom.conf

Jméno Vysvětlení Výchozí hodnota
NXP_SYS_CLK_
SRC_SEL
Konfigurace výběru zdroje systémových hodin 0x01
NXP_SYS_CLK_
FREQ_SEL
Konfigurace výběru frekvence systémových hodin 0x08
NXP_ENABLE_
DISABLE_STANBY
Možnost zapnutí nebo vypnutí pohotovostního režimu 0x00
NXP_ENABLE_
DISABLE_LPCD
Možnost povolení nebo zakázání LPCD. 0x00

Poznámka: Pokud nejsou nakonfigurovány žádné hodiny, ať už PLL nebo Xtal, pak se zásobník MW opakuje ve smyčce, aby získal hodiny a úspěšně se inicializoval. libnfc-nci.conf

Tabulka 5. Vysvětlení libnfc-nci.conf

Jméno Vysvětlení Výchozí hodnota
APPL_TRACE_LEVEL Log úrovně pro libnfc-nci 0xFF
PROTOCOL_TRACE_LEVEL Log úrovně pro libnfc-nci 0xFFFFFFFF
NFC_DEBUG_ENABLED Nastavení povolení ladění NFC 0x01
NFA_STORAGE Nastavte cílový adresář pro NFC file skladování /data/vendor/nfc
HOST_LISTEN_TECH_MASK Konfigurace funkce naslouchání hostiteli 0x07
NCI_HAL_MODULE Název modulu NCI HAL nfc_nci.pn54x
POLLING_TECH_MASK Konfigurace technologií hlasování 0x0F

Tabulka 5. Vysvětlení libnfc-nci.conf…pokračování

Jméno Vysvětlení Výchozí hodnota
P2P_LISTEN_TECH_MASK P2P není podporováno v PN7220 0xC5
PRESERVE_STORAGE Ověřte obsah všech energeticky nezávislých obchodů. 0x01
AID_MATCHING_MODE Poskytuje různé způsoby, jak porovnat AID 0x03
NFA_MAX_EE_SUPPORTED Maximální podporované číslo EE 0x01
OFFHOST_AID_ROUTE_PWR_STATE Nastavte stav podpory OffHost AID 0x3B

libnfc-nxp.conf

Tabulka 6. Vysvětlení libnfc-nxp.conf

Jméno Vysvětlení Výchozí hodnota
NXPLOG_EXTNS_LOGLEVEL Konfigurace úrovně protokolování extns 0x03
NXPLOG_NCIHAL_LOGLEVEL Konfigurace pro povolení protokolování HAL 0x03
NXPLOG_NCIX_LOGLEVEL Konfigurace pro povolení protokolování paketů NCI TX 0x03
NXPLOG_NCIR_LOGLEVEL Konfigurace pro povolení protokolování paketů NCI RX 0x03
NXPLOG_FWDNLD_LOGLEVEL Konfigurace pro povolení logování funkčnosti stahování FW 0x03
NXPLOG_TML_LOGLEVEL Konfigurace pro povolení protokolování TM 0x03
NXP_NFC_DEV_NODE Název uzlu zařízení NFC idev/rixpnfc”
MIFARE_READER_ENABLE Rozšíření pro čtečku NFC pro povolení MIFARE Ox01
NXP_FW_TYPE Firmware file typ Ox01
NXP_I2C_FRAGMENTATION_ ENABLED Nakonfigurujte fragmentaci 12C 0x00
NFA_PROPRIETARY_CFG Nastavte vlastní konfiguraci dodavatele {05, FF, FF, 06, 81, 80, 70, FF, FF}
NXP_EXT_TVDD_CFG Nastavte režim konfigurace TVDD 0x02
NXP_EXT TVDD_CFG_1 Nakonfigurujte nastavení TVDD podle zvoleného režimu TVDD Zkontrolujte konfiguraci file
NXP_EXT_TVDD_CFG_2 Nakonfigurujte nastavení TVDD podle zvoleného režimu TVDD Zkontrolujte konfiguraci file
NXP_CORE_CONF Nakonfigurujte standardizované části ovladače NFC { 20, 02, 07, 02, 21, 01, 01, 18, 01, 02 }
NXP_CORE_CONF_EXTN Nakonfigurujte proprietární části ovladače NFC {00, 00, 00, 00}
NXP_SET_CONFIG_ALWAYS Vždy posílat CORE_CONF a CORE_CONF_EXTN (nedoporučuje se to povolovat.) Ox00
NXP_RF_CONF_BLK_1 RF nastavení Zkontrolujte konfiguraci file
ISO_DEP_MAX_TRANSCEIVE Definujte maximální ISO-DEP prodlouženou délku APDU OxFEFF
PRESENCE_CHECK_ALGORITHM Nastavte algoritmus použitý pro proceduru kontroly přítomnosti T4T 2
NXP_FLASH_CONFIG Blikající konfigurace možností 0x02

libemvco-nxp.conf

Tabulka 7. Vysvětlení libemvco-nxp.conf

Jméno Vysvětlení Výchozí hodnota
NXP LOG EXTNS LOGLEVEL Konfigurace úrovně protokolování extns 0x03
NXP LOG NCIHAL LOGLEVEL Konfigurace pro povolení protokolování HAL 0x03
NXP LOG NCIX LOGLEVEL Konfigurace pro povolení protokolování paketů NCI TX 0x03
NXP LOG NCIR LOGLEVEL Konfigurace pro povolení protokolování paketů NCI RX 0x03
NXP LOG TML LOGLEVEL Konfigurace pro povolení protokolování TML 0x03
NXP_EMVCO_DEBUG_ENABLED Povolit ladění 0x03
NXP EMVCO DEV UZEL Název uzlu zařízení EMVCo "/dev/nxpnfc"
NASTAVENÍ NXP PCD Konfigurace pro nastavení zpoždění dotazování mezi 2 fázemi (20, 02, 07, 01, A0, 64, 03, EC, 13, 06)
NXP SET KONFIG Možnost nastavení příkazu config pro účely ladění Zkontrolujte konfiguraci file
NXP ZÍSKEJTE KONFIG Možnost získat příkaz config pro účely ladění Zkontrolujte konfiguraci file

3.6 APLIKACE DTA
K povolení certifikačního testování NFC Forum je k dispozici aplikace pro testování zařízení. Skládá se z několika komponent v různých vrstvách Androidu, které musí být vytvořeny a zahrnuty do obrazu Android.
Chcete-li aplikaci DTA odeslat, musíme provést následující kroky:

  1. Zkopírujte všechny DTA files na jedno místo
    $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. Zatlačte binární soubory do zařízení, jak je uvedeno níže
    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/

Po flashnutí cíle by pak měla být aplikace DTA přítomna v seznamu nainstalovaných aplikací. Podívejte se na UG pro podrobný popis, jak aplikaci používat.

Portování i.MX 8M Nano

Jako example, ukazujeme, jak vypadá portování na platformu i.MX 8M. Chcete-li získat další informace, podívejte se na [3].

Hardware 4.1
V současné době NXP neposkytuje desku adaptéru. Podívejte se do tabulky 8, jak připojit desky pomocí vodičů.

Tabulka 8. Připojení PN7220 k i.MX 8M Nano

KOLÍK PN7220 i.MX 8M NANO
VEN J27 – 7 J003 – 40
IRQ J27 – 6 J003 – 37
SDA J27 – 3 J003 – 3
SCL J27 – 2 J003 – 5
MODE_SWITCH J43 – 32 J003 – 38
GND J27 – 1 J003 – 39

Software 4.2
Kroky popsané v této části vysvětlují, jak můžeme port PN7200 přenést na platformu i.MX 8M Nano. Stejné kroky s trochou úprav lze použít k portu na jakýkoli jiný DH, který používá OS Android.
Poznámka: V tomto portování example, používáme 13.0.0_1.0.0_Android_Source.
Můžeme znovu použít záplaty související s kódem AOSP. Co se musí změnit, je:

  1. Strom zařízení (v i.MX 8M Nano je to AROOT_vendor_nxp-opensource_imx_kernel.patch)
  2. Patch pro konkrétní zařízení (v i.MX 8M Nano je to AROOT_device_nxp.patch)

V AROOT_vendor_nxp-opensource_imx_kernel.patch můžeme vidět, jak je ovladač zahrnut a jak je vytvořen strom zařízení. To je specifické pro každého hostitele zařízení, protože se musíme postarat o konfiguraci pinů, a to se mezi deskami liší. Musíme se také postarat o konfiguraci menu.
V AROOT_device_nxp.patch začleňujeme nfc do sestavení. Obecně dbáme na to, aby byly všechny služby zahrnuty správně atd. Při portování na konkrétní hostitelské zařízení berte tento patch jako referenci a zahrňte všechny věci uvnitř.
Jedna další věc, kterou jsme provedli při portování, se nachází v souboru device-nfc.mk file:
Musíme okomentovat následující řádky:
# BOARD_SEPOLICY_DIRS += vendor/$(NXP_VENDOR_DIR)/nfc/sepolicy \
# vendor/$(NXP_VENDOR_DIR)/nfc/sepolicy/nfc
Důvodem je to, že do BoardConfig.mk specifických pro zařízení zařazujeme sepolicy file. Kroky k vytvoření obrázků:
> Získejte kód AOSP pro i.MX8M Nano
> Sestavte AOSP
> Získejte záplaty NXP ([5])
> Aplikujte všechny opravy pomocí install_nfc.sh
> CD framework/base
> mm
> cd ../..
> dodavatel cd/nxp/frameworks
> mm #po tomto bychom měli vidět com.nxp.emvco.jar naruby/target/product/ imx8mn/system/framwework/
> cd ../../..
> cd hardware/nxp/nfc
> mm
> cd ../../..
> vyrobit
> Stáhněte si obrázky a pomocí nástroje uuu flashujte i.MX8M Nano

Zkratky

Tabulka 9. Zkratky

Akronym Popis
APDU datová jednotka aplikačního protokolu
AOSP Android open source projekt
DH hostitel zařízení
HAL vrstva hardwarové abstrakce
FW firmware
I2C meziintegrovaný obvod
LPCD detekce karty s nižším výkonem
NCI rozhraní ovladače NFC
NFC komunikace v blízkém poli
MW middleware
PLL fáze Locked Loop
P2P peer to peer
RF rádiová frekvence
SDA sériová data
SMCU bezpečný mikrokontrolér
SW software

Reference

[1] AOSP r3 tag: https://android.googlesource.com/platform/manifest-b android-13.0.0_r3
[2] Nástroje pro kontrolu zdroje: https://source.android.com/docs/setup/download
[3] i.MX: https://www.nxp.com/design/software/embedded-software/i-mx-software/android-os-for-i-mxapplications-processors:IMXANDROID
[4] Ovladač jádra PN7220: https://github.com/NXPNFCLinux/nxpnfc/tree/PN7220-Driver
[5] PN7220 MW: https://github.com/NXPNFCLinux/PN7220_Android13

Poznámka ke zdrojovému kódu v dokumentu

ExampKód zobrazený v tomto dokumentu má následující autorská práva a licenci BSD-3-Clause:
Copyright 2023 NXP Redistribuce a použití ve zdrojové a binární formě, s úpravami nebo bez nich, jsou povoleny za předpokladu, že jsou splněny následující podmínky:

  1. Redistribuce zdrojového kódu musí obsahovat výše uvedené upozornění na autorská práva, tento seznam podmínek a následující prohlášení o vyloučení odpovědnosti.
  2. Redistribuce v binární formě musí reprodukovat výše uvedenou poznámku o autorských právech, tento seznam podmínek a následující prohlášení o vyloučení odpovědnosti v dokumentaci a/nebo jiných materiálech musí být poskytnuty s distribucí.
  3. Jméno držitele autorských práv ani jména jeho přispěvatelů nelze použít k podpoře nebo propagaci produktů odvozených od tohoto softwaru bez zvláštního předchozího písemného souhlasu.

TENTO SOFTWARE POSKYTUJÍ DRŽITELÉ AUTORSKÝCH PRÁV A PŘISPĚVATELÉ „TAK, JAK JE“, A JAKÉKOLI VÝSLOVNÉ NEBO PŘEDPOKLÁDANÉ ZÁRUKY, VČETNĚ, ALE NE OMEZENÉ, PŘEDPOKLÁDANÝCH ZÁRUK OBCHODOVATELNOSTI A VHODNOSTI PRO KONKRÉTNÍ NÁKUP. V ŽÁDNÉM PŘÍPADĚ NEBUDE DRŽITEL AUTORSKÝCH PRÁV NEBO PŘISPĚVATELÉ ODPOVĚDNÍ ZA JAKÉKOLI PŘÍMÉ, NEPŘÍMÉ, NÁHODNÉ, ZVLÁŠTNÍ, EXEMPLÁRNÍ NEBO NÁSLEDNÉ ŠKODY (VČETNĚ, ALE NE VÝHRADNĚ, ZAJIŠTĚNÍ NÁHRADNÍCH SLUŽEB, NÁHRADNÍHO ZBOŽÍ; ZISKY NEBO PŘERUŠENÍ OBCHODNÍ ČINNOSTI) JAK JSOU ZPŮSOBENÉ A NA JAKÉKOLI TEorii ODPOVĚDNOSTI, AŤ VE SMLOUVĚ, PŘÍSNÉ ODPOVĚDNOSTI NEBO PŘEČINU (VČETNĚ NEDBALOSTI ČI JINAK), VZNIKLÝM JAKÝKOLIV ZPŮSOBEM Z POUŽITÍ TOHOTO POUŽITÍ. POŠKOZENÍ.

Právní informace

8.1 Definice
Koncept — Stav konceptu na dokumentu znamená, že obsah je stále pod interní revizíview a podléhá formálnímu schválení, které může vést k úpravám nebo doplnění. NXP Semiconductors neposkytuje žádná prohlášení ani záruky ohledně přesnosti nebo úplnosti informací obsažených v pracovní verzi dokumentu a nenese žádnou odpovědnost za důsledky použití takových informací.

8.2 Zřeknutí se odpovědnosti
Omezená záruka a odpovědnost — Informace v tomto dokumentu jsou považovány za přesné a spolehlivé. Společnost NXP Semiconductors však neposkytuje žádná prohlášení ani záruky, vyjádřené nebo předpokládané, ohledně přesnosti nebo úplnosti takových informací a nenese žádnou odpovědnost za důsledky použití takových informací. NXP Semiconductors nenese žádnou odpovědnost za obsah tohoto dokumentu, pokud je poskytnut informačním zdrojem mimo NXP Semiconductors.
Společnost NXP Semiconductors v žádném případě nenese odpovědnost za jakékoli nepřímé, náhodné, trestné, zvláštní nebo následné škody (včetně – bez omezení ušlého zisku, ušlých úspor, přerušení provozu, nákladů souvisejících s odstraněním nebo výměnou jakýchkoli produktů nebo nákladů na přepracování), ať už tyto škody nejsou založeny na protiprávním jednání (včetně nedbalosti), záruce, porušení smlouvy nebo jiné právní teorii.
Bez ohledu na jakékoli škody, které by mohly zákazníkovi z jakéhokoli důvodu vzniknout, bude souhrnná a kumulativní odpovědnost NXP Semiconductors vůči zákazníkovi za produkty popsané v tomto dokumentu omezena v souladu s podmínkami komerčního prodeje NXP Semiconductors.
Právo provádět změny — Společnost NXP Semiconductors si vyhrazuje právo kdykoli a bez upozornění provádět změny informací zveřejněných v tomto dokumentu, včetně, bez omezení, specifikací a popisů produktů. Tento dokument nahrazuje a nahrazuje všechny informace poskytnuté před jeho zveřejněním.
Vhodnost použití — Produkty NXP Semiconductors nejsou navrženy, autorizovány nebo zaručeny tak, aby byly vhodné pro použití v systémech nebo zařízeních pro podporu života, život kritických nebo kritických systémech nebo zařízeních, ani v aplikacích, kde lze důvodně očekávat selhání nebo nesprávnou funkci produktu NXP Semiconductors. zranění osob, smrt nebo vážné poškození majetku nebo životního prostředí. Společnost NXP Semiconductors a její dodavatelé nepřijímají žádnou odpovědnost za zahrnutí a/nebo použití produktů NXP Semiconductors v takovém zařízení nebo aplikacích, a proto je takové zahrnutí a/nebo použití na vlastní riziko zákazníka.
Aplikace — Zde popsané aplikace pro kterýkoli z těchto produktů slouží pouze pro ilustrativní účely. NXP Semiconductors neposkytuje žádné prohlášení ani záruku, že takové aplikace budou vhodné pro specifikované použití bez dalšího testování nebo úprav. Zákazníci jsou zodpovědní za návrh a provoz svých aplikací a produktů využívajících produkty NXP Semiconductors a NXP Semiconductors nepřijímá žádnou odpovědnost za jakoukoli pomoc s aplikacemi nebo návrhem zákaznických produktů. Je výhradní odpovědností zákazníka určit, zda je produkt NXP Semiconductors vhodný a vhodný pro zákazníkovy aplikace a plánované produkty, jakož i pro plánovanou aplikaci a použití zákazníkem (zákazníků) jako třetí strana. Zákazníci by měli poskytnout vhodné konstrukční a provozní záruky, aby minimalizovali rizika spojená s jejich aplikacemi a produkty.
NXP Semiconductors nepřijímá žádnou odpovědnost související s jakýmkoli selháním, poškozením, náklady nebo problémem, který je založen na jakékoli slabosti nebo selhání v aplikacích nebo produktech zákazníka nebo v aplikaci nebo použití zákazníkem (zákazníky třetí strany) zákazníka. Zákazník je odpovědný za provedení všech nezbytných testů pro aplikace a produkty zákazníka využívající produkty NXP Semiconductors, aby se zabránilo selhání aplikací a produktů nebo aplikace nebo použití zákazníkem (zákazníky třetí strany) zákazníka. NXP nenese v tomto ohledu žádnou odpovědnost.
Podmínky komerčního prodeje — Produkty NXP Semiconductors se prodávají v souladu se všeobecnými podmínkami komerčního prodeje, jak jsou zveřejněny na http://www.nxp.com/profile/terms, není-li v platné písemné individuální dohodě dohodnuto jinak. V případě uzavření individuální smlouvy platí pouze podmínky příslušné smlouvy. Společnost NXP Semiconductors tímto výslovně nesouhlasí s uplatňováním všeobecných obchodních podmínek zákazníka s ohledem na nákup produktů NXP Semiconductors zákazníkem.
Kontrola exportu — Tento dokument, stejně jako položky zde popsané, mohou podléhat předpisům o kontrole vývozu. Vývoz může vyžadovat předchozí povolení od příslušných orgánů.
Vhodnost pro použití ve výrobcích nekvalifikovaných pro automobilový průmysl — Pokud tento dokument výslovně neuvádí, že tento konkrétní produkt NXP Semiconductors je způsobilý pro automobilový průmysl, není tento produkt vhodný pro použití v automobilech. Není kvalifikován ani testován v souladu s automobilovým testováním nebo aplikačními požadavky. Společnost NXP Semiconductors nenese žádnou odpovědnost za zahrnutí a/nebo použití jiných než automobilových kvalifikovaných produktů v automobilovém vybavení nebo aplikacích.
V případě, že zákazník použije produkt pro návrh a použití v automobilových aplikacích podle automobilových specifikací a norem, zákazník (a) použije produkt bez záruky NXP Semiconductors na produkt pro takové automobilové aplikace, použití a specifikace a ( b) kdykoli zákazník použije produkt pro automobilové aplikace nad rámec specifikací NXP Semiconductors, takové použití bude výhradně na vlastní riziko zákazníka a (c) zákazník plně odškodní společnost NXP Semiconductors za jakoukoli odpovědnost, škody nebo neúspěšné nároky na produkt vyplývající z návrhu a použití zákazníka. produkt pro automobilové aplikace nad rámec standardní záruky NXP Semiconductors a specifikace produktu NXP Semiconductors.
Produkty hodnocení — Tento produkt je poskytován „tak jak je“ a „se všemi chybami“ pouze pro účely hodnocení. Společnost NXP Semiconductors, její přidružené společnosti a jejich dodavatelé výslovně odmítají veškeré záruky, ať už výslovné, předpokládané nebo zákonné, včetně, nikoli však výhradně, předpokládaných záruk neporušení práv, prodejnosti a vhodnosti pro konkrétní účel. Veškeré riziko týkající se kvality nebo vyplývající z použití nebo výkonu tohoto produktu zůstává na zákazníkovi.
Společnost NXP Semiconductors, její přidružené společnosti nebo jejich dodavatelé v žádném případě nenesou odpovědnost vůči zákazníkovi za žádné zvláštní, nepřímé, následné, trestní nebo náhodné škody (včetně, bez omezení, škod za ztrátu obchodu, přerušení podnikání, ztrátu použití, ztrátu dat nebo informací a podobně) vyplývající z používání nebo nemožnosti používat produkt, ať už je či není
na základě deliktu (včetně nedbalosti), objektivní odpovědnosti, porušení smlouvy, porušení záruky nebo jakékoli jiné teorie, a to i v případě upozornění na možnost takových škod. Bez ohledu na jakékoli škody, které by zákazníkovi mohly z jakéhokoli důvodu vzniknout (včetně, bez omezení, všech výše uvedených škod a všech přímých nebo obecných škod), veškerá odpovědnost společnosti NXP Semiconductors, jejích přidružených společností a jejich dodavatelů a výhradní náprava zákazníka za vše výše uvedené bude být omezena na skutečné škody vzniklé zákazníkovi na základě přiměřeného spoléhání až do výše částky skutečně zaplacené zákazníkem za produkt nebo pěti dolarů (5.00 USD). Výše uvedená omezení, vyloučení a vyloučení odpovědnosti platí v maximálním rozsahu povoleném příslušným zákonem, a to i v případě, že jakýkoli opravný prostředek nesplní svůj základní účel.
Překlady — Neanglická (přeložená) verze dokumentu, včetně právních informací v tomto dokumentu, je pouze orientační. V případě jakéhokoli rozporu mezi přeloženou a anglickou verzí má přednost anglická verze.
Zabezpečení — Zákazník bere na vědomí, že všechny produkty NXP mohou být předmětem neidentifikovaných zranitelností nebo mohou podporovat zavedené bezpečnostní standardy nebo specifikace se známými omezeními. Zákazník je odpovědný za návrh a provoz svých aplikací a produktů během jejich životního cyklu, aby se snížil účinek těchto zranitelností na aplikace a produkty zákazníka. Odpovědnost zákazníka se vztahuje také na další otevřené a/nebo proprietární technologie podporované produkty NXP pro použití v zákaznických aplikacích. NXP nenese žádnou odpovědnost za jakoukoli zranitelnost. Zákazník by měl pravidelně kontrolovat aktualizace zabezpečení z NXP a patřičně je sledovat. Zákazník si vybere produkty s bezpečnostními prvky, které nejlépe vyhovují pravidlům, předpisům a standardům zamýšlené aplikace a bude činit konečná rozhodnutí o designu týkající se svých produktů a je výhradně odpovědný za shodu se všemi právními, regulačními a bezpečnostními požadavky týkajícími se jeho produktů, bez ohledu na jakékoli informace nebo podporu, kterou může NXP poskytnout.
NXP má tým pro reakci na bezpečnostní incidenty produktu (PSIRT) (dostupný na adrese PSIRT@nxp.com), která spravuje vyšetřování, hlášení a uvolňování řešení bezpečnostních zranitelností produktů NXP.
NXP BV – NXP BV není provozní společností a nedistribuuje ani neprodává produkty.

8.3 Licence
Nákup integrovaných obvodů NXP s technologií NFC — Nákup integrovaného obvodu NXP Semiconductors, který je v souladu s jedním ze standardů Near Field Communication (NFC) ISO/IEC 18092 a ISO/IEC 21481, nezahrnuje předpokládanou licenci na žádné patentové právo porušené implementací kteroukoli z těchto norem. Nákup IC NXP Semiconductors nezahrnuje licenci k žádnému patentu NXP (nebo jinému právu IP) pokrývajícímu kombinace těchto produktů s jinými produkty, ať už jde o hardware nebo software.

8.4 Ochranné známky
Upozornění: Všechny uvedené značky, názvy produktů, názvy služeb a ochranné známky jsou majetkem příslušných vlastníků.
NXP — slovo a logo jsou ochranné známky společnosti NXP BV
EdgeVerse — je ochranná známka společnosti NXP BV
i.MX — je ochranná známka společnosti NXP BV
I2C-bus — logo je ochranná známka společnosti NXP BV
Oracle a Java — jsou registrované ochranné známky společnosti Oracle a/nebo jejích přidružených společností.

Uvědomte si prosím, že důležitá upozornění týkající se tohoto dokumentu a zde popsaných produktů byla zahrnuta v části „Právní informace“.

NXP - logo© 2023 NXP BV
Další informace naleznete na adrese: http://www.nxp.com
Všechna práva vyhrazena.
Datum vydání: 18. září 2023
Identifikátor dokumentu: AN13971

AN13971
Poznámka k aplikaci
Veškeré informace uvedené v tomto dokumentu podléhají právnímu vyloučení.
Rev. 1.0 – 18. září 2023
© 2023 NXP BV Všechna práva vyhrazena.

Dokumenty / zdroje

Ovladač NFC kompatibilní s NXP PN7220 [pdfUživatelská příručka
PN7220 kompatibilní řadič NFC, PN7220, kompatibilní řadič NFC, řadič NFC, řadič

Reference

Zanechte komentář

Vaše emailová adresa nebude zveřejněna. Povinná pole jsou označena *