lkml.org 
[lkml]   [2015]   [May]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.0 04/72] cxgb4: Fix MC1 memory offset calculation
    Date
    4.0-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Hariprasad Shenai <hariprasad@chelsio.com>

    [ Upstream commit 7f0b8a56c978b0a3315ac84c6cbb065413afb8e9 ]

    Commit 6559a7e8296002b4 ("cxgb4: Cleanup macros so they follow the same
    style and look consistent") introduced a regression where reading MC1
    memory in adapters where MC0 isn't present or MC0 size is not equal to MC1
    size caused the adapter to crash due to incorrect computation of memoffset.
    Fix is to read the size of MC0 instead of MC1 for offset calculation

    Signed-off-by: Steve Wise <swise@opengridcomputing.com>
    Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    ---
    drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
    +++ b/drivers/net/ethernet/chelsio/cxgb4/t4_hw.c
    @@ -492,7 +492,7 @@ int t4_memory_rw(struct adapter *adap, i
    memoffset = (mtype * (edc_size * 1024 * 1024));
    else {
    mc_size = EXT_MEM0_SIZE_G(t4_read_reg(adap,
    - MA_EXT_MEMORY1_BAR_A));
    + MA_EXT_MEMORY0_BAR_A));
    memoffset = (MEM_MC0 * edc_size + mc_size) * 1024 * 1024;
    }




    \
     
     \ /
      Last update: 2015-05-11 21:41    [W:4.036 / U:0.484 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site