Android 9 RIL and Kernel 4.14

Hello, everyone.
I’m trying to integrate Android 9 Ril Software available in Sierra Source website into my Android 9. The kernel I’m using is 4.14.61. I saw that last version of GobiNet was made for kernel 4.4.

So, when I’m trying to compile my kernel with all changes described in readme.txt of this RIL software, I’m getting the following error:

./arch/arm64/include/asm/atomic.h:58:39: error: ‘refcount_t {aka struct refcount_struct}’ has no member named ‘counter’
 #define atomic_read(v)   READ_ONCE((v)->counter)
./include/linux/compiler.h:250:30: note: in definition of macro ‘__READ_ONCE’
   __read_once_size_nocheck(&(x), __u.__c, sizeof(x)); \
                              ^
./arch/arm64/include/asm/atomic.h:58:26: note: in expansion of macro ‘READ_ONCE’
 #define atomic_read(v)   READ_ONCE((v)->counter)
                          ^~~~~~~~~
drivers/net/usb/QMIDevice.c:5981:16: note: in expansion of macro ‘atomic_read’
          ref = atomic_read( &pDev->mQMIDev.mCdev.kobj.kref.refcount );
                ^~~~~~~~~~~

Can someone help me with that? Have someone already tried to do this?

Thanks in advance!

The problem is solved.
In case you have the same problem, modify in QMIDevice.c:

ref = atomic_read( &pDev->mQMIDev.mCdev.kobj.kref.refcount );

to

 ref = atomic_read( &pDev->mQMIDev.mCdev.kobj.kref.refcount.refs );

Thank you all!

1 Like