This git repository is used to download manifests for QCOM Linux Yocto BSP releases.
The branch will be based on the release type Linux with release manifests in each branch tied to the base releases.
For QCOM Linux Yocto BSP releases the manifest branches will be named as qcom-linux-[Yocto-Project-release], so qcom-linux-kirkstone with all manifests tied to releases on Kirkstone in this branch.
Below procedure assumes that you have gone through qualcomm-linux-preview and have a valid Qualcomm account
If you are already having standard yocto environment, skip below prepare Host setup steps
Run the following commands to set up Qualcomm Package Manager. It is used to generate personalized access token to access Qualcomm proprietary software, for example, to fetch binary SDKs during SDK build.
- Install curl if you haven't installed already
sudo apt install curl
- Download and Install the debian package for qsc-cli
curl -L https://softwarecenter.qualcomm.com/api/download/software/qsc/linux/latest.deb -o qsc_installer.deb
sudo dpkg -i qsc_installer.deb
- log in to qsc-cli
qsc-cli login -u [username]
The host machine needs a few setup operations to ensure the required software tools are ready
For ubuntu 20.04
sudo apt update
sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential \
chrpath socat cpio python3 python3-pip python3-pexpect xz-utils \
debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa \
libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd \
liblz4-tool locales tar python-is-python3 file libxml-opml-simplegen-perl \
vim whiptail
For ubuntu 22.04
sudo apt update
sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential \
chrpath socat cpio python3 python3-pip python3-pexpect xz-utils \
debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa \
libsdl1.2-dev pylint xterm python3-subunit mesa-common-dev zstd \
liblz4-tool locales tar python-is-python3 file libxml-opml-simplegen-perl \
vim whiptail
To use this manifest repo, the repo tool must be installed first. To install repo, run these commands:
mkdir -p ~/bin
cd ~/bin
#Note if you already have a previous directory of repo_tool, you can delete it
rm -rf ~/bin/repo_tool
git clone https://android.googlesource.com/tools/repo.git -b v2.41 repo_tool
cd repo_tool
git checkout -b v2.41
export PATH=~/bin/repo_tool:$PATH
If the above method did not work you can try below commands for repo installation
Note: latest repo version works with python3
mkdir -p ~/bin
curl https://raw.githubusercontent.com/GerritCodeReview/git-repo/v2.41/repo -o ~/bin/repo && chmod +x ~/bin/repo
export PATH=~/bin:$PATH
Log in to qsc-cli to generate the PAT ( Personalized Access Token )
qsc-cli login -u <username>
Run below command to generate the PAT
qsc-cli pat --get
This command will give output as captured in the Info note below The last line in this output is the token, which can be used to access Qualcomm Proprietary repositories. This token will expire in two weeks
qsc-cli pat --get
[Info]: Starting qsc-cli version 0.0.0.9
5LThNlklb55mMVLB5C2KqUGU2jCF
vim ~/.netrc # add below entries
machine chipmaster2.qti.qualcomm.com
login <your Qualcomm login id>
password <your PAT>
machine qpm-git.qualcomm.com
login <your Qualcomm login id>
password <your PAT>
sudo locale-gen en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Check if your identity is configured in .gitconfig
git config --get user.email
git config --get user.name
Run the following commands if you do not have your account identity set in .gitconfig
git config --global user.email [email protected]
git config --global user.name "Your Name"
Add below UI color option for output of console
git config --global color.ui auto
Add below configuration required to fetch Qualcomm proprietary sources/binaries
git config --global http.postBuffer 1048576000
git config --global http.maxRequestBuffer 1048576000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
git config --global http.https://chipmaster2.qti.qualcomm.com.followRedirects true
git config --global http.https://qpm-git.qualcomm.com.followRedirects true
mkdir [release]
cd [release]
repo init -u https://github.com/quic-yocto/qcom-manifest -b [branch name] -m [release manifest]
repo sync
Each branch will have detailed READMEs describing exact syntax.
Example:
To download the qcom-6.6.17-QLI.1.0-Ver.1.3
release
repo init -u https://github.com/quic-yocto/qcom-manifest -b qcom-linux-kirkstone -m qcom-6.6.17-QLI.1.0-Ver.1.3.xml
repo sync
MACHINE=[machine] DISTRO=qcom-[backend] source setup-environment
[machine] defaults to qcm6490
[backend] Graphics backend type
- qcom-wayland meta-qcom-distro
Example for setup Wayland, machine qcm6490:
MACHINE=qcm6490 DISTRO=qcom-wayland source setup-environment
bitbake [image recipe]
Some image recipes:
Image Name | Description |
---|---|
qcom-minimal-image | A minimal rootfs image that boots to shell. |
qcom-console-image | Boot to shell with Package group to bring in all basic packages. |
qcom-multimedia-image | Image recipe includes recipes for multimedia software components, such as, audio, bluetooth, camera, computer vision, display and video. |
qcom-multimedia-test-image | This image recipe includes tests |
Example command:
bitbake qcom-multimedia-image
- Qualcomm Intelligent Multimedia Product SDK
- Realtime Linux
- Qualcomm Intelligent Robotics Product SDK
To flash the generated build, see the Flash software
If you are new to the Yocto project, you may try your first build as documented in the Yocto project at Standard Yocto environment
The complete index of Yocto project docs is available at Yocto project docs