Document nested struct members with full names as described in
Documentation/doc-guide/kernel-doc.rst.
intel_gsc.h:34: warning: Excess struct member 'gem_obj' description in 'intel_gsc'
Also add missing field member descriptions.
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: dri-devel@lists.freedesktop.org
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Andi Shyti <andi.shyti@linux.intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231228234946.12405-1-rdunlap@infradead.org
(cherry picked from commit cd1d91115f
)
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
43 lines
1.1 KiB
C
43 lines
1.1 KiB
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright(c) 2019-2022, Intel Corporation. All rights reserved.
|
|
*/
|
|
#ifndef __INTEL_GSC_DEV_H__
|
|
#define __INTEL_GSC_DEV_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_i915_private;
|
|
struct intel_gt;
|
|
struct mei_aux_device;
|
|
|
|
#define INTEL_GSC_NUM_INTERFACES 2
|
|
/*
|
|
* The HECI1 bit corresponds to bit15 and HECI2 to bit14.
|
|
* The reason for this is to allow growth for more interfaces in the future.
|
|
*/
|
|
#define GSC_IRQ_INTF(_x) BIT(15 - (_x))
|
|
|
|
/**
|
|
* struct intel_gsc - graphics security controller
|
|
*
|
|
* @intf: gsc interface
|
|
* @intf.adev: MEI aux. device for this @intf
|
|
* @intf.gem_obj: scratch memory GSC operations
|
|
* @intf.irq: IRQ for this device (%-1 for no IRQ)
|
|
* @intf.id: this interface's id number/index
|
|
*/
|
|
struct intel_gsc {
|
|
struct intel_gsc_intf {
|
|
struct mei_aux_device *adev;
|
|
struct drm_i915_gem_object *gem_obj;
|
|
int irq;
|
|
unsigned int id;
|
|
} intf[INTEL_GSC_NUM_INTERFACES];
|
|
};
|
|
|
|
void intel_gsc_init(struct intel_gsc *gsc, struct drm_i915_private *i915);
|
|
void intel_gsc_fini(struct intel_gsc *gsc);
|
|
void intel_gsc_irq_handler(struct intel_gt *gt, u32 iir);
|
|
|
|
#endif /* __INTEL_GSC_DEV_H__ */
|