Search Linux Wireless

Re: ThinkPad T470 and NXP PN5xx (PN547 or PN548)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 10, 2019 at 6:40 PM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
>
> (+Cc: Oleg)
>
> On Fri, May 10, 2019 at 09:43:29AM +0200, Sedat Dilek wrote:
> > On Thu, May 9, 2019 at 3:46 PM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote:
> > >
> > > Hi,
> > >
> > > I am here on Debian/buster AMD64 and Linux v5.1 final.
> > >
> > > I have successfully installed and tested the NXP NFC driver from
> > > Lenovo under Windows 10 as a first step (see [1] and [2]).
> > >
> > > As a testcase I used my YubiKey which was recognized via NFC and I
> > > could automatically register at the YubiKey demo website.
> > >
> > > Under Linux v5.1 I have activated all sort of CONFIG_NFC_XXX as
> > > modules if available (see below and attached files).
> > >
> > > I am not sure if I need to load the PN544 (I2C) driver?
> > >
> > > I can see in /sys ...
> > >
> > > # cd /sys/bus/i2c/devices/i2c-NXP1001:00
>
> > > The NXP NFC Windows driver lists (I have both firmware files copied to Linux)...
> > > [Firmware.CopyFiles]
> > > NXPPN548FW.DAT
> > > NXPPN547FW.DAT
>
> First of all it seems the driver lacks of ID. And the ID seems odd.
> Looking for this ID in tables I see mention of NXP NPC100. The driver is
> drivers/nfc/nxp-nci for it.
>

Hi Andy,

what do you mean by "the driver lacks ID"?
Do you mean VendorID and ProductID?
How to get these informations?
Do I need to modify the linux kernel sources?

Thanks.

Regards,
- Sedat -

