linux-loongson/include/linux/intel_dg_nvm_aux.h
Reuven Abliyev a1c940cbf5
drm/xe/nvm: add support for non-posted erase
Erase command is slow on discrete graphics storage
and may overshot PCI completion timeout.
BMG introduces the ability to have non-posted erase.
Add driver support for non-posted erase with polling
for erase completion.

Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Reuven Abliyev <reuven.abliyev@intel.com>
Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
Link: https://lore.kernel.org/r/20250617145159.3803852-9-alexander.usyskin@intel.com
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2025-06-23 13:14:50 -04:00

33 lines
736 B
C

/* SPDX-License-Identifier: MIT */
/*
* Copyright(c) 2019-2025, Intel Corporation. All rights reserved.
*/
#ifndef __INTEL_DG_NVM_AUX_H__
#define __INTEL_DG_NVM_AUX_H__
#include <linux/auxiliary_bus.h>
#include <linux/container_of.h>
#include <linux/ioport.h>
#include <linux/types.h>
#define INTEL_DG_NVM_REGIONS 13
struct intel_dg_nvm_region {
const char *name;
};
struct intel_dg_nvm_dev {
struct auxiliary_device aux_dev;
bool writable_override;
bool non_posted_erase;
struct resource bar;
struct resource bar2;
const struct intel_dg_nvm_region *regions;
};
#define auxiliary_dev_to_intel_dg_nvm_dev(auxiliary_dev) \
container_of(auxiliary_dev, struct intel_dg_nvm_dev, aux_dev)
#endif /* __INTEL_DG_NVM_AUX_H__ */