[SCSI] bfa: kdump fix on 815 and 825 adapters
Root cause: When kernel crashes, On brocade 815/825 adapters, bfa IOC state machine and FW doesn't get a notification and hence are not cleanly shutdown. So registers holding driver/IOC state information are not reset back to valid disabled/parking values. This causes subsequent driver initialization to fail during kdump kernel boot. Fix description: during the initialization of first PCI function, reset corresponding register when unclean shutown is detect by reading chip registers. This will make sure that ioc/fw gets clean re-initialization. Signed-off-by: Vijaya Mohan Guvva <vmohan@brocade.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:

committed by
James Bottomley

orang tua
f2a0cc3ffd
melakukan
c679b599af
@@ -346,6 +346,12 @@ struct bfa_ioc_hwif_s {
|
||||
void (*ioc_sync_ack) (struct bfa_ioc_s *ioc);
|
||||
bfa_boolean_t (*ioc_sync_complete) (struct bfa_ioc_s *ioc);
|
||||
bfa_boolean_t (*ioc_lpu_read_stat) (struct bfa_ioc_s *ioc);
|
||||
void (*ioc_set_fwstate) (struct bfa_ioc_s *ioc,
|
||||
enum bfi_ioc_state fwstate);
|
||||
enum bfi_ioc_state (*ioc_get_fwstate) (struct bfa_ioc_s *ioc);
|
||||
void (*ioc_set_alt_fwstate) (struct bfa_ioc_s *ioc,
|
||||
enum bfi_ioc_state fwstate);
|
||||
enum bfi_ioc_state (*ioc_get_alt_fwstate) (struct bfa_ioc_s *ioc);
|
||||
};
|
||||
|
||||
/*
|
||||
|
Reference in New Issue
Block a user