OpenVZ Forum


Home » International » Russian » kernels 3.4+ and android-x86 4.0-r1 (event clkid by default)
kernels 3.4+ and android-x86 4.0-r1 [message #51646] Mon, 08 September 2014 07:29
seyko2 is currently offline  seyko2
Messages: 188
Registered: February 2007
Location: Moscow
Senior Member

Привет!
Ядра 3.4+ содержат все драйвера (binder и ashmem), необходимые для работы android. Однако при попытке их использования с android-x86 v4.0-r1 не удаётся с помощью мыши войти в него -- нет реакции на кнопки. Удалось выяснить причину: эта версия ожидает eventfd с clkid CLOCK_MOMOTONIC при создании (по умолчанию), а эта переменная явно никак не инициализируется и получает значение CLOCK_REALTIME (0, так как память под структуру выделяется c помощью kzalloc). После
--- linux.old/drivers/input/evdev.c 2014-09-06 23:26:52.000000000 +0400
+++ linux/drivers/input/evdev.c 2014-09-06 23:26:29.000000000 +0400
@@ -317,6 +317,7 @@
        client->bufsize = bufsize;
        spin_lock_init(&client->buffer_lock);
        client->evdev = evdev;
+       client->clkid = CLOCK_MONOTONIC;
        evdev_attach_client(evdev, client);

        error = evdev_open_device(evdev);

ядра 3.4+ (в том числе и 3.10) нормально работают с android-x86 4.0-r1: показывают видео с youtube, работает google mail.

PS: video driver должен быть drm (radeon, intel, ...) -- со старыми framebuffer video в android не работает. И в файле drivers/gpu/drm/drm_fops.c в функции drm_open_helper должно быть
#ifdef CONFIG_NO_GPU_AUTHENTICATION
        priv->authenticated = 1;
#else
        priv->authenticated = capable(CAP_SYS_ADMIN);
#endif

(для работы android нужна опция CONFIG_NO_GPU_AUTHENTICATION)

И опция CONFIG_ANDROID_INTF_ALARM_DEV должна быть выключена. Иначе google mail не читает почту.

[Updated on: Mon, 08 September 2014 07:33]

Report message to a moderator

Previous Topic: kernel 3.10 and RTC
Next Topic: framebuffer for ct
Goto Forum:
  


Current Time: Thu Jan 26 22:45:44 GMT 2023

Total time taken to generate the page: 0.00809 seconds