> -----Original Message----- > From: Intel-xe <intel-xe-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Arun R > Murthy > Sent: Tuesday, December 3, 2024 11:25 AM > To: intel-xe@xxxxxxxxxxxxxxxxxxxxx; intel-gfx@xxxxxxxxxxxxxxxxxxxxx; dri- > devel@xxxxxxxxxxxxxxxxxxxxx > Cc: Murthy, Arun R <arun.r.murthy@xxxxxxxxx> > Subject: [PATCH 01/10] drm/crtc: Add histogram properties > > Add variables for histogram drm_property, its corrsponding crtc_state > variables and define the structure pointed by the blob property. > > Signed-off-by: Arun R Murthy <arun.r.murthy@xxxxxxxxx> > --- > include/drm/drm_crtc.h | 48 +++++++++++++++++++++++++++++++++++++ > include/uapi/drm/drm_mode.h | 11 +++++++++ > 2 files changed, 59 insertions(+) > > diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h index > 8b48a1974da3..3984cfa00cbf 100644 > --- a/include/drm/drm_crtc.h > +++ b/include/drm/drm_crtc.h > @@ -274,6 +274,38 @@ struct drm_crtc_state { > */ > struct drm_property_blob *gamma_lut; > > + /** > + * @histogram_enable: > + * > + * This will be set if histogram is enabled for the CRTC. > + */ Shouldn't it be "will be set if histogram needs to be enabled" Regards, Suraj Kandpal > + bool histogram_enable; > + > + /** > + * @histogram_data: > + * > + * This will hold the pointer to the struct drm_histogram. > + * The element data in drm_histogram will hold the pointer to the > + * histogram data generated by the hardware. > + */ > + struct drm_property_blob *histogram_data; > + > + /** > + * @histogram_-iet: > + * > + * This will hold the pointer to the struct drm_histogram. > + * The element data in drm_histogram will hold the pointer to the > + * histogram image enhancement generated by the algorithm that is > to > + * be fed back to the hardware. > + */ > + struct drm_property_blob *histogram_iet; > + /** > + * @histogram_iet_updates: > + * > + * Convey that the image enhanced data has been updated by the > user > + */ > + bool histogram_iet_updated; > + > /** > * @target_vblank: > * > @@ -1088,6 +1120,22 @@ struct drm_crtc { > */ > struct drm_property *scaling_filter_property; > > + /** > + * @histogram_enable_property: Optional CRTC property for enabling > or > + * disabling global histogram. > + */ > + struct drm_property *histogram_enable_property; > + /** > + * @histogram_data_proeprty: Optional CRTC property for getting the > + * histogram blob data. > + */ > + struct drm_property *histogram_data_property; > + /** > + * @histogram_iet_proeprty: Optional CRTC property for writing the > + * image enhanced blob data > + */ > + struct drm_property *histogram_iet_property; > + > /** > * @state: > * > diff --git a/include/uapi/drm/drm_mode.h b/include/uapi/drm/drm_mode.h > index c082810c08a8..da4396f57ed1 100644 > --- a/include/uapi/drm/drm_mode.h > +++ b/include/uapi/drm/drm_mode.h > @@ -1355,6 +1355,17 @@ struct drm_mode_closefb { > __u32 pad; > }; > > +/** > + * struct drm_histogram > + * data_ptr: pointer to the array fo u32 data. This data can be > +histogram > + * raw data or image enhanced data > + * nr_elements: number of elements pointed by the data @data_ptr */ > +struct drm_histogram { > + __u64 data_ptr; > + __u32 nr_elements; > +}; > + > #if defined(__cplusplus) > } > #endif > -- > 2.25.1