• Sai Prakash Ranjan's avatar
    coresight: tmc: Fix TMC mode read in tmc_read_unprepare_etb() · d021f5c5
    Sai Prakash Ranjan authored
    Reading TMC mode register without proper coresight power
    management can lead to exceptions like the one in the call
    trace below in tmc_read_unprepare_etb() when the trace data
    is read after the sink is disabled. So fix this by having
    a check for coresight sysfs mode before reading TMC mode
    management register in tmc_read_unprepare_etb() similar to
    tmc_read_prepare_etb().
    
      SError Interrupt on CPU6, code 0xbe000411 -- SError
      pstate: 80400089 (Nzcv daIf +PAN -UAO)
      pc : tmc_read_unprepare_etb+0x74/0x108
      lr : tmc_read_unprepare_etb+0x54/0x108
      sp : ffffff80d9507c30
      x29: ffffff80d9507c30 x28: ffffff80b3569a0c
      x27: 0000000000000000 x26: 00000000000a0001
      x25: ffffff80cbae9550 x24: 0000000000000010
      x23: ffffffd07296b0f0 x22: ffffffd0109ee028
      x21: 0000000000000000 x20: ffffff80d19e70e0
      x19: ffffff80d19e7080 x18: 0000000000000000
      x17: 0000000000000000 x16: 0000000000000000
      x15: 0000000000000000 x14: 0000000000000000
      x13: 0000000000000000 x12: 0000000000000000
      x11: 0000000000000000 x10: dfffffd000000001
      x9 : 0000000000000000 x8 : 0000000000000002
      x7 : ffffffd071d0fe78 x6 : 0000000000000000
      x5 : 0000000000000080 x4 : 0000000000000001
      x3 : ffffffd071d0fe98 x2 : 0000000000000000
      x1 : 0000000000000004 x0 : 0000000000000001
      Kernel panic - not syncing: Asynchronous SError Interrupt
    
    Fixes: 4525412a ("coresight: tmc: making prepare/unprepare functions generic")
    Reported-by: default avatarMike Leach <mike.leach@linaro.org>
    Signed-off-by: default avatarSai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>
    Tested-by: default avatarMike Leach <mike.leach@linaro.org>
    Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
    Link: https://lore.kernel.org/r/20200716175746.3338735-14-mathieu.poirier@linaro.orgSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    d021f5c5
coresight-tmc-etf.c 15.9 KB