Hello Kiril,
I am at exactly the same point as you have described.
Apparently, my gps.imx5x.so file does not contain symbol "HMI" , the error spat on logcat:
E/HAL ( 2223): load: couldn't find symbol HMI
The Android.mk file looks 95% identical to yours, the only difference is that I am building the .so under hardware/mygpssupport instead of hardware/mx5/mygps....
How could I make HMI appear in the file, so code execution could proceed in hardware/libhardware/hardware.c:163:
hmi = (struct hw_module_t *)dlsym(handle, sym);
Many thanks,
Simonas