Help Using EM7355 with Android 6

I am having trouble merging the Sierra Wireless Android RIL 6.0 code into my Android source. I am building Android 6.0.1 for the Snapdragon u820 SOC (running Linux Kernel v3.18.20) and using the Android RIL 6.0.9 for ARM.

Specifically, I have copied the new driver files for the GobiNet driver into the kernel, but after compiling I receive errors. For example, in QMIDevice.c, there is a macro redefinition:

kernel/drivers/net/usb/QMIDevice.c:279:0: warning: “SET_CONTROL_LINE_STATE_REQUEST_TYPE” redefined
error, forbidden warning: QMIDevice.c:279

Looking at the code, it appears SET_CONTROL_LINE_STATE_REQUEST_TYPE is defined in QMI.h and QMIDevice.c. Is there anyway to resolve this redefinition? Are there specific compiler options I need to include/remove?

Generally “macro redefinition” is considered as warning by the compiler . It seems that in your compilation environment a flag named as -Werror has been set, this flag turns warning into error which does not allow compilation to be successful .
removing this flag from your compilation environment may solve your problem.