This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

How to enable Wi-Fi Direct on Android 4.2, Pandaboard ES?

Hi,

I want to get Wi-Fi Direct on Pandaboard ES.

I tried AOSP 4.2 + omap-panda-3.0 kernel and linaro 13.02, but both environment didn't get Wi-Fi Direct.

How to do this?

Thanks

  • SELF SOLVED!, on Android 4.1
    1) src download OMAP4 4AJ.2.2
    2) two files edit
    dir : /omap4AJ.2.2/android/device/ti/panda
    2-1) device.mk
     frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
    +frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml \
     frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
    2-2) init.omap4pandaboard.rc
     service iprenew_eth0 /system/bin/dhcpcd -n
         disabled
         oneshot
    +
    +# Wi-Fi Direct
    +service p2p_supplicant /system/bin/wpa_supplicant \
    +    -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -N \
    +    -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf \
    +    -puse_p2p_group_interface=1
    +    class main
    +    socket wpa_wlan0 dgram 660 wifi wifi
    +    disabled
    +    oneshot
    +
    +service dhcpcd_p2p /system/bin/dhcpcd -aABKL
    +    disabled
    +    oneshot
    +
    +service iprenew_p2p /system/bin/dhcpcd -n
    +    disabled
    +    oneshot
    +
    +service hostapd_bin /system/bin/hostapd -d /data/misc/wifi/hostapd.conf
    +    socket wpa_wlan0 dgram 660 wifi wifi
    +    disabled
    +    oneshot
    3) build
    4) execute
    Yes!, We get Wi-Fi Direct!!
    Thanks a lot.
    ;;; but I want to get Wi-Fi Direct on Android 4.2,,,,
  • Kensuke,

    Were you able to get Wi-Fi Direct on Android 4.2?

    Regards,

    Abhijit

  • Hi, Abhijit

    We get enabled Wi-Fi Direct on Android 4.2, Pandaboard.

    Abstract

    working fine: AOSP + OMAP4AJ.2.4(wi-fi lib, supplicant) + OMAP4AJ.2.2(wi-fi drv)
    combination is so important

    working so-so: AOSP + OMAP4AJ.2.4(wi-fi lib, supplicant) + OMAP4AJ.2.4(wi-fi drv)
    p2p scan OK, p2p connect NG

    1. Source

    AOSP 4.2.1 - https://android.googlesource.com/platform/manifest -b android-4.2.1_r1
    Kernel 3.0 - https://android.googlesource.com/kernel/omap.git kernel android-omap-panda-3.0
    OMAP4AJ.2.4 - http://www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes (4AJ.2.4 is not panda, but omap)
    OMAP4AJ.2.2 - http://www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes

    2. Kernel Modify

    File: kernel/arch/arm/configs/panda_defconfig
    Edit:
    CONFIG_CFG80211=m
    CONFIG_LIB80211=m
    CONFIG_MAC80211=m
    CONFIG_WL12XX_MENU=m
    CONFIG_WL12XX=m
    CONFIG_WL12XX_SDIO=m

    3. Android Modify

    3.0 reference
    http://processors.wiki.ti.com/index.php/TI-Android-JB-PortingGuide#WLAN

    3.1 File: android/device/ti/panda/BoardConfig.mk
    - BOARD_WPA_SUPPLICANT_DRIVER := NL80211
    - WPA_SUPPLICANT_VERSION := VER_0_8_X
    - BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wl12xx
    - BOARD_WLAN_DEVICE := wl12xx_mac80211
    + USES_TI_MAC80211 := true
    + ifdef USES_TI_MAC80211
    + BOARD_WPA_SUPPLICANT_DRIVER := NL80211
    + WPA_SUPPLICANT_VERSION := VER_0_8_X_TI
    + BOARD_HOSTAPD_DRIVER := NL80211
    + BOARD_WLAN_DEVICE := wl12xx_mac80211
    + BOARD_SOFTAP_DEVICE := wl12xx_mac80211
    + WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/wl12xx_sdio.ko"
    + WIFI_DRIVER_MODULE_NAME := "wl12xx_sdio"
    + WIFI_FIRMWARE_LOADER := ""
    + COMMON_GLOBAL_CFLAGS += -DUSES_TI_MAC80211
    + endif

    3.2 File: android/device/ti/panda/device.mk
    - frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml
    + frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
    + frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml

    - PRODUCT_PACKAGES += \
    - dhcpcd.conf \
    - TQS_D_1.7.ini \
    - calibrator
    + PRODUCT_PACKAGES += \
    + dhcpcd.conf \
    + hostapd.conf \
    + wifical.sh \
    + wilink7.sh \
    + TQS_D_1.7.ini \
    + TQS_D_1.7_127x.ini \
    + crda \
    + regulatory.bin \
    + calibrator

    $(call inherit-product, device/ti/panda/wl12xx/ti-wpan-products.mk)
    + $(call inherit-product-if-exists, device/ti/proprietary-open/omap4/ti-omap4-vendor.mk)
    + $(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wlan/wl12xx-wlan-fw-products.mk)

    3.3 File: android/device/ti/panda/init.omap4pandaboard.rc
    on boot
    mount debugfs /sys/kernel/debug /sys/kernel/debug
    chmod 0666 /dev/pvrsrvkm
    + # wi-fi
    + mkdir /data/misc/wifi/sockets 0770 wifi wifi
    + mkdir /data/misc/dhcp 0770 dhcp dhcp
    + insmod /system/lib/modules/compat.ko
    + insmod /system/lib/modules/cfg80211.ko
    + insmod /system/lib/modules/mac80211.ko
    + insmod /system/lib/modules/wl12xx.ko

    # virtual sdcard daemon running as media_rw (1023)
    service sdcard /system/bin/sdcard /data/media /mnt/shell/emulated 1023 1023
    class late_start

    + service p2p_supplicant /system/bin/wpa_supplicant \
    + -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -N \
    + -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf
    + class main
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot

    - service wpa_supplicant /system/bin/wpa_supplicant -Dnl80211 -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf -dd
    - socket wpa_wlan0 dgram 660 wifi wifi
    - disabled
    - oneshot
    + service wpa_supplicant /system/bin/wpa_supplicant \
    + -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin
    + class main
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot
    - service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
    - disabled
    - oneshot
    + service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL
    + class main
    + disabled
    + oneshot

    service iprenew_wlan0 /system/bin/dhcpcd -n
    disabled
    oneshot

    + service dhcpcd_p2p /system/bin/dhcpcd -aABKL
    + disabled
    + oneshot
    +
    + service iprenew_p2p /system/bin/dhcpcd -n
    + disabled
    + oneshot

    - service dhcpcd_eth0 /system/bin/dhcpcd -ABKL
    - disabled
    - oneshot
    + service dhcpcd_eth0 /system/bin/dhcpcd -ABDKL
    + class main
    + disabled
    + oneshot

    service iprenew_eth0 /system/bin/dhcpcd -n
    disabled
    oneshot

    + service hostapd_bin /system/bin/hostapd -d /data/misc/wifi/hostapd.conf
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot

    3.4 proprietary-open copy
    OMAP4AJ.2.4 src: android/device/ti/proprietary-open
    AOSP dest: android/device/ti

    3.5 wpa_supplicant8_ti copy
    OMAP4AJ.2.4 src: android/external/wpa_supplicant_8_ti
    AOSP dest: android/external

    3.6 libhardware_legacy replace
    OMAP4AJ.2.4 src: android/hardware/libhardware_legacy/wifi/wifi.c
    AOSP dest: android/hardware/libhardware_legacy/wifi/

    3.7 android/hardware/libhardware_legacy/Android.mk edit
    File: android/hardware/libhardware_legacy/Android.mk

    LOCAL_SHARED_LIBRARIES := libcutils libwpa_client
    LOCAL_INCLUDES += $(LOCAL_PATH)
    + #ifdef USES_TI_MAC80211
    + LOCAL_STATIC_LIBRARIES := libnl_2
    + LOCAL_C_INCLUDES += external/libnl-headers
    + #endif
    LOCAL_CFLAGS += -DQEMU_HARDWARE
    QEMU_HARDWARE := true

    3.8 header file copy
    OMAP4AJ.2.4 src: android/hardware/libhardware_legacy/nl80211.h AOSP
    dest: android/hardware/libhardware_legacy

    3.9 Wi-Fi Driver replace
    OMAP4AJ.2.2 src: android/hardware/ti/wlan
    AOSP dest: android/hardware/ti

    3.10 netd replace
    OMAP4AJ.2.4 src: android/system/netd
    AOSP dest: android/system

    4 build

    4.1 kernel
    $ make ARCH=arm panda_defconfig
    $ make -j8 ARCH=arm uImage
    $ make -j8 ARCH=arm modules

    4.2 Wi-Fi Driver
    $ export KERNEL_DIR=${YOUR_PATH}/kernel
    $ export KLIB=${KERNEL_DIR}
    $ export KLIB_BUILD=${KERNEL_DIR}

    $ cd $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx
    $ make -j8 ARCH=arm

    $ cd $MYDROID/out/target/product/panda
    $ mkdir -p system/lib/modules
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/compat/compat.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/net/wireless/cfg80211.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/net/mac80211/mac80211.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/drivers/net/wireless/wl12xx/wl12xx.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/drivers/net/wireless/wl12xx/wl12xx_sdio.ko system/lib/modules/

    4.3 Android
    $ cd $MYDROID
    $ source build/envsetup.sh
    $ lunch full_panda-eng
    $ make -j8


    this guide may be not correct,
    i want to additional confirm someone, ^_^

    ;;; Wi-Fi Direct is OK. next, I want to get Miracast on Android 4.2, Panda;;;

  • Hi ,

    Are you trying to use panda board as Miracast source device or sink device?

     Do you think Miracast library of Android 4.2 has the functionality of sink device implemented already or you are going to implement it?

    Thanks

  • Hi, Sam

    I'm trying both Miracast source and sink on panda, AOSP Android 4.2.

    Source:

    try to connect a sink PTV3000, problems occurred.

    1. hdcp.so not found on panda. skip this, in next, 
    2. software encoding error occurred processing mime type "video/avc". skip software encoding,
    3. hardware encoder firmware "ducati-m3.bin" load error.

    I couldn't solve these problems.

    Sink:

    in AOSP 4.2, sink function seems to be implemented in part.

    I don't know how to coding "xxx" below code.

    /android-4.2.1_r1.2/frameworks/av/media/libstagefright/wifi-display/sink/WifiDisplaySink.cpp

    void WifiDisplaySink::onGetParameterRequest(
    int32_t sessionID,
    int32_t cseq,
    const sp<ParsedMessage> &data) {
    AString body =
    "wfd_video_formats: xxx\r\n"
    "wfd_audio_codecs: xxx\r\n"
    "wfd_client_rtp_ports: RTP/AVP/UDP;unicast xxx 0 mode=play\r\n";

    hint:

    /system/bin/wfd command in AOSP 4.2.2, it's command can invoke miracast source and sink in adb shell command line.

  • Hi  Sato,

    Thanks for your reply. 

    In order to get a better practical understanding of the Miracast standard, we can install a packet sniffer like wireshark or preferably kismet on reference source device like Nexus4  ( and reference sink device if we can) then establish connection between the reference sink device and the reference source device. Save the log file. This should be our guide line on that stage.

    Which reference source device you are using? Did you update PTV3000 to Firmware Version 2.2.15? They don't ship it with the update.

    Please, if it is OK, can you share the packet log files of the references' conversation.

    Thanks, 

  • I'm using,

    Source device:

    Nexus 4:http://nosemaj.org/howto-build-android-nexus-4

    build from source code with additional log output.

    Sink device:

    PTV3000 2.2.9

    RTSP log added

    send source to sink

    /frameworks/av/media/libstagefright/wifi-display/ANetworkSession.cpp::sendRequest();

    receive from sink

    /frameworks/av/media/libstagefright/wifi-display/source/WifiDisplaySource.cpp::onReceiveClientData();

    i'm a little busy in a few days, so please wait.

    BTW, this discussion is "How to enable Wi-Fi Direct on Android 4.2, Pandaboard ES?", probably we need a new discussion.

  • Hi Kensuke,

    Is this you?

    http://www.youtube.com/watch?v=IeXtIGuha80

    It has your user name 

  • Hi,

    Yes! it's me.

    other movies here.
    http://www.youtube.com/watch?v=KNEmaIr3FEg
    http://www.youtube.com/watch?v=20s567tzTdM


    i'm succeed Miracast patches to AOSP.
    almostly works source & sink, exclude Pandaboard.

    my patches enabled Miracast below devices.
    -Source : Nexus 7(without HDCP), Nexus 10(without HDCP), Galaxy Nexus(without HDCP)
    -Sink : Nexus 4, Nexus 7, Galaxy Nexus, Galaxy S2, Wandboard Dual(wfd cmd)


    patches repository
    https://github.com/kensuke/How-to-Miracast-on-AOSP/

    documentation
    https://github.com/kensuke/How-to-Miracast-on-AOSP/wiki

  • Hi Sato:

    I follow your steps to build and boot up Panda, but I get the problem as the following.

    That seems the sgx binaries mismatch the kernel version.

    Where did you get the sgx binaries? Or did you directly use binaries included in the OMAP4AJ.2.4 src: android/device/ti/proprietary-open?

    Thanks!!


    Simon

    ...

    [    3.051605] PVR: PVRCore_Init

    [    3.055236] PVR: PVRSRVDriverProbe(pDevice=ee4ade00)

    [    3.055328] PVR: SGX register base: 0x56000000

    [    3.065948] PVR: SGX register size: 65535

    [    3.070526] PVR: SGX IRQ: 53

    [    3.070587] PVR: EnableSystemClocks: Enabling System Clocks

    [    3.080047] PVR_K:(Warning): EnableSGXClocks: Unable to scale SGX frequency (EBUSY) [167, drivers

    /gpu/pvr/omap4/sysutils_linux.c]

    [    3.093170] PVR_K:(Warning): EnableSGXClocks: Unable to scale SGX frequency (EBUSY) [167, drivers

    /gpu/pvr/omap4/sysutils_linux.c]

    [    3.106201] PVR: PVRCore_Init: major device 251

    [    3.118347] brd: module loaded

    [    3.125183] loop: module loaded

    [    3.128723] (stk) :sysfs entries created

    [    3.133361] (stk) : debugfs entries created

    [    3.138061] (hci_tty): inside hci_tty_init

    [    3.143096] (hci_tty): allocated 250, 0

    [    3.150054] omap_temp_sensor omap_temp_sensor.0: omap_temp_sensor probed

    [    3.159179] PPP generic driver version 2.4.2

    [    3.165740] PPP Deflate Compression module registered

    [    3.171508] PPP BSD Compression module registered

    [    3.177642] PPP MPPE Compression module registered

    [    3.182983] NET: Registered protocol family 24

    [    3.189971] usbcore: registered new interface driver asix

    [    3.196166] usbcore: registered new interface driver cdc_ether

    [    3.202667] usbcore: registered new interface driver smsc95xx

    [    3.209350] usbcore: registered new interface driver net1080

    [    3.215728] usbcore: registered new interface driver cdc_subset

    [    3.222412] usbcore: registered new interface driver zaurus

    [    3.228668] cdc_ncm: 04-Aug-2011

    [    3.228698] usbcore: registered new interface driver cdc_ncm

    [    3.238800] usbcore: registered new interface driver zd1201

    [    3.245086] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver

    [    3.252563] ehci-omap ehci-omap.0: OMAP-EHCI Host Controller

    [    3.259063] ehci-omap ehci-omap.0: new USB bus registered, assigned bus number 1

    [    3.267425] ehci-omap ehci-omap.0: irq 109, io mem 0x4a064c00

    [    3.293640] ehci-omap ehci-omap.0: USB 2.0 started, EHCI 1.00

    [    3.300109] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002

    [    3.307800] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1

    [    3.315887] usb usb1: Product: OMAP-EHCI Host Controller

    [    3.321807] usb usb1: Manufacturer: Linux 3.0.31-gcb5fc50-dirty ehci_hcd

    [    3.329345] usb usb1: SerialNumber: ehci-omap.0

    [    3.334960] hub 1-0:1.0: USB hub found

    [    3.339202] hub 1-0:1.0: 3 ports detected

    [    3.375122] usbcore: registered new interface driver cdc_acm

    [    3.381591] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

    [    3.390533] Initializing USB Mass Storage driver...

    [    3.396087] usbcore: registered new interface driver usb-storage

    [    3.402862] USB Mass Storage support registered.

    [    3.408233] usbcore: registered new interface driver usbserial

    [    3.414794] usbserial: USB Serial Driver core

    [    3.419677] USB Serial support registered for Keyspan - (without firmware)

    [    3.427520] USB Serial support registered for Keyspan 1 port adapter

    [    3.434631] USB Serial support registered for Keyspan 2 port adapter

    [    3.441802] USB Serial support registered for Keyspan 4 port adapter

    [    3.449127] usbcore: registered new interface driver keyspan

    [    3.455444] keyspan: v1.1.5:Keyspan USB to Serial Converter Driver

    [    3.463989] android_usb gadget: Mass Storage Function, version: 2009/09/11

    [    3.471649] android_usb gadget: Number of LUNs=1

    [    3.476928]  lun0: LUN: removable file: (no medium)

    [    3.482666] android_usb gadget: android_usb ready

    [    3.488159] mousedev: PS/2 mouse device common for all mice

    [    3.494689] input: gpio-keys as /devices/platform/gpio-keys/input/input0

    [    3.503417] i2c /dev entries driver

    [    3.507995] lirc_dev: IR Remote Control driver registered, major 248

    [    3.515197] IR NEC protocol handler initialized

    [    3.520324] IR RC5(x) protocol handler initialized

    [    3.525695] IR RC6 protocol handler initialized

    [    3.530822] IR JVC protocol handler initialized

    [    3.535888] IR Sony protocol handler initialized

    [    3.541046] IR RC5 (streamzap) protocol handler initialized

    [    3.547363] IR LIRC bridge handler initialized

    [    3.552337] dmm: probe base: fd300000, irq 145

    [    3.560089] device-mapper: uevent: version 1.0.3

    [    3.565612] device-mapper: ioctl: 4.20.0-ioctl (2011-02-02) initialised: dm-devel@redhat.com

    [    3.575103] Bluetooth: HCI UART driver ver 2.2

    [    3.580078] Bluetooth: HCI H4 protocol initialized

    [    3.580139] Bluetooth: Bluetooth Driver for TI WiLink - Version 1.0

    [    3.593719] cpuidle: using governor ladder

    [    3.593872] cpuidle: using governor menu

    [    3.602783] (stc): st_register(2)

    [    3.602783] (stc):  chnl_id list empty :2

    [    3.602783] (stk) : st_kim_start

    [    3.618377] usbcore: registered new interface driver usbhid

    [    3.625518] usbhid: USB HID core driver

    [    3.629974] logger: created 256K log 'log_main'

    [    3.635498] logger: created 256K log 'log_events'

    [    3.641021] logger: created 256K log 'log_radio'

    [    3.646362] logger: created 256K log 'log_system'

    [    3.652343] OMAP HSI: HSI DRIVER Version 0.4.1

    [    3.657714] omap_hsi omap_hsi.0: Registering IRQ mpu_p1 (99)

    [    3.657714] omap_hsi omap_hsi.0: Registering IRQ mpu_dma (103)

    [    3.670806] omap_hsi omap_hsi.0: HSI Hardware REVISION 0x50043101

    [    3.673217] usb 1-1: new high speed USB device number 2 using ehci-omap

    [    3.684997] SDP4430 SoC init

    [    3.702453] (stk) :ldisc_install = 1

    [    3.740386] asoc: null-codec-dai <-> MultiMedia1 mapping ok

    [    3.748474] asoc: null-codec-dai <-> MultiMedia2 mapping ok

    [    3.755645] asoc: null-codec-dai <-> Voice mapping ok

    [    3.762786] asoc: null-codec-dai <-> Tones mapping ok

    [    3.769470] asoc: null-codec-dai <-> Vibra mapping ok

    [    3.776367] asoc: null-codec-dai <-> MODEM mapping ok

    [    3.782867] asoc: null-codec-dai <-> MultiMedia1 LP mapping ok

    [    3.789947] asoc: FM Digital <-> omap-mcbsp-dai.1 mapping ok

    [    3.797790] asoc: twl6040-dl1 <-> mcpdm-dl mapping ok

    [    3.805786] twl6040-codec twl6040-codec: ASoC: Failed to create Aux/FM Stereo In debugfs file

    [    3.815856] asoc: twl6040-dl1 <-> mcpdm-dl1 mapping ok

    [    3.822509] asoc: twl6040-ul <-> mcpdm-ul1 mapping ok

    [    3.828674] asoc: twl6040-dl2 <-> mcpdm-dl2 mapping ok

    [    3.835113] asoc: twl6040-vib <-> mcpdm-vib mapping ok

    [    3.841186] usb 1-1: New USB device found, idVendor=0424, idProduct=9514

    [    3.841644] asoc: Bluetooth <-> omap-mcbsp-dai.0 mapping ok

    [    3.842590] asoc: Bluetooth <-> omap-mcbsp-dai.0 mapping ok

    [    3.843200] asoc: FM Digital <-> omap-mcbsp-dai.1 mapping ok

    [    3.843994] asoc: MODEM <-> omap-mcbsp-dai.1 mapping ok

    [    3.843994] input: Panda Headset Jack as /devices/platform/soc-audio/sound/card0/input1

    [    3.874786] asoc: hdmi-audio-codec <-> hdmi-audio-dai mapping ok

    [    3.874786] ALSA device list:

    [    3.875305]   #0: TI OMAP4 Board

    [    3.875305]   #1: OMAP4HDMI

    [    3.875427] GACT probability NOT on

    [    3.875427] Mirror/redirect action on

    [    3.875427] u32 classifier

    [    3.875457]     Actions configured

    [    3.875457] Netfilter messages via NETLINK v0.30.

    [    3.875457] nf_conntrack version 0.5.0 (11635 buckets, 46540 max)

    [    3.875549] ctnetlink v0.93: registering with nfnetlink.

    [    3.876678] NF_TPROXY: Transparent proxy support initialized, version 4.1.0

    [    3.876678] NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.

    [    3.876678] xt_time: kernel timezone is -0000

    [    3.877105] ip_tables: (C) 2000-2006 Netfilter Core Team

    [    3.877105] arp_tables: (C) 2002 David S. Miller

    [    3.879608] TCP cubic registered

    [    3.880401] NET: Registered protocol family 10

    [    3.886169] Mobile IPv6

    [    3.886169] ip6_tables: (C) 2000-2006 Netfilter Core Team

    [    3.886230] IPv6 over IPv4 tunneling driver

    [    3.892456] NET: Registered protocol family 17

    [    3.892456] NET: Registered protocol family 15

    [    3.892700] Bluetooth: RFCOMM TTY layer initialized

    [    3.892700] Bluetooth: RFCOMM socket layer initialized

    [    3.892761] Bluetooth: RFCOMM ver 1.11

    [    3.892761] Bluetooth: BNEP (Ethernet Emulation) ver 1.3

    [    3.892761] NET: Registered protocol family 35

    [    3.892761] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4

    [    4.021423] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0

    [    4.034545] ThumbEE CPU extension supported.

    [    4.034759] hub 1-1:1.0: USB hub found

    [    4.043426] hub 1-1:1.0: 5 ports detected

    [    4.043457] Registering SWP/SWPB emulation handler

    [    4.050292] Reprogramming LPDDR2 timings to 400000000 Hz

    [    4.052886] Power Management for TI OMAP4.

    [    4.053070] OMAP4 PM: Static dependency added between MPUSS and DUCATI <-> L4_PER/CFG and L3_1.

    [    4.053253] sr_init: No PMIC hook to init smartreflex

    [    4.053619] smartreflex smartreflex.0: omap_sr_probe: SmartReflex driver initialized

    [    4.053619] smartreflex smartreflex.1: omap_sr_probe: SmartReflex driver initialized

    [    4.054229] smartreflex smartreflex.2: omap_sr_probe: SmartReflex driver initialized

    [    4.054687] SmartReflex class 1.5 driver: initialized (86400000ms)

    [    4.062591] clock: disabling unused clocks to save power

    [    4.074920] mmc0: host does not support reading read-only switch. assuming write-enable.

    [    4.090606] sr_class1p5_calib_work: mpu: Calibration complete: Voltage:Nominal=1203000,Calib=1030

    000,margin=0

    [    4.090667] sr_class1p5_calib_work: iva: Calibration complete: Voltage:Nominal=1140000,Calib=1012

    840,margin=0

    [    4.090820] sr_class1p5_calib_work: core: Calibration complete: Voltage:Nominal=1127000,Calib=103

    8160,margin=13000

    [    4.090911] mmc0: new high speed SD card at address 0002

    [    4.091613] mmcblk0: mmc0:0002 00000 1.90 GiB

    [    4.099212] Alternate GPT is invalid, using primary GPT.

    [    4.099273]  mmcblk0: p1 p2 p3 p4 p5 p6 p7

    [    4.304779] mmc1: card claims to support voltages below the defined range. These will be ignored.

    [    4.342987] mmc1: queuing unknown CIS tuple 0x91 (3 bytes)

    [    4.350006] mmc1: new SDIO card at address 0001

    [    4.379669] sr_class1p5_calib_work: mpu: Calibration complete: Voltage:Nominal=1380000,Calib=1250

    000,margin=0

    [    4.469421] cannot apply mgr(lcd) on inactive device

    [    4.475494] usb 1-1.1: new high speed USB device number 3 using ehci-omap

    [    4.483337] omapfb omapfb: failed to apply dispc config

    [    4.492218] cannot apply mgr(tv) on inactive device

    [    4.497985] omapfb omapfb: failed to apply dispc config

    [    4.506774] cannot apply mgr(lcd2) on inactive device

    [    4.512725] omapfb omapfb: failed to apply dispc config

    [    4.521636] omapdss DPI: Could not find exact pixel clock. Requested 74250 kHz, got 76800 kHz

    [    4.533843] regulator_init_complete: VANA: incomplete constraints, leaving on

    [    4.542938] regulator_init_complete: VDAC: incomplete constraints, leaving on

    [    4.551177] regulator_init_complete: VCXIO: incomplete constraints, leaving on

    [    4.560180] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)

    [    4.567993] Freeing init memory: 252K

    [    4.578247] init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_score_adj instead.

    [    4.630279] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00

    [    4.637908] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0

    [    4.649383] smsc95xx v1.0.4

    [    4.666320] keychord: using input dev gpio-keys for fevent

    [    4.729827] smsc95xx 1-1.1:1.0: eth0: register 'smsc95xx' at usb-ehci-omap.0-1.1, smsc95xx USB 2.

    0 Ethernet, a2:b3:58:fa:12:0d

    [    4.809692] sr_class1p5_calib_work: core: Calibration complete: Voltage:Nominal=962000,Calib=9115

    60,margin=38000

    [    4.826202] sr_class1p5_calib_work: mpu: Calibration complete: Voltage:Nominal=1025000,Calib=8700

    00,margin=10000

    [    4.852691] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: (null)

    [    4.871795] (stk) :ldisc installation timeout

    [    4.876464] (stk) :ldisc_install = 0

    [    4.881011] sr_class1p5_calib_work: mpu: Calibration complete: Voltage:Nominal=1317000,Calib=1170

    000,margin=0

    [    5.217987] EXT4-fs (mmcblk0p6): recovery complete

    [    5.307495] EXT4-fs (mmcblk0p6): mounted filesystem with ordered data mode. Opts: nomblk_io_submi

    t,errors=panic

    [    6.043670] (stk) : timed out waiting for ldisc to be un-installed

    [    6.057403] EXT4-fs (mmcblk0p7): recovery complete

    [    6.156829] (stk) :ldisc_install = 1

    [    6.262451] EXT4-fs (mmcblk0p7): mounted filesystem with ordered data mode. Opts: nomblk_io_submi

    t,errors=panic

    [    6.313568] init: cannot find '/system/bin/rild', disabling 'ril-daemon'

    [    6.324340] init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'

    [    6.332427] omap-rproc omap-rproc.1: rproc_loader_cont: failed to load ducati-m3.bin

    [    6.359527] android_usb: already disabled

    [    6.369689] adb_open

    [    6.372344] adb_bind_config

    [    6.574188] (stc): st_tty_open

    [    6.577606] (stk) :line discipline installed

    [    6.583496] (stk) :TIInit_7.6.15.btsshell@android:/ $

    [    6.740112] (stc): add_channel_to_table: id 2

    [    6.745605] (stc): st_register(3)

    [    6.749359] (stc): add_channel_to_table: id 3

    [    6.757049] (stc): st_register(4)

    [    6.760803] (stc): add_channel_to_table: id 4

    [    7.131317] PVR_K:(Error): BridgedDispatchKM: Driver initialisation not completed yet. [4807, dri

    vers/gpu/pvr/bridged_pvr_bridge.c]

    [    7.729553] init: untracked pid 99 exited

    [    8.828948] (stc): remove_channel_from_table: id 2

    [    8.834991] (stc): remove_channel_from_table: id 3

    [    8.841766] (stc): remove_channel_from_table: id 4

    [    8.847137] (stc):  all chnl_ids unregistered

    [    8.852874] (stk) :ldisc_install = 0

    [    8.858673] (stc): st_tty_close

    [    8.859466] (stc): 2 not un-registered

    [    8.867187] (stc): 3 not un-registered

    [    8.867279] (stc): 4 not un-registered

    [   11.815765] PVR_K:(Error): BridgedDispatchKM: Driver initialisation not completed yet. [4807, dri

    vers/gpu/pvr/bridged_pvr_bridge.c]

    [   12.173706] init: untracked pid 265 exited

    [   16.258148] warning: `zygote' uses 32-bit capabilities (legacy support in use)

    [   16.271972] PVR_K:(Error): BridgedDispatchKM: Driver initialisation not completed yet. [4807, dri

    vers/gpu/pvr/bridged_pvr_bridge.c]

    [   16.298004] alarm_set_rtc: no RTC, time will be lost on reboot

    [   16.541595] init: untracked pid 337 exited

    [   16.829772] init: untracked pid 344 exited

    [   21.908660] PVR_K:(Error): BridgedDispatchKM: Driver initialisation not completed yet. [4807, dri

    vers/gpu/pvr/bridged_pvr_bridge.c]

    [   22.190429] init: untracked pid 365 exited

    [   22.267669] init: untracked pid 361 exited

    [   26.342742] PVR_K:(Error): BridgedDispatchKM: Driver initialisation not completed yet. [4807, dri

    vers/gpu/pvr/bridged_pvr_bridge.c]

    [   26.605743] init: untracked pid 388 exited

    [   26.691497] init: untracked pid 392 exited

  • Hi, Simon


    what's version of your android base source?

    my post is based AOSP, plus OMAP4AJ.2.X wi-fi part.

    http://e2e.ti.com/support/low_power_rf/f/307/p/249179/904079.aspx#904079

    if AOSP based, SGX can download google site.

    i'm using AOSP 4.2.1 and SGX 20120807.

    https://developers.google.com/android/nexus/drivers?hl=ja

    basically pandaboard AOSP build, i'm refer this site, written by Japanese.

    http://blog.sola-dolphin-1.net/archives/4334161.html

    thanks

  • Dear Sato:

    Thanks for your response!  Actually I have solved the sgx issue earlier. I followed your guide to enable the wi-fi direct function on Panda Board, therefore my android source is based on AOSP 4.2.1_r1, and I used imgtec-panda-20130603-539d1ac3.tgz as SGX binaries.

    I found there are some modification on your guide:

    1. Remove Android.mk under device/ti/proprietary-open/omap4/sgx/Android.mk, since it will extract the SGX binaries contained by sgx.tgz to Panda Board file system. According to your steps, the proprietary-open directory is copied from OMAP4AJ.2.4 source tree, but they are compiled based on kernel 3.4, I think, not kernel 3.0.31. If those sgx binaries are used there will be booting up issue as I posted.

    2. Modify the following lines of init.omap4pandaboard.rc:

    -service pvrsrvinit /vendor/bin/pvrsrvinit

    +service pvrsrvctl /vendor/bin/pvrsrvctl --start --no-module

    "pvrsrvinit" is contained in old version SGX package, the same in OMAP4AJ.2.4 source tree, but "pvrsrvctl" is used by 20120807 and 20130603 SGX binary package. If the init script is not modified, there will be booting up issue.

    I hope those information will help if others want to enable wi-fi direct function based on Panda Board with Android JB 4.2.1_r1.

    Simon

  • how build OMAP4AJ.2.4 in ubuntu 12.04 and someone already proved this

  • How to enable Wi-Fi Direct on Android 4.2, Pandaboard ES? how

  • Carlos Id��rraga said:

    how build OMAP4AJ.2.4 in ubuntu 12.04 and someone already proved this

    i hope OMAP4AJ.2.5, panda, Android 4.2.2, but documentation not yed finished.

    http://omappedia.org/wiki/4AJ.2.5_OMAP4-Panda_Jelly_Bean_Release_Notes

  • Hi Sato:

    I am now trying to enable the wi-fi display function on Panda Board(As source side). You must have done that before, right? What version of AOSP did you use?

    I use AOSP JB 4.2.1_r1, and I patch the source tree reference to your wiki and patches:

    patches repository
    https://github.com/kensuke/How-to-Miracast-on-AOSP/

    documentation
    https://github.com/kensuke/How-to-Miracast-on-AOSP/wiki

    And then I extract the ducati-m3.bin from Galaxy Nexus system.img to Panda Board file system. It works with Panda Board!! As shown on the following boot log:

    [    7.737335] omap-rproc omap-rproc.1: Loaded BIOS image ducati-m3.bin, size 4515844
    [    7.746551] omap-rproc omap-rproc.1: BIOS image version is 2
    [    7.805755] omap-iommu omap-iommu.0: iommu_get: ducati qos_request
    [    7.828613] omap_hwmod: ipu: failed to hardreset
    [    7.833923] omap-iommu omap-iommu.0: ducati: version 2.1
    [    7.846801] omap-rproc omap-rproc.1: remote processor ipu is now up
    [    7.904388] omap_rpmsg_mbox_callback: received echo reply from ipu !
    [    7.911560] omap_rpmsg_mbox_callback: received echo reply from ipu !
    [    7.918518] omap_rpmsg_mbox_callback: received echo reply from ipu !
    [    7.925659] omap_rpmsg_mbox_callback: received echo reply from ipu !
    [    7.932647] rpmsg_virtio RX: 28 00 00 00 32 00 00 00 35 00 00 00 00 00 00 00  (...2...5.......
    [    7.942230] rpmsg_virtio RX: 72 70 6d 73 67 2d 63 6c 69 65 6e 74 2d 73 61 6d  rpmsg-client-sam
    [    7.951843] rpmsg_virtio RX: 70 6c 65 00 00 00 00 00 00 00 00 00 00 00 00 00  ple.............
    [    7.961639] rpmsg_virtio RX: 32 00 00 00 00 00 00 00                          2.......
    [    7.970306] virtio_rpmsg_bus virtio0: creating channel rpmsg-client-sample addr 0x32
    [    7.979339] rpmsg_virtio RX: 28 00 00 00 33 00 00 00 35 00 00 00 00 00 00 00  (...3...5.......
    [    7.988922] rpmsg_virtio RX: 72 70 6d 73 67 2d 63 6c 69 65 6e 74 2d 73 61 6d  rpmsg-client-sam
    [    7.998474] rpmsg_virtio RX: 70 6c 65 00 00 00 00 00 00 00 00 00 00 00 00 00  ple.............
    [    8.007843] rpmsg_virtio RX: 33 00 00 00 00 00 00 00                          3.......
    [    8.016662] virtio_rpmsg_bus virtio0: creating channel rpmsg-client-sample addr 0x33
    [    8.025421] rpmsg_virtio RX: 28 00 00 00 3c 00 00 00 35 00 00 00 00 00 00 00  (...<...5.......
    [    8.035003] rpmsg_virtio RX: 72 70 6d 73 67 2d 6f 6d 78 00 00 00 00 00 00 00  rpmsg-omx.......
    [    8.044433] rpmsg_virtio RX: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    [    8.054229] rpmsg_virtio RX: 3c 00 00 00 00 00 00 00                          <.......
    [    8.063049] virtio_rpmsg_bus virtio0: creating channel rpmsg-omx addr 0x3c
    [    8.071197] rpmsg_omx rpmsg-omx0: new OMX connection srv channel: 1024 -> 60!
    [    8.985229] (stk) : timed out waiting for ldisc to be un-installed
    [    9.074859] (stk) :ldisc_install = 1
    [    9.189331] rpmsg_virtio RX: 28 00 00 00 3c 00 00 00 35 00 00 00 00 00 00 00  (...<...5.......
    [    9.200073] rpmsg_virtio RX: 72 70 6d 73 67 2d 6f 6d 78 00 00 00 00 00 00 00  rpmsg-omx.......
    [    9.209960] rpmsg_virtio RX: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    [    9.219757] rpmsg_virtio RX: 3c 00 00 00 00 00 00 00                          <.......
    [    9.228790] virtio_rpmsg_bus virtio1: creating channel rpmsg-omx addr 0x3c
    [    9.237640] rpmsg_omx rpmsg-omx1: new OMX connection srv channel: 1024 -> 60!

    But wi-fi display function still fail while connecting to a sink dongle, and the adb log is as the following:

    01-02 00:08:03.492: I/WifiDisplaySource(104): <== <== <== onReceiveClientData() session[2] method[RTSP/1.0]
    01-02 00:08:03.492: I/WifiDisplaySource(104): [RTSP/1.0 200 OK
    01-02 00:08:03.492: I/WifiDisplaySource(104): cseq: 4
    01-02 00:08:03.492: I/WifiDisplaySource(104): ]
    01-02 00:08:04.835: I/WifiDisplaySource(104): <== <== <== onReceiveClientData() session[2] method[SETUP]
    01-02 00:08:04.835: I/WifiDisplaySource(104): [SETUP rtsp://192.168.3.65/wfd1.0/streamid=0 RTSP/1.0
    01-02 00:08:04.835: I/WifiDisplaySource(104): cseq: 1
    01-02 00:08:04.835: I/WifiDisplaySource(104): transport: RTP/AVP/UDP;unicast;client_port=5000
    01-02 00:08:04.835: I/WifiDisplaySource(104): ]
    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't open misc driver device 0xd
    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't read from the misc driver
    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't close the misc driver
    01-02 00:08:05.851: E/ion(104): open /dev/ion failed!
    01-02 00:08:05.859: I/Converter(104): using audio bitrate of 128000 bps, video bitrate of 5000000 bps
    01-02 00:08:08.289: D/DOMX(104): ERROR: failed check:(eError == OMX_ErrorNone) || (eError == OMX_ErrorNoMore) - returning error: 0x8000101a - Error returned from OMX API in ducati
    01-02 00:08:08.789: D/DOMX(104): ERROR: failed check:(eError == OMX_ErrorNone) || (eError == OMX_ErrorNoMore) - returning error: 0x8000101a - Error returned from OMX API in ducati
    01-02 00:08:08.789: D/DOMX(104): ERROR: failed check:eError == OMX_ErrorNone - returning error: 0x8000101a -  Error in Proxy SetParameter
    01-02 00:08:08.789: E/ACodec(104): Encoder could not be configured to emit SPS/PPS before IDR frames. (err -2147483648)
    01-02 00:08:08.789: E/ACodec(104): [OMX.TI.DUCATI1.VIDEO.H264E] configureCodec returning error -2147483648
    01-02 00:08:08.789: E/MediaCodec(104): Codec reported an error. (omx error 0x80001001, internalError -2147483648)
    01-02 00:08:08.953: D/NetworkSession(104): sendRequest() session[2] result[0] --> --> -->
    01-02 00:08:08.953: D/NetworkSession(104): [RTSP/1.0 403 Forbidden

    01-02 00:08:08.953: D/NetworkSession(104): Date: Fri, 02 Jan 1970 00:08:08 +0000

    01-02 00:08:08.953: D/NetworkSession(104): Server: Mine/1.0

    01-02 00:08:08.953: D/NetworkSession(104): CSeq: 1

    01-02 00:08:08.953: D/NetworkSession(104):

    01-02 00:08:08.953: D/NetworkSession(104): ]
    01-02 00:08:08.953: I/WifiDisplaySource(104): We're stopped.

    I have no idea how to solve the issue.

    I have similar error message as yours on your wiki, and you said the issue will be solved after patch for ACodec.cpp. But I cannot find the relating lines in the AOSP 4.2.1_r1.

    Simon

  • Hi, Simon

    • i'm using AOSP 4.2.2_r1.2 in Miracast
      • in Android 4.3, Sink implementation deleted by Google!
    • do NOT YET working Miracast on Pandaboard
    • Galaxy Nexus works Miracast Source and Sink when applied patches
    • both Pandaboard and Galaxy Nexus has same processor OMAP4460
      • -> Galaxy Nexus working, then Pandaboard should be work
    • i expect OMAP4AJ.2.5 version that Wi-Fi Direct and Miracast working

    Simon Chu said:

    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't open misc driver device 0xd
    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't read from the misc driver
    01-02 00:08:04.843: D/DOMX(104): ERROR: Can't close the misc driver

    this is driver load error. in Galaxy Nexus, this error do not happen.

  • OMAP4AJ.2.4 - http://www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes (4AJ.2.4 is not panda, but omap)
    OMAP4AJ.2.2 - http://www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes

    The following link expired on 08/13/2013. These are going to renew or already lost or where I can find this same information.

  • OMAP4AJ.2.4 - http://www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes (4AJ.2.4 is not panda, but omap)
    OMAP4AJ.2.2 - http://www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes

    The following link expired on 08/13/2013. These are going to renew or already lost or where I can find this same information.

    Kensuke Sato said:

    Hi, Abhijit

    We get enabled Wi-Fi Direct on Android 4.2, Pandaboard.

    Abstract

    working fine: AOSP + OMAP4AJ.2.4(wi-fi lib, supplicant) + OMAP4AJ.2.2(wi-fi drv)
    combination is so important

    working so-so: AOSP + OMAP4AJ.2.4(wi-fi lib, supplicant) + OMAP4AJ.2.4(wi-fi drv)
    p2p scan OK, p2p connect NG

    1. Source

    AOSP 4.2.1 - https://android.googlesource.com/platform/manifest -b android-4.2.1_r1
    Kernel 3.0 - https://android.googlesource.com/kernel/omap.git kernel android-omap-panda-3.0
    OMAP4AJ.2.4 - http://www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes (4AJ.2.4 is not panda, but omap)
    OMAP4AJ.2.2 - http://www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes

    2. Kernel Modify

    File: kernel/arch/arm/configs/panda_defconfig
    Edit:
    CONFIG_CFG80211=m
    CONFIG_LIB80211=m
    CONFIG_MAC80211=m
    CONFIG_WL12XX_MENU=m
    CONFIG_WL12XX=m
    CONFIG_WL12XX_SDIO=m

    3. Android Modify

    3.0 reference
    http://processors.wiki.ti.com/index.php/TI-Android-JB-PortingGuide#WLAN

    3.1 File: android/device/ti/panda/BoardConfig.mk
    - BOARD_WPA_SUPPLICANT_DRIVER := NL80211
    - WPA_SUPPLICANT_VERSION := VER_0_8_X
    - BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wl12xx
    - BOARD_WLAN_DEVICE := wl12xx_mac80211
    + USES_TI_MAC80211 := true
    + ifdef USES_TI_MAC80211
    + BOARD_WPA_SUPPLICANT_DRIVER := NL80211
    + WPA_SUPPLICANT_VERSION := VER_0_8_X_TI
    + BOARD_HOSTAPD_DRIVER := NL80211
    + BOARD_WLAN_DEVICE := wl12xx_mac80211
    + BOARD_SOFTAP_DEVICE := wl12xx_mac80211
    + WIFI_DRIVER_MODULE_PATH := "/system/lib/modules/wl12xx_sdio.ko"
    + WIFI_DRIVER_MODULE_NAME := "wl12xx_sdio"
    + WIFI_FIRMWARE_LOADER := ""
    + COMMON_GLOBAL_CFLAGS += -DUSES_TI_MAC80211
    + endif

    3.2 File: android/device/ti/panda/device.mk
    - frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml
    + frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
    + frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml

    - PRODUCT_PACKAGES += \
    - dhcpcd.conf \
    - TQS_D_1.7.ini \
    - calibrator
    + PRODUCT_PACKAGES += \
    + dhcpcd.conf \
    + hostapd.conf \
    + wifical.sh \
    + wilink7.sh \
    + TQS_D_1.7.ini \
    + TQS_D_1.7_127x.ini \
    + crda \
    + regulatory.bin \
    + calibrator

    $(call inherit-product, device/ti/panda/wl12xx/ti-wpan-products.mk)
    + $(call inherit-product-if-exists, device/ti/proprietary-open/omap4/ti-omap4-vendor.mk)
    + $(call inherit-product-if-exists, device/ti/proprietary-open/wl12xx/wlan/wl12xx-wlan-fw-products.mk)

    3.3 File: android/device/ti/panda/init.omap4pandaboard.rc
    on boot
    mount debugfs /sys/kernel/debug /sys/kernel/debug
    chmod 0666 /dev/pvrsrvkm
    + # wi-fi
    + mkdir /data/misc/wifi/sockets 0770 wifi wifi
    + mkdir /data/misc/dhcp 0770 dhcp dhcp
    + insmod /system/lib/modules/compat.ko
    + insmod /system/lib/modules/cfg80211.ko
    + insmod /system/lib/modules/mac80211.ko
    + insmod /system/lib/modules/wl12xx.ko

    # virtual sdcard daemon running as media_rw (1023)
    service sdcard /system/bin/sdcard /data/media /mnt/shell/emulated 1023 1023
    class late_start

    + service p2p_supplicant /system/bin/wpa_supplicant \
    + -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -N \
    + -ip2p0 -Dnl80211 -c/data/misc/wifi/p2p_supplicant.conf
    + class main
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot

    - service wpa_supplicant /system/bin/wpa_supplicant -Dnl80211 -iwlan0 -c/data/misc/wifi/wpa_supplicant.conf -dd
    - socket wpa_wlan0 dgram 660 wifi wifi
    - disabled
    - oneshot
    + service wpa_supplicant /system/bin/wpa_supplicant \
    + -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -e/data/misc/wifi/entropy.bin
    + class main
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot
    - service dhcpcd_wlan0 /system/bin/dhcpcd -ABKL
    - disabled
    - oneshot
    + service dhcpcd_wlan0 /system/bin/dhcpcd -aABDKL
    + class main
    + disabled
    + oneshot

    service iprenew_wlan0 /system/bin/dhcpcd -n
    disabled
    oneshot

    + service dhcpcd_p2p /system/bin/dhcpcd -aABKL
    + disabled
    + oneshot
    +
    + service iprenew_p2p /system/bin/dhcpcd -n
    + disabled
    + oneshot

    - service dhcpcd_eth0 /system/bin/dhcpcd -ABKL
    - disabled
    - oneshot
    + service dhcpcd_eth0 /system/bin/dhcpcd -ABDKL
    + class main
    + disabled
    + oneshot

    service iprenew_eth0 /system/bin/dhcpcd -n
    disabled
    oneshot

    + service hostapd_bin /system/bin/hostapd -d /data/misc/wifi/hostapd.conf
    + socket wpa_wlan0 dgram 660 wifi wifi
    + disabled
    + oneshot

    3.4 proprietary-open copy
    OMAP4AJ.2.4 src: android/device/ti/proprietary-open
    AOSP dest: android/device/ti

    3.5 wpa_supplicant8_ti copy
    OMAP4AJ.2.4 src: android/external/wpa_supplicant_8_ti
    AOSP dest: android/external

    3.6 libhardware_legacy replace
    OMAP4AJ.2.4 src: android/hardware/libhardware_legacy/wifi/wifi.c
    AOSP dest: android/hardware/libhardware_legacy/wifi/

    3.7 android/hardware/libhardware_legacy/Android.mk edit
    File: android/hardware/libhardware_legacy/Android.mk

    LOCAL_SHARED_LIBRARIES := libcutils libwpa_client
    LOCAL_INCLUDES += $(LOCAL_PATH)
    + #ifdef USES_TI_MAC80211
    + LOCAL_STATIC_LIBRARIES := libnl_2
    + LOCAL_C_INCLUDES += external/libnl-headers
    + #endif
    LOCAL_CFLAGS += -DQEMU_HARDWARE
    QEMU_HARDWARE := true

    3.8 header file copy
    OMAP4AJ.2.4 src: android/hardware/libhardware_legacy/nl80211.h AOSP
    dest: android/hardware/libhardware_legacy

    3.9 Wi-Fi Driver replace
    OMAP4AJ.2.2 src: android/hardware/ti/wlan
    AOSP dest: android/hardware/ti

    3.10 netd replace
    OMAP4AJ.2.4 src: android/system/netd
    AOSP dest: android/system

    4 build

    4.1 kernel
    $ make ARCH=arm panda_defconfig
    $ make -j8 ARCH=arm uImage
    $ make -j8 ARCH=arm modules

    4.2 Wi-Fi Driver
    $ export KERNEL_DIR=${YOUR_PATH}/kernel
    $ export KLIB=${KERNEL_DIR}
    $ export KLIB_BUILD=${KERNEL_DIR}

    $ cd $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx
    $ make -j8 ARCH=arm

    $ cd $MYDROID/out/target/product/panda
    $ mkdir -p system/lib/modules
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/compat/compat.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/net/wireless/cfg80211.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/net/mac80211/mac80211.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/drivers/net/wireless/wl12xx/wl12xx.ko system/lib/modules/
    $ cp $MYDROID/hardware/ti/wlan/mac80211/compat_wl12xx/drivers/net/wireless/wl12xx/wl12xx_sdio.ko system/lib/modules/

    4.3 Android
    $ cd $MYDROID
    $ source build/envsetup.sh
    $ lunch full_panda-eng
    $ make -j8


    this guide may be not correct,
    i want to additional confirm someone, ^_^

    ;;; Wi-Fi Direct is OK. next, I want to get Miracast on Android 4.2, Panda;;;

  • Wifi direct in Android 4.2 + OMAP4AJ.2.4 + OMAP4AJ.2.2

    OMAP4AJ.2.4 - http://www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes (4AJ.2.4 is not panda, but omap)
    OMAP4AJ.2.2 - http://www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes

    The following link expired on 08/13/2013. These are going to renew or already lost or where I can find this same information.

  • umm, omappedia.com domain expired...


    try google cache

    2.2
    http://webcache.googleusercontent.com/search?q=cache:bHe9__AiBVUJ:www.omappedia.com/wiki/4AJ.2.2_OMAP4_Jelly_Bean_Panda_Notes+&cd=1&hl=ja&ct=clnk&gl=jp

    2.4
    http://webcache.googleusercontent.com/search?q=cache:uGFNMEv1H5EJ:www.omappedia.com/wiki/4AJ.2.4_OMAP4_Jelly_Bean_Release_Notes+&cd=1&hl=ja&ct=clnk&gl=jp

    2.5
    http://webcache.googleusercontent.com/search?q=cache:VDx5WdhnZaAJ:omappedia.org/wiki/4AJ.2.5_OMAP4-Panda_Jelly_Bean_Release_Notes+&cd=3&hl=ja&ct=clnk&gl=jp

  • when Building Android Filesystem(AFS) with TI Codecs enabled in 4AJ.2.2 OMAP4 JB Panda Notes 

    I get this error

    /***********************************************************************************/

    In file included from hardware/ti/dvp/source/dvp/dvp_kgraph/dvp_rpc_omaprpc.c:33:0:
    hardware/ti/dvp/include/omaprpc/omaprpc.h:28:16: error: conflicting types for 'ptrdiff_t'
    /home/mauricio/fuentes/4AJ.2.2/mydroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/include/stddef.h:150:26: note: previous declaration of 'ptrdiff_t' was here
    make: *** [out/target/product/panda/obj/SHARED_LIBRARIES/libdvp_intermediates/dvp_rpc_omaprpc.o] Error 1
    make: *** Se espera a que terminen otras tareas....
    In file included from hardware/ti/dvp/source/omaprpc/omaprpc.c:17:0:
    hardware/ti/dvp/include/omaprpc/omaprpc.h:28:16: error: conflicting types for 'ptrdiff_t'
    /home/mauricio/fuentes/4AJ.2.2/mydroid/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.6/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/include/stddef.h:150:26: note: previous declaration of 'ptrdiff_t' was here
    make: *** [out/target/product/panda/obj/STATIC_LIBRARIES/libomaprpc_intermediates/omaprpc.o] Error 1

    /*****************************************************************************************/

    As I can solve? 

    to achieve this

    wifi direct fine.

    working fine: AOSP + OMAP4AJ.2.4(wi-fi lib, supplicant) + OMAP4AJ.2.2(wi-fi drv)

    thanks for the help.

  • Hi,

    I turn on the wifi-direct "PandaBoard" and achieve share files with a mobile device. but when I want to share between two PandaBoard not recognize each other. How I can solve this and what can be the cause. Thanks for any help you can give me.

  • hi ,

    i try to build android on panda4 rev A2, i want Wifi Direct !!!!!

    i follow the above steps.. but  it not compiling...i got errors in hardware/ti/omap4xx/ modules. 

    the steps are proper or i need to modify any other files to exclude those modules...

    1. i want to use Wifi-direct in Terminal mode.... how to execute p2p in terminal   ???? 

    2. what is the need of  building kernel in modules form 

    CONFIG_CFG80211=m
    CONFIG_LIB80211=m

    we can directly include those in building time na... like

    CONFIG_CFG80211=y
    CONFIG_LIB80211=y              ???

    3. Some time pandabord is going to STUCK if i press setting option  ?????

    Error:

    Notice file: external/icu4c/stubdata/NOTICE -- out/target/product/panda/obj/NOTICE_FILES/src//system/usr/icu/icudt48l.dat.txt
    make: *** No rule to make target `out/target/product/panda/obj/SHARED_LIBRARIES/libbluetooth_intermediates/export_includes', needed by `out/target/product/panda/obj/EXECUTABLES/bt_sco_app_intermediates/import_includes'. Stop.
    make: *** Waiting for unfinished jobs....
    Export includes file: bootable/recovery/tools/ota/Android.mk -- out/target/product/panda/obj/EXECUTABLES/add-property-tag_intermediates/export_includes

  • hi simon 

    if building OMAP4AJ.2.4 source i got these errors


    hardware/ti/omap4xxx/domx/domx/omx_rpc/src/omx_rpc_stub.c: In function 'RPC_EmptyThisBuffer':
    hardware/ti/omap4xxx/domx/domx/omx_rpc/src/omx_rpc_stub.c:1281:3: warning: assignment makes integer from pointer without a cast [enabled by default]
    hardware/ti/omap4xxx/domx/domx/omx_rpc/src/omx_rpc_stub.c:1284:4: warning: assignment makes integer from pointer without a cast [enabled by default]
    target thumb C: libdomx <= hardware/ti/omap4xxx/domx/domx/omx_rpc/src/omx_rpc_config.c
    target thumb C: libdomx <= hardware/ti/omap4xxx/domx/domx/omx_rpc/src/omx_rpc_platform.c
    target thumb C: libdomx <= hardware/ti/omap4xxx/domx/domx/omx_proxy_common/src/omx_proxy_common.c
    target thumb C: gps.goldfish <= development/tools/emulator/system/gps/gps_qemu.c
    target thumb C++: gralloc.default <= hardware/libhardware/modules/gralloc/gralloc.cpp
    development/tools/emulator/system/gps/gps_qemu.c:47:0: warning: "D" redefined [enabled by default]
    hardware/libhardware/include/hardware/qemu_pipe.h:29:0: note: this is the location of the previous definition
    development/tools/emulator/system/gps/gps_qemu.c:917:5: warning: initialization from incompatible pointer type [enabled by default]
    development/tools/emulator/system/gps/gps_qemu.c:917:5: warning: (near initialization for 'qemuGpsInterface.set_position_mode') [enabled by default]
    hardware/ti/omap4xxx/domx/domx/omx_proxy_common/src/omx_proxy_common.c:78:17: fatal error: ion.h: No such file or directory
    compilation terminated.
    make: *** [out/target/product/panda/obj/SHARED_LIBRARIES/libdomx_intermediates/omx_proxy_common/src/omx_proxy_common.o] Error 1
    make: *** Waiting for unfinished jobs....
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'hw_module_t::dso' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'hw_module_t::reserved' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'gralloc_module_t::perform' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'gralloc_module_t::reserved_proc' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::pmem_master' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::pmem_master_base' [-Wmissing-field-initialize rs]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::info' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::finfo' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::xdpi' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::ydpi' [-Wmissing-field-initializers]
    hardware/libhardware/modules/gralloc/gralloc.cpp:100:1: warning: missing initializer for member 'private_module_t::fps' [-Wmissing-field-initializers]

    how to resolve these issue

    compine with ASOP code i got 

    Notice file: external/icu4c/stubdata/NOTICE -- out/target/product/panda/obj/NOTICE_FILES/src//system/usr/icu/icudt48l.dat.txt
    make: *** No rule to make target `out/target/product/panda/obj/SHARED_LIBRARIES/libbluetooth_intermediates/export_includes', needed by `out/target/product/panda/obj/EXECUTABLES/bt_sco_app_intermediates/import_includes'. Stop.
    make: *** Waiting for unfinished jobs....
    Export includes file: bootable/recovery/tools/ota/Android.mk -- out/target/product/panda/obj/EXECUTABLES/add-property-tag_intermediates/export_includes
    root@ATREYU-15:/home/test/android4.2.2#

    hoe solve this problem...p;ls help me...

    Arun kR


  • Hi, Arun:

    Did you build OMAP4AJ.2.4 for Panda board?

    The source is for TI Blaze Tablet 2, not fot Panda board. I only use the wifi library and wpa_supplicant part.

  • i used the complete folder of wlan in /hardware/ti/panda  of OMAP4AJ.2.2 pkge and other files from OMAP4AJ.2.4 .

    i have on more query 

    the " iw list "command not showing the P2P support interfaece for the hardware and iwconfig show devies support only abg mode...

    how to enable 802.11n mode and P2P  support in my wifi driver

  • no "P2P"

    Supported interface modes:
    * IBSS
    * managed
    * AP
    * AP/VLAN
    * monitor
    software interface modes (can always be added):
    * AP/VLAN
    * monitor

    no "n"

    wlan0  IEEE 802.11abg ESSID:off/any
    Mode:Managed Access Point: Not-Associated Tx-Power=0 dBm
    Retry long limit:7 RTS thr:off Fragment thr:off
    Encryption key:off
    Power Management:on