At the end of the probe, initialize and schedule the event workqueue. It calls the hard reset function where reset checks are done to find if the device is out of the reset. Control queue initialization and the necessary control queue support is added. Introduce function pointers for the register operations which are different between PF and VF devices. Signed-off-by: Joshua Hay <joshua.a.hay@intel.com> Co-developed-by: Alan Brady <alan.brady@intel.com> Signed-off-by: Alan Brady <alan.brady@intel.com> Co-developed-by: Madhu Chittim <madhu.chittim@intel.com> Signed-off-by: Madhu Chittim <madhu.chittim@intel.com> Co-developed-by: Phani Burra <phani.r.burra@intel.com> Signed-off-by: Phani Burra <phani.r.burra@intel.com> Co-developed-by: Shailendra Bhatnagar <shailendra.bhatnagar@intel.com> Signed-off-by: Shailendra Bhatnagar <shailendra.bhatnagar@intel.com> Reviewed-by: Sridhar Samudrala <sridhar.samudrala@intel.com> Reviewed-by: Willem de Bruijn <willemb@google.com> Co-developed-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com> Signed-off-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
20 lines
484 B
C
20 lines
484 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/* Copyright (C) 2023 Intel Corporation */
|
|
|
|
#ifndef _IDPF_MEM_H_
|
|
#define _IDPF_MEM_H_
|
|
|
|
#include <linux/io.h>
|
|
|
|
struct idpf_dma_mem {
|
|
void *va;
|
|
dma_addr_t pa;
|
|
size_t size;
|
|
};
|
|
|
|
#define wr32(a, reg, value) writel((value), ((a)->hw_addr + (reg)))
|
|
#define rd32(a, reg) readl((a)->hw_addr + (reg))
|
|
#define wr64(a, reg, value) writeq((value), ((a)->hw_addr + (reg)))
|
|
#define rd64(a, reg) readq((a)->hw_addr + (reg))
|
|
|
|
#endif /* _IDPF_MEM_H_ */
|