On Tue, Mar 3, 2015 at 5:18 PM, Vince Hsu <vinceh@xxxxxxxxxx> wrote: > > On 03/03/2015 04:14 PM, Alexandre Courbot wrote: >> >> On Tue, Mar 3, 2015 at 5:09 PM, Vince Hsu <vinceh@xxxxxxxxxx> wrote: >>> >>> On 03/03/2015 04:03 PM, Alexandre Courbot wrote: >>>> >>>> On Mon, Mar 2, 2015 at 6:29 PM, Alexandre Courbot <gnurou@xxxxxxxxx> >>>> wrote: >>>>>>> >>>>>>> These functions are identical, excepted for the callback they are >>>>>>> invoking. Could you merge the common part into a function that >>>>>>> returns >>>>>>> the right client to call the callback on, or ERR_PTR(-EINVAL) in case >>>>>>> of failure? >>>>>> >>>>>> I couldn't think of a clever way to do this. Any ideas? :) >>>>> >>>>> How about something like this (warning: might now be that great, >>>>> untested): >>>>> >>>>> /* Have this in your .h and use it in your tegra_mc_ops struct */ >>>>> typedef int (*mc_op)(struct tegra_mc *mc, >>>>> const struct tegra_mc_hotreset *hotreset) >>>> >>>> This type should be named tegra_mc_op, since the header that defines >>>> it is in include/linux. >>> >>> Can we just leave it in this C file? I see no reason to place it in some >>> other >>> header file. :) >> >> Can you also move tegra_mc_ops's definition into the C file? If so I >> agree. Otherwise I prefer to make sure that the same type is used >> everywhere. > > No. Let's keep that in the include/soc/tegra/mc.h. Actually, couldn't some of these definitions be moved into drivers/memory/tegra/mc.h? I don't see any reference to e.g. struct tegra_mc_soc outside of drivers/memory/tegra/. These doesn't seem to be a need to make these available to everybody. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html