All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Clayton <chris2553@gmail.com>
To: Bjorn Helgaas <bhelgaas@google.com>
Cc: Martin Mokrejs <mmokrejs@fold.natur.cuni.cz>,
	Yijing Wang <wangyijing@huawei.com>,
	Yijing Wang <wangyijing0307@gmail.com>,
	LKML <linux-kernel@vger.kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"Rafael J. Wysocki" <rjw@sisk.pl>
Subject: Re: 3.8.0-rc4+ - Oops on removing WinTV-HVR-1400 expresscard TV Tuner
Date: Tue, 09 Jul 2013 10:35:24 +0100	[thread overview]
Message-ID: <51DBD95C.4060406@googlemail.com> (raw)
In-Reply-To: <CAErSpo4khnDo8_gbNsdr966Dba9tLPEg32iYE7TMiEjQOu-5aw@mail.gmail.com>

Hello again, Bjorn.

On 04/01/13 18:28, Bjorn Helgaas wrote:

<snip>

>>> Hi Chris,
>>>
>>> The current Linux acpiphp driver doesn't do anything unless it finds
>>> devices with _EJ0 or _RMV methods, and your DSDT has neither.  But I
>>> think that implementation is incorrect because I'm not convinced that
>>> those methods are required in order to do hotplug via ACPI.  For
>>> example, your DSDT *does* have an _L01 method that does notifications
>>> to the root ports.  I suspect that hotplug events on your box generate
>>> an SCI that invokes that method.  Linux basically ignores the
>>> resulting notify events, and I suspect that hotplug works on Windows
>>> because it is paying attention to them.
>>>
>>> Can you build a kernel with CONFIG_ACPI_DEBUG=y, do the following, and
>>> attach all the output to the bugzilla?
>>>
>>> 1) Boot with empty ExpressCard slot (without using "pcie_ports=native")
>>> 2) # echo 0x00010004 > /sys/module/acpi/parameters/debug_layer
>>> 3) # echo 0x08000004 > /sys/module/acpi/parameters/debug_level
>>> 4) # lspci -vv
>>> 5) # setpci -s 1c.3 0x42.w
>>> 6) # setpci -s 1c.3 0x5a.w
>>> 7) # setpci -s 1c.3 0xd8.l
>>> 8) Insert ExpressCard
>>> 9) # setpci -s 1c.3 0x5a.w
>>> 10) # dmesg
>>>
>>> Here's what I think we'll see:
>>>
>>> - Slot Implemented (bit 8 of XCAP at 0x42) set, indicating a slot is
>>> implemented below this root port
>>> - Hot Plug SCI Enable (bit 30 of MPC at 0xd8) set, indicating that the
>>> root port should generate an SCI whenever a hotplug event is detected
>>> - Presence Detect State (bit 6 of SLTSTS at 0x5a) change from 0 with
>>> the slot empty to 1 with the slot occupied
>>> - pciehp doing nothing (since _OSC didn't grant the OS permission to
>>> use PCIe native hotplug)
>>> - dmesg indication of the SCI, leading to a Bus Check notification to
>>> \_SB.PCI0.RP04, which is the 1c.3 root port leading to the ExpressCard
>>> slot
>>>
>>
>> As far as I can see, your predicted outcomes where correct. I've added the
>> logs to the bugzilla report.
>
> Yes, it behaved exactly as I expected.  I attached a few more details
> of the analysis to the bug report
> (https://bugzilla.kernel.org/show_bug.cgi?id=54981).  I think we need
> to rework acpiphp to fix this.  We will fix it, but I don't know who
> will do it, or when it will happen.  My list is growing faster than I
> can deal with :(
>

I see that there has been quite a bit of work in the acpiphp area 
recently. Is any of it intended to fix (or ease the subsequent fixing 
of) this bug report, please?

It's not a big deal if it isn't - I do have a system that, via kernel 
command line arguments, recognises expresscard devices when I plug them 
into the slot. But when the release comes along that includes the 
reworking of acpiphp that you mentioned, I will give extra attention to 
hotplugging when I try out the -rc kernels on my laptop.

Thanks

> Thanks very much for your excellent data collection!
>

It's my pleasure!

> Bjorn
>

  reply	other threads:[~2013-07-09  9:35 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-24 17:02 3.8.0-rc4+ - Oops on removing WinTV-HVR-1400 expresscard TV Tuner Chris Clayton
2013-01-24 19:21 ` Martin Mokrejs
2013-01-26 20:54   ` Chris Clayton
2013-01-26 21:14     ` Martin Mokrejs
2013-01-27  9:57       ` Chris Clayton
2013-01-27  2:45     ` Yijing Wang
2013-01-27 11:19       ` Chris Clayton
2013-01-27 12:18         ` Yijing Wang
2013-01-27 13:37           ` Chris Clayton
2013-01-27 14:26             ` Martin Mokrejs
2013-01-27 15:34               ` Chris Clayton
2013-01-27 16:41                 ` Martin Mokrejs
2013-01-27 22:53                   ` Chris Clayton
2013-01-27 23:21                     ` Martin Mokrejs
2013-01-28  2:40                     ` Yijing Wang
2013-01-28 10:12                       ` Chris Clayton
2013-01-28 10:56                         ` Martin Mokrejs
2013-01-28 11:01                           ` Chris Clayton
2013-01-28 11:15                             ` Yijing Wang
2013-01-28 10:58                         ` Yijing Wang
2013-01-28 11:23                         ` Chris Clayton
2013-01-28 12:12                           ` Martin Mokrejs
2013-01-28 12:26                             ` Yijing Wang
2013-01-28 19:11                             ` Chris Clayton
2013-01-28 21:02                               ` Martin Mokrejs
2013-01-31 12:09                                 ` Chris Clayton
2013-01-31 13:05                                   ` Martin Mokrejs
2013-03-06 23:45                                   ` Bjorn Helgaas
2013-03-07 16:28                                     ` Chris Clayton
2013-03-07 17:30                                       ` Bjorn Helgaas
2013-03-07 20:21                                         ` Chris Clayton
2013-03-08  0:39                                           ` Bjorn Helgaas
2013-03-08 10:44                                             ` Chris Clayton
2013-03-08 22:57                                               ` Bjorn Helgaas
2013-03-09  9:20                                                 ` Chris Clayton
2013-03-12 22:20                                                   ` Bjorn Helgaas
2013-03-15 22:48                                                     ` Bjorn Helgaas
2013-03-19 15:46                                                       ` Chris Clayton
2013-04-01 17:28                                                         ` Bjorn Helgaas
2013-07-09  9:35                                                           ` Chris Clayton [this message]
2013-07-09 20:19                                                             ` Bjorn Helgaas
2013-01-31 11:39 ` Chris Clayton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=51DBD95C.4060406@googlemail.com \
    --to=chris2553@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=mmokrejs@fold.natur.cuni.cz \
    --cc=rjw@sisk.pl \
    --cc=wangyijing0307@gmail.com \
    --cc=wangyijing@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.