Is the AOSP master supported?

Look in the group root under the pinned-manifests repository.

Followed the steps provided in link below.
https://gitlab.com/aosp-automotive/pinned-manifests

Steps as below (for reference)
$ repo init -u https:// android.googlesource.com/platform/manifest -b master
$ wget https:// gitlab.com/aosp-automotive/pinned-manifests/raw/master/pinned_020620.xml -O .repo/manifests/pinned_020620.xml
$ repo init -m pinned_020620.xml

But I get error, how to resolve this?

fatal: manifest 'pinned_020620.xml' not available
fatal: duplicate path device/linaro/dragonboard in /home/aananth/bsp/db410c/.repo/manifests/pinned_020620.xml

Check if the file is there. If it isn’t, figure out why. The wget command is the one responsible for retrieving it.

Do you have the instructions for building the kernel for Dragonboard 410C?
Als are the instructions for building Android same for Dragonboard 410c?

Here are the steps I follow to build aosp:

repo init -u https://android.googlesource.com/platform/manifest -b master
repo sync -j$(nproc) -c

rm -r device/linaro/dragonboard
git clone -b db410c https://android-git.linaro.org/device/linaro/dragonboard410c.git device/linaro/dragonboard

source build/envsetup.sh
lunch db410c
make -j8

Maybe you can also look at this thread fr kernel building: Missing defconfig for Linaro's AOSP port for db410c - #7 by BigCountry907

you need to run

source build/envsetup.sh

before lunch/make.

It has to include “source” as in “source build/envsetup.sh”, or “.” as in “. envsetup.sh” (i.e., “.” followed by <space> followed by “envsetup.sh”), otherwise it WON’T WORK.

It looks like some people are mixing these instructions with the instructions found here; Building Android Open Source Project (AOSP) for Dragonboard - 96Boards

It is important to understand that trying to follow the instructions at that link will cause a path conflict between the db845c repository and the db410c/db820c repository. In order to follow the “rm, git” instructions, the local manifest must be removed.

Don’t use -j8. That will consume all your RAM and then crash the build. Either leave it out, or use something smaller, like -j2.

Things are working for me and i am able to boot into Android with the steps you have mentioned.
Thank you.
The prebuilt kernel is actually based on the Linux kernel 5.2, where can I find the source code for the prebuilt kernel on which Amit’s patch is based on?

Oh, you’re going to need a lot more storage space than that. Figure on around 100 GB.

Can someone please help with the kernel source and buuild instructions for the prebuilt kernel available?It seems to be based on the Linux kernel version 5.2 ?

Not if you don’t give us the relevant part of the error, which could be a few hundred lines above the part you copied out.

One spot it will probably fail on you is trying to copy the prebuilt kernel, for which you will need to get the appropriate dragonboard-kernel repository.

That looks like the typical type of transient errors that crop up in Master while features are in the process of being uploaded. I’d try a repo sync and build again.

FYI: I ran a 410c build on my device and kernel repo starting yesterday, and the build completed successfully. I haven’t booted it, so I can’t say that it actually works, although I suspect it will. I strongly recommend that you start with that; AOSP-Automotive · GitLab

Pay attention to the “pinned manifests” repository.

You don’t have an 820c. You have a 410c. I’m not going to connect every dot for you, if you can’t go part way yourself then what you really need is to find someone to generate and install the builds for you, and that isn’t me or anyone else on this forum.

The last hint I have time to give you today is don’t build the kernel — that’s for the 820c. Use the prebuilt one for the 410c.

And look, I don’t even know if it will boot when you install it. I haven’t tried. The only thing I’ve done is checked that it actually compiles through successfully.

EDIT:
I had the opportunity this morning to test it on an actual 410c and it DID NOT BOOT. However, I added a commit that fixed the issue (not copying the fstab to the correct location, and thus not mounting the userdata partition) and it now boots. Just do a “repo sync” and build it again – don’t “make clean” it, just do a quick build to get the fixed vendor.img (fastboot flash it to the cache partition, which is repurposed as vendor). There is a recurring crash in the logcat related to media swcodec, that I (or you) may work out later, but you now have a known good starting point to work from.

https://android-git.linaro.org/device/linaro/dragonboard410c-kernel.git/commit/?h=dragonboard-kernels

Here you go linaro/dragonboard410c-kernel.git - [no description]

1 Like

I fixed this issue by updating the fstab location in the init.common.rc file, and point to the fstab file in /vendor/etc/init

on fs
mount_all /vendor/etc/init/fstab.${ro.hardware}
swapon_all /vendor/etc/init/fstab.${ro.hardware}
setprop ro.crypto.fuse_sdcard false

I’m attempting to build Android AOSP for the DragonBoard 410c using Ubuntu 20.

I had previously pulled the Android AOSP source while following the 96Boards procedure for the DragonBoard 410c however I found that lunch no longer had an entry for db410c.

Then I found your procedure. I removed the existing device/linaro/dragonboard directory tree as that seems to be only for the DragonBoard 820c. I then did the git clone to pull the DragonBoard 410c changes replacing the DragonBoard 820c version of the directory.

Then did the source and followed by lunch db410c which seemed to work.

I then did make -j2 per @doitright post and I am seeing the following error message.

[ 95% 415/436] including system/sepolicy/Android.mk …
system/sepolicy/Android.mk:57: warning: BOARD_PLAT_PUBLIC_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PUBLIC_SEPOLICY_DIRS instead…
system/sepolicy/Android.mk:62: warning: BOARD_PLAT_PRIVATE_SEPOLICY_DIR has been deprecated. Use SYSTEM_EXT_PRIVATE_SEPOLICY_DIRS instead…
FAILED: ninja: ‘device/linaro/dragonboard-kernel/db410c-amt-5.2.gz-dtb’, needed by ‘out/target/product/db410c/kernel’, missing and no known rule to make it
23:50:30 ninja failed with: exit status 1

Looking further at the link you provided, Missing defconfig for Linaro's AOSP port for db410c - #7 by BigCountry907 , it appears that there is an additional step or two needed to set up the proper environment.

Copy Device tree and kernel to AOSP TREE
cd /root/DB-KERNEL/db410c-kernel
cat /root/DB-KERNEL/db410c-kernel/arch/arm64/boot/Image.gz /root/DB-KERNEL/db410c-kernel/arch/arm64/boot/dts/qcom/apq8016-sbc.dtb > db410c-qcomlt-4.14.gz-dtb
cp /root/AOSP/device/linaro/dragonboard-kernels/db410c-qcomlt-4.14.gz-dtb /root/AOSP/device/linaro/dragonboard-kernels/db410c-qcomlt-4.14.gz-dtb-old
rm -rf /root/AOSP/device/linaro/dragonboard-kernels/db410c-qcomlt-4.14.gz-dtb
cp db410c-qcomlt-4.14.gz-dtb /root/AOSP-DB/device/linaro/dragonboard-kernels/

In that same discussion, @BigCountry907 mentions something similar.

However there appears to be a difference in the file name which I assume has to do with the Linux kernel version?

What am I missing in order to complete this build?

Try adding the prebuilt kernels from here:
https://android-git.linaro.org/device/linaro/dragonboard410c-kernel.git/tree/?h=dragonboard-kernels