On Fri, Feb 05, 2021 at 06:09:12PM -0800, Daniele Ceraolo Spurio wrote: > This will be used for communication between the i915 driver and the mei > one. Defining it in a stand-alone patch to avoid circualr dependedencies > between the patches modifying the 2 drivers. > > Split out from an original patch from Huang, Sean Z > > Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@xxxxxxxxx> > --- > include/drm/i915_component.h | 1 + > include/drm/i915_pxp_tee_interface.h | 45 ++++++++++++++++++++++++++++ > 2 files changed, 46 insertions(+) > create mode 100644 include/drm/i915_pxp_tee_interface.h > > diff --git a/include/drm/i915_component.h b/include/drm/i915_component.h > index 55c3b123581b..c1e2a43d2d1e 100644 > --- a/include/drm/i915_component.h > +++ b/include/drm/i915_component.h > @@ -29,6 +29,7 @@ > enum i915_component_type { > I915_COMPONENT_AUDIO = 1, > I915_COMPONENT_HDCP, > + I915_COMPONENT_PXP > }; > > /* MAX_PORT is the number of port > diff --git a/include/drm/i915_pxp_tee_interface.h b/include/drm/i915_pxp_tee_interface.h > new file mode 100644 > index 000000000000..0efd14702b4b > --- /dev/null > +++ b/include/drm/i915_pxp_tee_interface.h > @@ -0,0 +1,45 @@ > +/* SPDX-License-Identifier: MIT */ > +/* > + * Copyright © 2020 Intel Corporation > + * > + * Authors: > + * Vitaly Lubart <vitaly.lubart@xxxxxxxxx> > + */ > + > +#ifndef _I915_PXP_TEE_INTERFACE_H_ > +#define _I915_PXP_TEE_INTERFACE_H_ > + > +#include <linux/mutex.h> > +#include <linux/device.h> > + > +/** > + * struct i915_pxp_component_ops - ops for PXP services. > + * @owner: Module providing the ops > + * @send: sends data to PXP > + * @receive: receives data from PXP > + */ > +struct i915_pxp_component_ops { > + /** > + * @owner: owner of the module provding the ops > + */ > + struct module *owner; > + > + int (*send)(struct device *dev, const void *message, size_t size); > + int (*recv)(struct device *dev, void *buffer, size_t size); > +}; > + > +/** > + * struct i915_pxp_component_master - Used for communication between i915 Could we have a better name than "master" here? main? controller? > + * and TEE drivers for the PXP services > + * @tee_dev: device that provide the PXP service from TEE Bus. > + * @pxp_ops: Ops implemented by TEE driver, used by i915 driver. > + */ > +struct i915_pxp_comp_master { also use a consistency here: or we go fully with component or fully with comp... > + struct device *tee_dev; > + const struct i915_pxp_component_ops *ops; > + > + /* To protect the above members. */ > + struct mutex mutex; > +}; > + > +#endif /* _I915_TEE_PXP_INTERFACE_H_ */ > -- > 2.29.2 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx