device/hardkernel/odroidx2
1. Makefile
Android.mk : 기본 Makefile, TAGET_PRODUCT= odroidx2 일 경우 동작
AndroidProducts.mk : odroidx2.mk wrap Makefile
BoardConfig.mk : Board기본 설정 on/off 제어
CleanSpec.mk
device.mk : 아래내용 수정
* PRODUCT_COPY_FILES 중 (Ultra_Explorer.apk,DicePlayer.apk 복사방지 막음)
odroidx2.mk : PRODUCT INFO
2. vendorsetup.sh : odroidx lunch 항목에 등록 3. drivers : driver's ko (wifi ,snd,기타)
4. conf : 초기화 설정
Memory 관련 문제
vi hardware/libhardware/include/hardware/gralloc.h:
GRALLOC_USAGE_YUV_ADDR = 0x04000000, //새로추가
vi hardware/samsung_slsi/exynos4/libgralloc_ump/gralloc_module.cpp
// getphys: gralloc_getphys, //not used, 489 getphys 안쓰도록 수정
https://source.android.com/devices/halref/structgralloc__module__t.html
https://source.android.com/devices/graphics/index.html
Audio 관련문제
https://source.android.com/devices/audio/implement.html
http://blog.eairship.kr/175
hardware/hardkernel/libaudio/AudioHardware.cpp: In function 'android_audio_legacy::AudioHardwareInterface* android_audio_legacy::createAudioHardware()':
hardware/hardkernel/libaudio/AudioHardware.cpp:2324:30: error: cannot allocate an object of abstract type 'android_audio_legacy::AudioHardware'
return new AudioHardware();
vi device/hardkernel/odroidx2/BoardConfig.mk
BOARD_USES_ALSA_AUDIO := true
BUILD_WITH_ALSA_UTILS := true
ref.
https://groups.google.com/forum/#!topic/android-porting/w487bZaVzxA
*Android Porting Forum
https://groups.google.com/forum/#!forum/android-porting
vi hardware/hardkernel/libcamera_webcame/Android.mk
LOCAL_C_INCLUDES += \
$(TOP)/system/media/camera/include \ // 새로운 include 추가
$(TOP)/frameworks/base/include/android_runtime \
참조
hardware/libhardware_legacy/audio/audio_hw_hal.cpp
hardware/libhardware_legacy/include/hardware_legacy/AudioHardwareInterface.h
external/tinyalsa/include/tinyalsa/asoundlib.h
vi hardware/hardkernel/libcamera_webcame/V4L2Camera.h
//#include linux/videodev.h #include linux/videodev2.hhttp://w3facility.org/question/flashcam-doesnt-compile-videodev-h-not-found/