Hi David, Thanks for the review comments. Please find my responses inline. Thanks, Iyappan On Sat, Apr 12, 2014 at 1:55 PM, David Miller <davem@xxxxxxxxxxxxx> wrote: > From: Iyappan Subramanian <isubramanian@xxxxxxx> > Date: Fri, 11 Apr 2014 20:06:24 -0700 > >> This patch adds network driver for APM X-Gene SoC ethernet. >> >> Signed-off-by: Iyappan Subramanian <isubramanian@xxxxxxx> >> Signed-off-by: Ravi Patel <rapatel@xxxxxxx> >> Signed-off-by: Keyur Chudgar <kchudgar@xxxxxxx> > > This driver is going to take a long to review and get to the point > where it can be integrated upstream, I'm just trying to set your > expectations properly. Okay. > >> +inline void set_desc(struct xgene_enet_desc *desc, enum desc_info_index index, >> + u64 val) >> +{ > > The "inline" tag is not necessary, let the compiler figure it out. Okay. I will remove inline keyword from the code. > >> + u8 word_index = desc_info[index].word_index; >> + u8 start_bit = desc_info[index].start_bit; >> + u8 len = desc_info[index].len; >> + >> + u64 mask = GENMASK_ULL((start_bit + len - 1), start_bit); >> + ((u64 *)desc)[word_index] = (((u64 *)desc)[word_index] & ~mask) >> + | (((u64) val << start_bit) & mask); > > This looks horrible for several reasons. > > First of all, do not put empty lines in the middle of a set of > local variable declarations. > > But do put a single empty line after the last local variable, and > before the actual code of the function starts. > > Get rid of all of this excessive casting. Tell the compiler what you're > actually doing, pass 'desc' in as "void *" and use local "u64 *" pointers > (to which 'desc' is assigned to) if you must. I will fix this in the next patch. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html