> > > Last question: Do I need these firmware files installed?
> > > Rename them?
> > > Which directory - /lib/firmware?
> > >
> > > I ran out of ideas...
> > >
> > > Do you need more informations?
> > >
> > > I have attached my linux-config and the dmesg output.
> > >
> > > Thanks in advance.
> > >
> > > Kind regards,
> > > - Sedat -
> > >
> > > [1] https://pcsupport.lenovo.com/us/de/products/laptops-and-netbooks/thinkpad-t-series-laptops/thinkpad-t470/downloads
> > > [2] https://download.lenovo.com/pccbbs/mobiles/n1qnb04w.txt
> > > [3] https://github.com/NXPNFCLinux/linux_libnfc-nci
> > > [4] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/nfc/nfc-hci.txt
> > > [5] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/nfc/nfc-pn544.txt
> > >
> > > P.S.: Some interesting outputs and files
> > >
> > > [ LINUX-CONFIG ]
> > >
> > > $ grep NFC /boot/config-5.1.0-1-amd64-cbl-asmgoto | sort
> > > CONFIG_IP_VS_NFCT=y
> > > CONFIG_MLX5_EN_RXNFC=y
> > > CONFIG_NFC_DIGITAL=m
> > > CONFIG_NFC_FDP_I2C=m
> > > CONFIG_NFC_FDP=m
> > > CONFIG_NFC_HCI=m
> > > CONFIG_NFC=m
> > > CONFIG_NFC_MEI_PHY=m
> > > CONFIG_NFC_MICROREAD_I2C=m
> > > CONFIG_NFC_MICROREAD=m
> > > CONFIG_NFC_MICROREAD_MEI=m
> > > CONFIG_NFC_MRVL_I2C=m
> > > CONFIG_NFC_MRVL=m
> > > CONFIG_NFC_MRVL_SPI=m
> > > CONFIG_NFC_MRVL_UART=m
> > > CONFIG_NFC_MRVL_USB=m
> > > CONFIG_NFC_NCI=m
> > > CONFIG_NFC_NCI_SPI=m
> > > CONFIG_NFC_NCI_UART=m
> > > CONFIG_NFC_NXP_NCI_I2C=m
> > > CONFIG_NFC_NXP_NCI=m
> > > CONFIG_NFC_PN533_I2C=m
> > > CONFIG_NFC_PN533=m
> > > CONFIG_NFC_PN533_USB=m
> > > CONFIG_NFC_PN544_I2C=m
> > > CONFIG_NFC_PN544=m
> > > CONFIG_NFC_PN544_MEI=m
> > > CONFIG_NFC_PORT100=m
> > > CONFIG_NFC_S3FWRN5_I2C=m
> > > CONFIG_NFC_S3FWRN5=m
> > > CONFIG_NFC_SHDLC=y
> > > CONFIG_NFC_SIM=m
> > > CONFIG_NFC_ST21NFCA_I2C=m
> > > CONFIG_NFC_ST21NFCA=m
> > > CONFIG_NFC_ST95HF=m
> > > CONFIG_NFC_ST_NCI_I2C=m
> > > CONFIG_NFC_ST_NCI=m
> > > CONFIG_NFC_ST_NCI_SPI=m
> > > CONFIG_NFC_TRF7970A=m
> > > # Near Field Communication (NFC) devices
> > >
> > > [ WINDOWS 10 INF DRIVER ]
> > >
> > > $ cat NxpNfcClientDriver.inf
> > > ��;
> > > ; NxpNfcClientDriver.inf
> > > ;
> > >
> > > [Version]
> > > Signature="$Windows NT$"
> > > Class=Proximity
> > > ClassGuid={5630831C-06C9-4856-B327-F5D32586E060}
> > > Provider=%ManufacturerName%
> > > CatalogFile=NxpNfcClientDriver.cat
> > > DriverVer=03/30/2018,12.0.3.0
> > >
> > > [Manufacturer]
> > > %ManufacturerName%=Standard,NTamd64
> > >
> > > [Standard.NTamd64]
> > > %DeviceName%=MyDevice_Install,ACPI\NXP1000
> > > %DeviceName%=MyDevice_Install,ACPI\NXP1001
> > > %DeviceName%=MyDevice_Install,ACPI\NXP1002
> > > %DeviceName%=MyDevice_Install,ACPI\NXP1003
> > > %DeviceName%=MyDevice_Install,ACPI\NXP7471
> > > %DeviceName%=MyDevice_Install,ACPI\NXP8013
> > > %DeviceName%=MyDevice_Install,ACPI\NXP3001
> > >
> > > [SourceDisksNames]
> > > 1=%DiskName%
> > >
> > > [SourceDisksFiles]
> > > NxpNfcClientDriver.dll=1
> > > NXPPN548FW.DAT=1
> > > NXPPN547FW.DAT=1
> > >
> > > ; =================== UMDF Device ==================================
> > >
> > > [MyDevice_Install.NT]
> > > CopyFiles=UMDriverCopy,Firmware.CopyFiles
> > > AddReg=NxpNfpProviderProximityCustomValuesRegister
> > >
> > > [MyDevice_Install.NT.hw]
> > > AddReg=NxpNfcClientDriver_AddReg
> > >
> > > [MyDevice_Install.NT.Services]
> > > AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall
> > >
> > > [MyDevice_Install.NT.CoInstallers]
> > > AddReg=CoInstallers_AddReg
> > >
> > > [MyDevice_Install.NT.Wdf]
> > > UmdfService=NxpNfcClientDriver,NxpNfcClientDriver_Install
> > > UmdfServiceOrder=NxpNfcClientDriver
> > > UmdfDirectHardwareAccess=AllowDirectHardwareAccess
> > > UmdfFileObjectPolicy=AllowNullAndUnknownFileObjects
> > > UmdfImpersonationLevel=Impersonation
> > >
> > > [NxpNfcClientDriver_Install]
> > > UmdfLibraryVersion=2.0.0
> > > ServiceBinary=%12%\UMDF\NxpNfcClientDriver.dll
> > > UmdfExtensions=NfcCx0102
> > >
> > > [NxpNfcClientDriver_AddReg]
> > > HKR,FirmwareMap,"8",0x00020000,"%%SystemRoot%%\System32\NXPPN547FW.dat"
> > > ; HW version of PN547 is 8
> > > HKR,FirmwareMap,"10",0x00020000,"%%SystemRoot%%\System32\NXPPN548FW.dat"
> > > ; HW version of PN548 is 10
> > > HKR,NxpNfcClientDriver, "RfConfigData",            0x00000001, 00
> > > HKR,NxpNfcClientDriver, "EEPROMConfigBlob",        0x00000001, 00
> > > HKR,NxpNfcClientDriver, "RfSessionMgmt",           0x00010001, 1
> > > HKR,NxpNfcClientDriver, "KeepRfData",              0x00010001, 1
> > >
> > > ; ============== custom registry sections ==================
> > >
> > > [NxpNfpProviderProximityCustomValuesRegister]
> > > HKLM,"SYSTEM\CurrentControlSet\Proximity\","Dummy",0x00000010,0
> > >
> > >
> > > [NxpNfpProviderProximityCustomValuesRegister.Security]
> > > "D:P(A;OICI;GA;;;LS)(A;;GA;;;BA)(A;;GA;;;SY)"
> > >
> > > [WUDFRD_ServiceInstall]
> > > DisplayName=%WudfRdDisplayName%
> > > ServiceType=1
> > > StartType=3
> > > ErrorControl=1
> > > ServiceBinary=%12%\WUDFRd.sys
> > >
> > > [CoInstallers_AddReg]
> > > HKR,,CoInstallers32,0x00010000,"WUDFCoinstaller.dll"
> > >
> > >
> > > [DestinationDirs]
> > > UMDriverCopy=12,UMDF ; copy to Drivers\UMDF
> > > Firmware.CopyFiles=11
> > >
> > > [UMDriverCopy]
> > > NxpNfcClientDriver.dll,,,0x100
> > >
> > > [Firmware.CopyFiles]
> > > NXPPN548FW.DAT
> > > NXPPN547FW.DAT
> > >
> > > [ControlFlags]
> > > ExcludeFromSelect=*
> > >
> > > ; =================== Generic ==================================
> > >
> > > [Strings]
> > > ManufacturerName="NXP Semiconductors"
> > > DiskName="NxpNfcClientDriver Installation Disk"
> > > WudfRdDisplayName="NxpNfcClientDriver"
> > > DeviceName="NxpNfcClientDriver"
> > >
> > > - EOT -
> >
> > [ CC Cristian and Jeremy of NXP ]
> >
> > What Linux-kernel configs do I need that PN544 I2C NFC driver works?
> >
> > Additionally, I have set CONFIG_I2C_GPIO=m.
> >
> > What else is important to be activated?
> >
> > Thanks.
> >
> > - Sedat -
>
>
>
> --
> With Best Regards,
> Andy Shevchenko
>
>




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux