Bug 481474

Summary: firewire express card not detected
Product: [Fedora] Fedora Reporter: gian luca rasponi <lucarasp>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 12CC: harald, kernel-maint, myvonkpos, stefan-r-rhbz
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-12-05 07:02:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description gian luca rasponi 2009-01-25 13:43:29 UTC
Description of problem:

Firewire express card is not detected at boot and/or after hotplug;

Firewire express card is correctly detected and works with fedora 10 if kernel is booted with reboot with card plugged from winXP;

Step to reproduce:
1) Plug card after Fedora 10 is booted: card NOT detected;
2) Plug card and boot Fedora 10: card NOT detected;
3) Plug card under winXp and do reboot in Fedora 10: card detected and working with dv camera (dvgrab) and hard disks;

Version-Release number of selected component (if applicable):

uname -r
2.6.27.9-159.fc10.x86_64

Additional info:

lspci and dmesg after rebooting from XP Pro;

#lspci |grep 1394
05:00.0 FireWire (IEEE 1394): Texas Instruments XIO2200(A) IEEE-1394a-2000 Controller (PHY/Link) (rev ff)

#dmesg |grep firewire
firewire_ohci 0000:05:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
firewire_ohci: Added fw-ohci device 0000:05:00.0, OHCI version 1.10
firewire_core: created device fw0: GUID 0000000000d0c15f, S400

Express card model:

"Manhattan Firewire 400 ExpressCard/34"

Comment 1 Stefan Richter 2009-02-19 21:53:33 UTC
Try
# modprobe acpiphp
then plug the card in.

If this does not help, try the same with cpqphp, ibmphp, cpcihp_zt5550, cpcihp_generic, and shpchp.  (Could be that one or another module of these isn't actually present.  I don't have Fedora installed to check.)

BTW, the GUID of the card is invalid.  This is because of a mistake of the card manufacturer when preparing the EEPROM of the card.  This issue is unrelated to the recognition problem though and it is probably also harmless when you use the card after successful recognition.  It only shows that the manufacturer didn't get it quiet right.

Comment 2 gian luca rasponi 2009-02-23 21:26:04 UTC
Stefan,

it works; I've tried all drivers in ...../drivers/pci/hotplug/

At last:

# modprobe -v pciehp 

did the job.

Hereafter the relevant dmesg output:

pciehp: HPC vendor_id 8086 device_id 283f ss_vid 0 ss_did 0
pciehp: Device 0000:02:00.0 already exists at 2:0, cannot hot-add
pciehp: Cannot add device 0x2:0
hpdriver 0000:00:1c.0:pcie02: service driver hpdriver loaded
pciehp: HPC vendor_id 8086 device_id 2841 ss_vid 0 ss_did 0
hpdriver 0000:00:1c.1:pcie02: service driver hpdriver loaded
pciehp: HPC vendor_id 8086 device_id 2843 ss_vid 0 ss_did 0
pciehp: Device 0000:08:00.0 already exists at 8:0, cannot hot-add
pciehp: Cannot add device 0x8:0
hpdriver 0000:00:1c.2:pcie02: service driver hpdriver loaded
pciehp: HPC vendor_id 8086 device_id 2845 ss_vid 0 ss_did 0
hpdriver 0000:00:1c.3:pcie02: service driver hpdriver loaded
pciehp: PCI Express Hot Plug Controller Driver version: 0.4
pci 0000:04:00.0: supports D1
pci 0000:04:00.0: supports D2
Pre-1.1 PCIe device detected, disable ASPM for 0000:00:1c.1. It can be enabled forcedly with 'pcie_aspm=force'
PCI: 0000:05:00.0 reg 10 32bit mmio: [0, 7ff]
PCI: 0000:05:00.0 reg 14 32bit mmio: [0, 3fff]
pci 0000:05:00.0: supports D1
pci 0000:05:00.0: supports D2
pci 0000:05:00.0: PME# supported from D0 D1 D2 D3hot
pci 0000:05:00.0: PME# disabled
PCI: bridge 0000:04:00.0 io port: [0, fff]
PCI: bridge 0000:04:00.0 32bit mmio: [0, fffff]
PCI: bridge 0000:04:00.0 64bit mmio pref: [0, fffff]
pci 0000:04:00.0: PCI bridge, secondary bus 0000:05
pci 0000:04:00.0:   IO window: disabled
pci 0000:04:00.0:   MEM window: 0xf8000000-0xf80fffff
pci 0000:04:00.0:   PREFETCH window: disabled
pci 0000:04:00.0: enabling device (0000 -> 0002)
pci 0000:04:00.0: setting latency timer to 64
program_fw_provided_values: Could not get hotplug parameters
pci 0000:04:00.0: PCI bridge, secondary bus 0000:05
pci 0000:04:00.0:   IO window: disabled
pci 0000:04:00.0:   MEM window: 0xf8000000-0xf80fffff
pci 0000:04:00.0:   PREFETCH window: disabled
shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
firewire_ohci 0000:05:00.0: enabling device (0000 -> 0002)
firewire_ohci 0000:05:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
firewire_ohci 0000:05:00.0: setting latency timer to 64
firewire_ohci: Added fw-ohci device 0000:05:00.0, OHCI version 1.10
firewire_core: created device fw0: GUID 0000000000d0c15f, S400

Do you think the suggested "pcie_aspm=force" make any sense with the issue?

The output of lspci after plugging the card:

# lspci
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)
00:1c.2 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 3 (rev 03)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 03)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01)
04:00.0 PCI bridge: Texas Instruments XIO2000(A)/XIO2200(A) PCI Express-to-PCI Bridge (rev 03)
05:00.0 FireWire (IEEE 1394): Texas Instruments XIO2200(A) IEEE-1394a-2000 Controller (PHY/Link) (rev 01)
08:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)

I hope it can be helpful

Many Thanks

Luca

Comment 3 gian luca rasponi 2009-02-24 08:11:48 UTC
I tested hotplug after boot:

1) firewire card is detected ONLY if "modprobe -v pciehp" is issued with card plugged;
2) plugging card AFTER modprobing pciehp --> card is not detected;
3) unplugging card after it is listed in 'lspci' --> unplugging is not detected and card stay in 'lspci';

cheers

luca

Comment 4 Bug Zapper 2009-11-18 12:44:22 UTC
This message is a reminder that Fedora 10 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 10.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '10'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 10's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 10 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 5 gian luca rasponi 2009-11-21 20:36:21 UTC
as of Fedora 11 pciehp driver is no more present as a module as it is probably compiled in the kernel and it is thus not possible to load it manually.

Is there any workaround to let the card being discovered as per loading the pciehp module?

Comment 6 Stefan Richter 2009-11-22 00:39:48 UTC
What does "grep HOTPLUG_PCI /whatever/path/to/fedora's/kernel.config" get you?

Comment 7 gian luca rasponi 2009-11-22 20:20:09 UTC
[luca@laptop ~]$ grep HOTPLUG_PCI /usr/src/kernels/2.6.31.5-127.fc12.x86_64/.config 
CONFIG_HOTPLUG_PCI_PCIE=y
CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_FAKE=m
CONFIG_HOTPLUG_PCI_ACPI=y
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
CONFIG_HOTPLUG_PCI_SHPC=m

Comment 8 Stefan Richter 2009-11-22 21:00:47 UTC
OK, so the drivers are there indeed.  Alas I don't know how to clue them in to do something useful.

Comment 9 gian luca rasponi 2009-11-22 21:33:52 UTC
Looking further on, the card is now detected and working if plugged before booting (no need of reboot from WinXP). And this is satisfying to me.

The minor issue is now, when plugged after boot/login, the card is not detected nor working. 

Maybe the trick is to refresh some driver/subsystem, but this is beyond my capacities.

Comment 10 jdl 2010-03-04 10:24:27 UTC
I believe this bug is related to expresscards containing pci bridges. See http://kbase.redhat.com/faq/docs/DOC-19445. I have a similar card where coldplugging works fine, but hotplugging only works up to the pci bridge with lspci -tv showing:

 +-1c.4-[0000:05]----00.0-[0000:00]--

and dmesg saying:

[  137.490174] pciehp: No bus number available for hot-added bridge 0000:05:00.0

The bridge device is question is:

05:00.0 PCI bridge: Texas Instruments XIO2000(A)/XIO2200(A) PCI Express-to-PCI Bridge (rev 03)

In the expresscard doc at http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/BIOS_PCIe_HotPlug.doc they mention that PCI bridges need preallocated resources to work properly. I believe this is a resource allocation problem. 

(Note: I had to force pciehp to load with pciehp.pciehp_force=1 because my BIOS does not have the necessary _OSC and _OSHP tables to allow proper native OS hotplugging. My other expresscard without a PCI bridge works fine on my system)

Comment 11 Bug Zapper 2010-11-04 11:32:58 UTC
This message is a reminder that Fedora 12 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 12.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '12'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 12's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 12 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 12 Bug Zapper 2010-12-05 07:02:30 UTC
Fedora 12 changed to end-of-life (EOL) status on 2010-12-02. Fedora 12 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.