lkml.org 
[lkml]   [2022]   [Oct]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH] xhci: print warning when HCE was set
    From
    On 14.10.2022 6.12, liulongfang wrote:
    > On 2022/9/26 15:58, Mathias Nyman wrote:
    >> On 24.9.2022 5.35, liulongfang wrote:
    >>> On 2022/9/22 21:01, Mathias Nyman Wrote:
    >>>> Hi
    >>>>
    >>>> On 15.9.2022 4.11, Longfang Liu wrote:
    >>>>> When HCE(Host Controller Error) is set, it means that the xhci hardware
    >>>>> controller has an error at this time, but the current xhci driver
    >>>>> software does not log this event.
    >>>>>
    >>>>> By adding an HCE event detection in the xhci interrupt processing
    >>>>> interface, a warning log is output to the system, which is convenient
    >>>>> for system device status tracking.
    >>>>>
    >>>>
    >>>> xHC should cease all activity when it sets HCE, and is probably not
    >>>> generating interrupts anymore.
    >>>>
    >>>> Would probably be more useful to check for HCE at timeouts than in the
    >>>> interrupt handler.
    >>>>
    >>>
    >>> Which function of the driver code is this timeout in?
    >>
    >> xhci_handle_command_timeout() will usually trigger at some point,
    >>
    >
    > Because this HCE error is reported in the form of an interrupt signal, it is more
    > concise to put it in xhci_irq() than in xhci_handle_command_timeout().
    >

    Patch was added to queue after you reported your xHC hardware triggers interrupts when HCE is set.
    I'll send it forward after 6.1-rc1

    xHCI specification still indicate HCE might not trigger interrupts:

    Section 4.24.1 -Internal Errors
    ...
    "Software should implement an algorithm for checking the HCE flag if the xHC is
    not responding."

    Thanks
    -Mathias

    \
     
     \ /
      Last update: 2022-10-14 09:55    [W:7.814 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site