how to develop using yocto sdk
I know I have another question open, but figured since this is a different question, I needed to open a new post. I got into a little bind and have been a bit blindsided to how different Yocto is (I was expecting something more akin to standard Linux development). Do you guys have any resources for doing yocto development or otherwise have any primers for getting started in a meaningful way? I'm trying to understand how I would set up deployments to have preloaded systemd configurations so that, i can have sshd running by default, and maybe some iptables rules I also want to know how exactly I would deploy a sample application. for example, getting one of these examples deployed: https://www.boost.org/doc/libs/1_87_0/doc/html/boost_asio/example/cpp11/chat/chat_server.cpp too keep it simple, I'd settle for knowing how to deploy a basic "hello world" program for now How do I interact with the SDK? I was planning on writing my application in C++17/20+boost. I was hoping to be able to find some API/library to interact with the DSP chips, and not necessarily rely on cces to do my primary development. Is ccessrequired even if we're using Yocto?
There is one other thing confounding me right now free -h reports 236MB of available space. I was under the impression that this dev-kit had 4 Gigs of memory.
Audio Signal Processors
software
adsp-sc598
Yocto 3.1.2
SHARC Audio Processors/SoCs
Hi Daniel,
Daniel78 said:
Do you guys have any resources for doing yocto development or otherwise have any primers for getting started in a meaningful way?
The best place to understanding yocto would be the yocto wiki (akin to the kernel wiki, they have a good amount of documentation): https://docs.yoctoproject.org/
Daniel78 said:
I'd settle for knowing how to deploy a basic "hello world" program for now
You could always start by either extending or write a basic new recipe within our meta layer and compile it with the build. (gxp2/sources/meta-adi/meta-adi-adsp-sc5xx/). You might also find the init recipe particularly helpful as a simple starting point (gxp2/sources/meta-adi/meta-adi-adsp-sc5xx/recipes-adi/initramfs-init/initramfs-init_1.0.bb)
Daniel78 said:
Is ccessrequired even if we're using Yocto?
Yes, CCES is reqiured for compiling SHARC firmware. Once compiled, you can use RPMsg or Remoteproc to load the firmware within linux/uboot as per examples on the Wiki.
Daniel78 said:
There is one other thing confounding me right now free -h reports 236MB of available space. I was under the impression that this dev-kit had 4 Gigs of memory.
Yes, that is correct. The board offers 4 Gigabits. This is the entirety of the memory on the board, not just the memory available within linux. You can see the exact breakdown here: https://www.analog.com/media/en/technical-documentation/data-sheets/adsp-sc596-adsp-sc598.pdf (pg 8).
Note that the available space visible to you is the DMC0, which is 1GB and configured here: https://github.com/analogdevicesinc/lnxdsp-u-boot/blob/9eb016e68bc7fedbfc3df7fc763200db07259853/include/configs/sc598-som.h#L73. Please also note that the address space is also shared between SHARCs and ARM, so the entire memory might not be available to ARM. (Refer to L1/L2 and DMC memory map tables in the datasheet).
Please log in to reply.