> -----Original Message-----
> From: Thomas Gleixner [mailto:[email protected]]
> > > > +
> > > >         if (sources)
> > > > -               *sources = imx_gpcv2_instance->wakeup_sources;
> > > > +               *sources = cd->wakeup_sources;
> > > >
> > > >         return IMR_NUM;
> > >
> > > You do not need the intermediate storage at all.
> > >
> > > u32 imx_gpcv2_get_wakeup_source(u32 *sources) {
> > >   if (sources) {
> > >           for (i = 0; i < IMR_NUM; i++) {
> > >                   reg = cd->gpc_base + cd->cpu2wakeup + i * 4;
> > >                   sources[i] = readl_relaxed(reg);
> > >           }
> > >   }
> > >   ....
> >
> > Using the intermediate storage here can make the caller a little
> > easier, because the caller does not need to malloc the memory before the 
> > call.
> > Especially the caller does not even know how many memory to allocate
> > In the beginning.
> 
> Fair enough, but why do you need that case where sources can be NULL just to
> return IMR_NUM?

The intention is to get the IMR_NUM only. But so far no user uses this feature.

Thanks,
Shenwei

> Thanks,
> 
>       tglx

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to