Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NXP NFC Linux Kernel Driver (PN54x / PN55x)

Out-of-tree NXP NFC I²C kernel driver adapted for modern Linux kernels and Android GKI.

This repository is based on the legacy NXP PN54x/PN55x driver and has been updated to build and run on modern Linux kernels (5.10+), including Android GKI.

Credits

This project is based on the official NXP PN54x/PN55x I²C driver from the NXPNFCProject.

Original repository: NXPNFC_I2CDriver/tree/br_ar_p_sn1xx

Modifications

Compared to the original implementation, this repository includes:

  • Ported to modern Linux kernels (5.10+)
  • Android GKI compatibility fixes
  • Updated deprecated kernel APIs
  • Build fixes for modern toolchains
  • PN557 compatibility improvements
  • Stability improvements and bug fixes
  • Tested on Linux 5.10.260 GKİ Kernel

The original driver and copyright remain the property of NXP Semiconductors and their respective contributors. This repository distributes a modified version under the terms of the original GPL-2.0 license.


Features

  • Linux 5.10+ GKI compatible
  • Android 13 / 14 / 15 / 16 compatible
  • eSE (Embedded Secure Element) support
  • Secure timer support

Chip Compatibility

Verified

Chip Status
PN553 Tested
PN557 Tested

Expected Compatibility (Not Tested)

These chips belong to the same NXP PN54x/PN55x driver family or share a similar software architecture, but have not been physically tested.

Chip Status
PN544 Untested
PN547 Untested
PN548 Untested
PN80T Untested (eSE platform)
PN81T Untested (eSE platform)

SN100, SN110 and SN220 are not claimed as supported, as they have not been verified with this driver.


Supported Kernels

  • Linux 5.10.x (Android GKI)
  • Linux 5.15.x
  • Linux 6.1.x

Legacy kernels may also work with minimal changes.


Tested Environment

Component Version
Kernel Linux 5.10.262
Android LineageOS 23.2 (Android 16)
SoC MediaTek MT6789
NFC Chip PN553
NFC Chip PN557

Device Tree

Example compatible:

compatible = "nxp,pn544";

or

compatible = "nxp,pn548";

Depending on your board configuration.


Notes

This repository only contains the Linux kernel driver.

Android userspace components such as:

  • NFC HAL
  • libnfc-nci
  • Firmware blobs

must be supplied separately by your device vendor or ROM.


About

NXP PN54x/PN55x NFC Linux kernel driver for Android GKI (5.10+)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages