On 2012-11-28 12:41, Chandrabhanu Mahapatra wrote: > The register fields in dss_reg_fields specific to DISPC are moved from struct > omap_dss_features to corresponding dispc_reg_fields, initialized in struct > dispc_features, thereby enabling local access. > > Signed-off-by: Chandrabhanu Mahapatra <[email protected]> > --- > drivers/video/omap2/dss/dispc.c | 87 > ++++++++++++++++++++++++++++---- > drivers/video/omap2/dss/dss.h | 4 ++ > drivers/video/omap2/dss/dss_features.c | 28 ---------- > drivers/video/omap2/dss/dss_features.h | 7 --- > 4 files changed, 80 insertions(+), 46 deletions(-) > > diff --git a/drivers/video/omap2/dss/dispc.c b/drivers/video/omap2/dss/dispc.c > index 9f259ba..21fc522 100644 > --- a/drivers/video/omap2/dss/dispc.c > +++ b/drivers/video/omap2/dss/dispc.c > @@ -80,6 +80,16 @@ struct dispc_irq_stats { > unsigned irqs[32]; > }; > > +enum dispc_feat_reg_field { > + FEAT_REG_FIRHINC, > + FEAT_REG_FIRVINC, > + FEAT_REG_FIFOLOWTHRESHOLD, > + FEAT_REG_FIFOHIGHTHRESHOLD, > + FEAT_REG_FIFOSIZE, > + FEAT_REG_HORIZONTALACCU, > + FEAT_REG_VERTICALACCU, > +}; > + > struct dispc_features { > u8 sw_start; > u8 fp_start; > @@ -107,6 +117,8 @@ struct dispc_features { > > u32 buffer_size_unit; > u32 burst_size_unit; > + > + struct register_field *reg_fields; > };
Hmm, would it be simpler to have an explicit struct for the reg fields.
I mean something like:
struct dispc_reg_fields {
struct register_field firhinc;
struct register_field firvinc;
struct register_field fifo_low_threshold;
...
};
Then accessing it would be
dispc.feat->reg_fields.firhinc.start;
instead of
dispc.feat->reg_fields[FEAT_REG_FIFOSIZE].start;
Not a big difference, but I don't see any benefit in having an array of
reg fields here.
Tomi
signature.asc
Description: OpenPGP digital signature
