Maybe taking a look at development/emulator/sensors/sensors_qemu.cpp would
help.
It contains the emulator-specific support for sensors in the system, but
implements the
sensor API expected by libhardware.

On Wed, Apr 1, 2009 at 5:09 PM, sm7xab <[email protected]> wrote:

>
> Hi!
>
> I'm trying to use the sensors API in Cupcake. Sadly, I find it is
> somewhat poorly documented and not much example code is available.
>
> Have used the overlay.cpp as a model for my sensor and I think I have
> initialized what needs to be initialized.
>
> However, my sensors module doesn't get loaded and I don't quite get
> the problem. Would appreciate if anyone on the list could help me get
> with the necessary information to get my module loaded 'cause
> currently I don't have a clue :-(
>
>
> BRs,
> /Jocke!
>
> Have updated hardware.c with a few extra LOGV(...) in hw_get_module
> (...) to get the following output:
>
> -- Modification to function:
>
>  for (i = 0; (status != 0) && (i < HAL_VARIANT_KEYS_COUNT); i++) {
>
>        /* Get variant or default */
>        LOGV("hal_module_info_get: variant_key[%d] = %s\n", i, variant_keys
> [i]);
>        LOGV("Hal defautl variant = %s\n", HAL_DEFAULT_VARIANT);
>
> -- end modification.
>
> V/HAL     (  875): hal_module_info_get: Load module
> id=sensors
> V/HAL     (  875): hal_module_info_get: variant_key[0] =
> ro.product.board
> V/HAL     (  875): Hal defautl variant =
> default
> V/HAL     (  875): hal_module_info_get: variant_key[1] =
> ro.board.platform
> V/HAL     (  875): Hal defautl variant =
> default
> V/HAL     (  875): hal_module_info_get: variant_key[2] =
> ro.arch
> V/HAL     (  875): Hal defautl variant =
> default
> V/HAL     (  875): hal_module_info_get: X id=sensors hmi=0x0
> status=-22
> D/SensorManager( 1102): found sensor: null, handle=0
>
> My sensor implementation lives in /system/lib/hw and is called
> sensors.so
>
> Output of objdump -T sensors.so:
>
> sensors.so:     file format elf32-little
>
> DYNAMIC SYMBOL TABLE:
> 00000730 l    d  .text  00000000 .text
> 00000ae8 l    d  .rodata        00000000 .rodata
> 00000d60 l    d  .ARM.extab     00000000 .ARM.extab
> 00001000 l    d  .data.rel.ro   00000000 .data.rel.ro
> 000011a4 l    d  .data  00000000 .data
> 000011a8 l    d  .bss   00000000 .bss
> 000009a9 g    DF .text  0000004c control_set_delay
> 00000001      DF *UND*  00000020 strerror
> 00000889 g    DF .text  00000038 get_sensors_list
> 00000db8 g    D  *ABS*  00000000 __exidx_end
> 00000000      DF *UND*  00000018 __aeabi_unwind_cpp_pr0
> 00000001      DF *UND*  0000000c __errno
> 00000851 g    DF .text  00000038 sens_control_close
> 000011ac g    D  *ABS*  00000000 _bss_end__
> 00000971 g    DF .text  00000038 control_wake
> 00000000      DF *UND*  00000000 memcpy
> 00000001      DF *UND*  00000274 malloc
> 000011a8 g    D  *ABS*  00000000 __bss_start__
> 00000001      DF *UND*  0000006c __android_log_print
> 00000d60 g    D  *ABS*  00000000 __exidx_start
> 00000819 g    DF .text  00000038 sens_data_close
> 000011ac g    D  *ABS*  00000000 __bss_end__
> 000011a8 g    D  *ABS*  00000000 __bss_start
> 00000000      DF *UND*  00000000 memset
> 000011ac g    D  *ABS*  00000000 __end__
> 00000001      DF *UND*  0000001e strcmp
> 000009f5 g    DF .text  00000088 control_activate
> 00000a7d g    DF .text  0000006c control_open_data_source
> 00000901 g    DF .text  00000038 data_close
> 000011a8 g    D  *ABS*  00000000 _edata
> 000011ac g    D  *ABS*  00000000 _end
> 00000939 g    DF .text  00000038 data_open
> 00000001      DF *UND*  0000002c open
> 00080000 g    D  *ABS*  00000000 _stack
> 00001000 g    DO .data.rel.ro   00000084 HMI
> 000011a4 g    D  .data  00000000 __data_start
> 000008c1 g    DF .text  00000040 data_poll
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to