Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

facetimehd: probe of 0000:04:00.0 failed with error -5 #259

Closed
aliris-schmidt opened this issue Feb 1, 2022 · 8 comments
Closed

facetimehd: probe of 0000:04:00.0 failed with error -5 #259

aliris-schmidt opened this issue Feb 1, 2022 · 8 comments

Comments

@aliris-schmidt
Copy link

aliris-schmidt commented Feb 1, 2022

Followed installation instruction from Wiki and from this site before. Always worked very nice. Now it stopped working and reinstall does not help either.

Apple MacBook Pro 11.3
Ubuntu 21.10
5.13.0-28-generic

[    1.868915] facetimehd: loading out-of-tree module taints kernel.
[    1.868970] facetimehd: module verification failed: signature and/or required key missing - tainting kernel
[    1.869590] facetimehd 0000:04:00.0: Found FaceTime HD camera with device id: 1570
[    1.869787] facetimehd 0000:04:00.0: Setting 64bit DMA mask
[    1.875572] facetimehd 0000:04:00.0: S2 PCIe link init succeeded
[    1.875603] facetimehd 0000:04:00.0: Refclk: 25MHz (0xa)
[    1.885536] facetimehd 0000:04:00.0: PLL reset finished
[    1.885538] facetimehd 0000:04:00.0: Waiting for S2 PLL to lock at 450 MHz
[    1.885551] facetimehd 0000:04:00.0: S2 PLL is locked after 10 us
[    1.895477] facetimehd 0000:04:00.0: S2 PLL is in bypass mode
[    1.915356] facetimehd 0000:04:00.0: DDR40 PHY PLL locked on safe settings
[    1.915370] facetimehd 0000:04:00.0: STRAP valid
[    1.915371] facetimehd 0000:04:00.0: Configuring DDR PLLs for 450 MHz
[    1.915378] facetimehd 0000:04:00.0: DDR40 PLL is locked after 0 us
[    1.915389] facetimehd 0000:04:00.0: First DDR40 VDL calibration completed after 2 us
[    1.915400] facetimehd 0000:04:00.0: Second DDR40 VDL calibration completed after 2 us
[    1.915401] facetimehd 0000:04:00.0: Using step size 158
[    1.915406] facetimehd 0000:04:00.0: VDL set to: coarse=0x10008, fine=0x1011b
[    1.915411] facetimehd 0000:04:00.0: Virtual VTT enabled
[    1.935769] facetimehd 0000:04:00.0: S2 DRAM memory address: 0x22159559
[    1.935797] facetimehd 0000:04:00.0: Rewrite DDR mode registers succeeded
[    1.936107] facetimehd 0000:04:00.0: Full memory verification succeeded! (0)
[    2.073811] facetimehd 0000:04:00.0: Loaded firmware, size: 1392kb
[   12.027408] facetimehd 0000:04:00.0: Init failed! No wake signal
[   12.027873] facetimehd: probe of 0000:04:00.0 failed with error -5
$ sudo lspci -s 04:00.0 -vvv

04:00.0 Multimedia controller: Broadcom Inc. and subsidiaries 720p FaceTime HD Camera
	Subsystem: Broadcom Inc. and subsidiaries 720p FaceTime HD Camera
	Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Interrupt: pin A routed to IRQ 19
	Region 0: Memory at c1d00000 (64-bit, non-prefetchable) [size=64K]
	Region 2: Memory at a0000000 (64-bit, prefetchable) [size=256M]
	Region 4: Memory at c1c00000 (64-bit, non-prefetchable) [size=1M]
	Capabilities: [48] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold-)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=2 PME-
	Capabilities: [58] MSI: Enable- Count=1/1 Maskable- 64bit+
		Address: 0000000000000000  Data: 0000
	Capabilities: [68] Vendor Specific Information: Len=44 <?>
	Capabilities: [ac] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 512 bytes, PhantFunc 0, Latency L0s <4us, L1 unlimited
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset- SlotPowerLimit 10.000W
		DevCtl:	CorrErr- NonFatalErr- FatalErr- UnsupReq-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr+ NoSnoop+
			MaxPayload 128 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
		LnkCap:	Port #0, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <2us, L1 <32us
			ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
		LnkCtl:	ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 5GT/s (ok), Width x1 (ok)
			TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR+
			 10BitTagComp- 10BitTagReq- OBFF Via WAKE#, ExtFmt- EETLPPrefix-
			 EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
			 FRS- TPHComp- ExtTPHComp-
			 AtomicOpsCap: 32bit- 64bit- 128bitCAS-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ OBFF Disabled,
			 AtomicOpsCtl: ReqEn-
		LnkCtl2: Target Link Speed: 2.5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
			 EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
			 Retimer- 2Retimers- CrosslinkRes: unsupported
	Capabilities: [100 v1] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		AERCap:	First Error Pointer: 00, ECRCGenCap+ ECRCGenEn- ECRCChkCap+ ECRCChkEn-
			MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
		HeaderLog: 00000000 00000000 00000000 00000000
	Capabilities: [13c v1] Device Serial Number 00-00-00-ff-ff-00-00-00
	Capabilities: [150 v1] Power Budgeting <?>
	Capabilities: [160 v1] Virtual Channel
		Caps:	LPEVC=0 RefClk=100ns PATEntryBits=1
		Arb:	Fixed- WRR32- WRR64- WRR128-
		Ctrl:	ArbSelect=Fixed
		Status:	InProgress-
		VC0:	Caps:	PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-
			Arb:	Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-
			Ctrl:	Enable+ ID=0 ArbSelect=Fixed TC/VC=ff
			Status:	NegoPending- InProgress-
	Capabilities: [1b0 v1] Latency Tolerance Reporting
		Max snoop latency: 71680ns
		Max no snoop latency: 71680ns
	Capabilities: [220 v1] Physical Resizable BAR
		BAR 2: current size: 256MB, supported: 1MB 2MB 4MB 8MB 16MB 32MB 64MB 128MB 256MB
	Kernel modules: facetimehd

seems to be the same as here? #35

@aliris-schmidt
Copy link
Author

Tried it again on a clean install of Ubuntu 21.10
5.13.0-28-generic
MacBookPro11,3

Made every step of Firmware extraction and then Install script but the camera won't work.

[    5.537878] facetimehd: module verification failed: signature and/or required key missing - tainting kernel
[    5.552886] facetimehd 0000:04:00.0: Found FaceTime HD camera with device id: 1570
[    5.553799] facetimehd 0000:04:00.0: Setting 64bit DMA mask
[    5.566299] facetimehd 0000:04:00.0: S2 PCIe link init succeeded
[    5.566363] facetimehd 0000:04:00.0: Refclk: 25MHz (0xa)
[    5.576310] facetimehd 0000:04:00.0: PLL reset finished
[    5.576316] facetimehd 0000:04:00.0: Waiting for S2 PLL to lock at 450 MHz
[    5.739092] facetimehd 0000:04:00.0: Failed to lock S2 PLL: 0xc902c902
[    5.759055] facetimehd 0000:04:00.0: DDR40 PHY PLL locked on safe settings
[    5.759087] facetimehd 0000:04:00.0: STRAP valid
[    5.759088] facetimehd 0000:04:00.0: Configuring DDR PLLs for 450 MHz
[    5.759106] facetimehd 0000:04:00.0: DDR40 PLL is locked after 0 us
[    5.759135] facetimehd 0000:04:00.0: First DDR40 VDL calibration completed after 0 us
[    5.759150] facetimehd 0000:04:00.0: Second DDR40 VDL calibration completed after 0 us
[    5.759151] facetimehd 0000:04:00.0: Using step size 159
[    5.759161] facetimehd 0000:04:00.0: VDL set to: coarse=0x10008, fine=0x1011b
[    5.759170] facetimehd 0000:04:00.0: Virtual VTT enabled
[    5.779560] facetimehd 0000:04:00.0: S2 DRAM memory address: 0x22159559
[    5.779578] facetimehd 0000:04:00.0: Rewrite DDR mode registers succeeded
[    5.779782] facetimehd 0000:04:00.0: Full memory verification succeeded! (0)
[    5.897933] facetimehd 0000:04:00.0: Loaded firmware, size: 1392kb
[   15.853465] facetimehd 0000:04:00.0: Init failed! No wake signal
[   15.853742] facetimehd: probe of 0000:04:00.0 failed with error -5

@aliris-schmidt
Copy link
Author

aliris-schmidt commented Feb 5, 2022

I also get this error on sudo modprobe facetimehd.

modprobe: FATAL: Module facetimhd not found in directory /lib/modules/5.13.0-28-generic

Which I can't explain because as mentioned it is a new system no updates etc.

lsmod |grep facetimehd
facetimehd             90112  0
videobuf2_dma_sg       16384  1 facetimehd
videobuf2_v4l2         32768  1 facetimehd
videobuf2_common       61440  4 videobuf2_v4l2,facetimehd,videobuf2_dma_sg,videobuf2_memops
videodev              249856  3 videobuf2_v4l2,facetimehd,videobuf2_common

@aliris-schmidt
Copy link
Author

Just installed MacOS on an external drive to check if the camera works there. The camera is not recognized in the systems report. Dont know if that is an hardware error.

@patjak
Copy link
Owner

patjak commented Feb 15, 2022

Hi
All I can tell from the log is that the camera is not "booting" after the firmware is loaded. But as you say, if the camera is not working in MacOS then I suspect it's not an issue with our driver.

@jplx
Copy link

jplx commented Feb 19, 2022

I have used this driver successfully on Macbook Pro running Gentoo Linux. However, it failed recently because apparently EAPI 5 is not more supported. I tried to modify to EAPI=6 in the ebuild file but it fails the "source prepare" step. It seems that it does not even fetch and unpack when EAPI is set to 6.
Would it be possible for you to update both ebuild files to EAPI 6 or 7? The files are bcwc_pcie-9999-r1.ebuild and apple_facetimehd_firmware-1.43.0-r1.ebuild. Thank you in advance.

@jplx
Copy link

jplx commented Feb 21, 2022

I was able to make it work with EAPI7 and the attached ebuild. It requires to download de bcwc_pcie-master.zip file into the DISTDIR directory defined in /etc/portage/make.conf
It also requires to add the following FEATURES in the /etc/portage/make.conf
FEATURES=" -sandbox -userpriv -usersandbox"
As I am new to ebuild, this looks like a hack but it works on my Macpro.
Your comments and corrections would be greatly appreciated.

bcwc_pcie-9999-r2.ebuild.txt

@patjak
Copy link
Owner

patjak commented Mar 10, 2022

sorry, I don't know anything about ebuild. You need to ask whoever is maintaining the Gentoo package. I'm closing this issues since it seems to be about broken hardware.

@patjak patjak closed this as completed Mar 10, 2022
@jplx
Copy link

jplx commented Mar 11, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants