iMX8 Android9 fails to build a new target

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

iMX8 Android9 fails to build a new target

1,271 Views
mariosan
Contributor II

Hi, all, I've succesflully build the imx-p9.0.0_1.1.0-ga for evk_8mm demo board: now I will want to build a new target.

I've started coping  the android_build\device\fsl\imx8m\evk_8mm into android_build\device\fsl\imx8m\my_8mm and

changed  vendorsetup.sh,AndroidProducts.mk and just only the out directory reference in makefile (my_8mm.mk)...

builds fails with this messages:

hardware/qcom/bt/msm8992/libbt-vendor/src/hci_uart.c:215:65: error: use of undeclared identifier 'BT_HS_UART_DEVICE'
    snprintf(vnd_userial.port_name, VND_PORT_NAME_MAXLEN, "%s", BT_HS_UART_DEVICE);
hardware/qcom/bt/msm8992/libbt-vendor/src/hci_uart.c:376:71: error: use of undeclared identifier 'BT_HS_UART_DEVICE'
        ALOGE( "%s: uart port(%s) has not been opened", __FUNCTION__, BT_HS_UART_DEVICE )

If I disable the Qualcomm BT

BOARD_HAVE_BLUETOOTH_QCOM := true   ===>  BOARD_HAVE_BLUETOOTH_QCOM := false

compilation will be completed, Androis starts  but BTdon't works.

I've not found any differenve between evk_8mm and my_8mm target: anyway compilation fails

if BOARD_HAVE_BLUETOOTH_QCOM is true... any suggestion on how to fix this problem?

Thanks in advance

M. Sangalli

4 Replies

971 Views
taivuong
Contributor I

Hello JimmyChan,

I have the same error than you here is the solution:

1) go to your aosp_folder/hardware/qcom/bt/msm8992/libbt-vendor/include

2) copy vnd_evk_8mm.tx and rename it vnd_evk_my_8mm.txt

3) recompile and enjoy.

Best Regards,

Tai

971 Views
shivanipatel
Senior Contributor II

Hi, mariosan

Please follow below link to add a new device in Android AOSP.

Hope this will help you.

Regards,

Shivani

0 Kudos

971 Views
jimmychan
NXP TechSupport
NXP TechSupport

So, the error is the "BT_HS_UART_DEVICE" did not define. Have you try to define it in a header file?

0 Kudos

971 Views
mariosan
Contributor II

Thank Jimmychan:

No, I've not defined it, because my target is the *clone* of the original imx8mm_evk, just changed the out

directory in makefile, so I've assumed the the build process will  redo same results of original one,

(in which i've not found where such label is defined).

That what I've do:

1. copy android_build\device\fsl\imx8m\evk_8mm-> android_build\device\fsl\imx8m\my_8mm

2. add these lines in vendorsetup.sh:

add_lunch_combo my_8mm-eng
add_lunch_combo my_8mm-userdebug

3. And add this line in AndroidProducts.mk

PRODUCT_MAKEFILES := \
  $(LOCAL_DIR)/my_8mm/my_8mm.mk

4. renamed evk_8mm.mk to my_8mm.mk and changed these lines:

IMX_DEVICE_PATH := device/fsl/imx8m/my_8mm

PRODUCT_NAME := my_8mm
PRODUCT_DEVICE := my_8mm

5. Modified BoardConfig.mk:

IMX_DEVICE_PATH := device/fsl/imx8m/my_8mm

TARGET_BOOTLOADER_BOARD_NAME := MY
PRODUCT_MODEL := MY_8MM

6. run build as documented using my_8mm-eng as target....

This is the line  in BoardConfig.mk that cause trouble:

BOARD_HAVE_BLUETOOTH_QCOM := true

If I set  BOARD_HAVE_BLUETOOTH_QCOM := false, compilation is OK but

BT do not works.

Because build involves a huge numbers of configuration scripts , it is very difficult for me

to figure out where is the problem in creating a new target...

Any suggestion is wellcome

Thanks again,

M. Sangalli

0 Kudos