IB/hfi1: Preserve external device completed bit
The driver should not change the external device request completed bit when not actually doing an external device request. Reviewed-by: Easwar Hariharan <easwar.hariharan@intel.com> Signed-off-by: Dean Luick <dean.luick@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
9b86071c5e
commit
0080167467
|
@ -8488,7 +8488,10 @@ static int do_8051_command(
|
|||
*/
|
||||
if (type == HCMD_WRITE_LCB_CSR) {
|
||||
in_data |= ((*out_data) & 0xffffffffffull) << 8;
|
||||
reg = ((((*out_data) >> 40) & 0xff) <<
|
||||
/* must preserve COMPLETED - it is tied to hardware */
|
||||
reg = read_csr(dd, DC_DC8051_CFG_EXT_DEV_0);
|
||||
reg &= DC_DC8051_CFG_EXT_DEV_0_COMPLETED_SMASK;
|
||||
reg |= ((((*out_data) >> 40) & 0xff) <<
|
||||
DC_DC8051_CFG_EXT_DEV_0_RETURN_CODE_SHIFT)
|
||||
| ((((*out_data) >> 48) & 0xffff) <<
|
||||
DC_DC8051_CFG_EXT_DEV_0_RSP_DATA_SHIFT);
|
||||
|
|
Loading…
Reference in a new issue