• Lee Jones's avatar
    mmc: sdhci-st: Handle interconnect clock · 3ae50f45
    Lee Jones authored
    Some ST platforms contain interconnect (ICN) clocks which must be handed
    correctly in order to obtain full functionality of a given IP.  In this
    case, if the ICN clocks are not handled properly by the ST SDHCI driver
    MMC will break and the following output can be observed:
    
        [   13.916949] mmc0: Timeout waiting for hardware interrupt.
        [   13.922349] sdhci: =========== REGISTER DUMP (mmc0)===========
        [   13.928175] sdhci: Sys addr: 0x00000000 | Version:  0x00001002
        [   13.933999] sdhci: Blk size: 0x00007040 | Blk cnt:  0x00000001
        [   13.939825] sdhci: Argument: 0x00fffff0 | Trn mode: 0x00000013
        [   13.945650] sdhci: Present:  0x1fff0206 | Host ctl: 0x00000011
        [   13.951475] sdhci: Power:    0x0000000f | Blk gap:  0x00000080
        [   13.957300] sdhci: Wake-up:  0x00000000 | Clock:    0x00003f07
        [   13.963126] sdhci: Timeout:  0x00000004 | Int stat: 0x00000000
        [   13.968952] sdhci: Int enab: 0x02ff008b | Sig enab: 0x02ff008b
        [   13.974777] sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
        [   13.980602] sdhci: Caps:     0x21ed3281 | Caps_1:   0x00000000
        [   13.986428] sdhci: Cmd:      0x0000063a | Max curr: 0x00000000
        [   13.992252] sdhci: Host ctl2: 0x00000000
        [   13.996166] sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x7c048200
        [   14.001990] sdhci: ===========================================
        [   14.009802] mmc0: Got data interrupt 0x02000000 even though no data operation was in progress.
    
    A decent point was raised about minimising the use of a local variable that
    we 'could' do without.  I've chosen consistency over the possibility of
    reducing the local variable count by 1.  Thinking that it's more important
    for the code to be grouped and authoured in a similar manner/style for
    greater maintainability/readability.
    
    Cc: stable@vger.kernel.org
    Tested-by: default avatarPeter Griffin <peter.griffin@linaro.org>
    Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
    Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
    3ae50f45
sdhci-st.c 14.4 KB