我刚刚开始了解 Yocto。我没有找到太多关于类 (.bbclass) 文件的信息。我知道 .bb 文件是一个包含构建包指令的配方。我们什么时候必须写菜谱,什么时候写一个类或者两者之间有什么区别
我只是想知道这两者之间的区别..我使用的是linux 3.16泛型内核.我知道这两个都是内核符号表.当我对这两个文件进行Kompare时,两者都具有相同的内容?那么兼顾两者的需要是什么?
我为Yocto的Intel主板生成了一个最小核心图像。
查看tmp / deploy / images文件夹中,它们是很多图像。
我使用USB上的dd命令刷新了* .wic映像,它创建了两个分区(Boot和Platform),并且只允许执行实时启动,而不能将其安装在主板的硬盘上。
然后,我使用dd命令在USB上闪烁* .hddimg。它仅创建了一个具有rootfs.img,syslinux和EFI文件夹的“启动”分区。
使用USB引导为我提供了一个“安装”选项,该选项已安装在板上,当我在安装后重新引导时,它显示“找不到可引导媒体”
使用可引导映像,硬盘中有两个分区。为什么它不启动。
遵循的步骤:
我在这里做错了什么。
选择哪个图像以及何时选择..
我有一个定制的i.MX6板,它有WM8985音频编解码器.我在sound/soc/codecs文件夹中有编解码器驱动程序wm8985.我正在开发机器级驱动程序声音/ soc/fsl/imx-wm8985.c
我将wm8962代码作为参考.我无法理解linux音频子系统中的音频路由概念.
我已将设备树修改为以下wm8962设备树.
sound {
compatible = "fsl,imx6q-sabresd-wm8985",
"fsl,imx-audio-wm8985";
model = "wm8985-audio";
cpu-dai = <&ssi2>;
audio-codec = <&codec>;
audio-routing =
"Headphone Jack", "HPL",
"Headphone Jack", "HPR",
"Ext Spk", "SPKL",
"Ext Spk", "SPKR",
"Mic Bias", "AMIC",
"RIN", "Mic Bias",
"DMIC", "Mic Bias",
"DMICDAT", "DMIC";
mux-int-port = <2>;
mux-ext-port = <3>;
hp-det-gpios = <&gpio7 8 1>; /* same as sabre */
/*mic-det-gpios = <&gpio1 23 1>;*/ /* move to enet_ref_clk */
};
Run Code Online (Sandbox Code Playgroud)
它是否正确.能帮助我理解源和接收器的含义吗?如何制作路线..
运行aplay,我收到由于错误的路由而发生的读/写错误.
我们想使用支持 SELinux 的 Yocto 构建嵌入式 Linux 设备。
我正在查看 meta-selinux 层依赖项。
依赖关系
该层依赖于 openembedded-core 元数据以及来自 meta-openembedded 存储库的 meta-python 和 meta-oe 层。
当它提到“openembedded-core”时,它是否意味着 poky
git://git.yoctoproject.org/poky
或者
https://github.com/openembedded/openembedded-core
poky 和 openembedded-core 有什么区别,我在 openembedded-core 看不到 bitbake
我们可以使用-c选项来清理特定的配方,例如:
bitbake -c cleanall core-image-sato
Run Code Online (Sandbox Code Playgroud)
但是当我们尝试构建“SDK”时,我们运行以下命令:
bitbake -c populate_sdk core-image-sato
Run Code Online (Sandbox Code Playgroud)
如何清理上述命令生成的输出。
要使用内存映射 I/O,我们需要先调用 request_mem_region。
struct resource *request_mem_region(
unsigned long start,
unsigned long len,
char *name);
Run Code Online (Sandbox Code Playgroud)
然后,由于内核在虚拟地址空间中运行,我们需要通过运行 ioremap 函数将物理地址映射到虚拟地址空间。
void *ioremap(unsigned long phys_addr, unsigned long size);
Run Code Online (Sandbox Code Playgroud)
那为什么不能直接访问返回值呢。
来自 Linux 设备驱动程序书
一旦配备了 ioremap(和 iounmap),设备驱动程序就可以访问任何 I/O 内存地址,无论它是否直接映射到虚拟地址空间。但请记住,从 ioremap 返回的地址不应直接取消引用;相反,应该使用内核提供的访问器函数。
谁能解释这背后的原因或与优势,像存取函数ioread32或iowrite8()?
我从我们的 Linux 内核模块中编写了一个系统调用挂钩示例。
更新了系统调用表中的 open 系统调用以使用我的入口点而不是默认值。
#include <linux/module.h>
#include <linux/kallsyms.h>
MODULE_LICENSE("GPL");
char *sym_name = "sys_call_table";
typedef asmlinkage long (*sys_call_ptr_t)(const struct pt_regs *);
static sys_call_ptr_t *sys_call_table;
typedef asmlinkage long (*custom_open) (const char __user *filename, int flags, umode_t mode);
custom_open old_open;
static asmlinkage long my_open(const char __user *filename, int flags, umode_t mode)
{
char user_msg[256];
pr_info("%s\n",__func__);
memset(user_msg, 0, sizeof(user_msg));
long copied = strncpy_from_user(user_msg, filename, sizeof(user_msg));
pr_info("copied:%ld\n", copied);
pr_info("%s\n",user_msg);
return old_open(filename, flags, mode);
}
static int __init hello_init(void)
{
sys_call_table = (sys_call_ptr_t *)kallsyms_lookup_name(sym_name); …Run Code Online (Sandbox Code Playgroud) 我的要求是每当我点击按钮时将进度条的颜色更改为红色.我不想注释掉Application.EnableVisualStyles().
所以我尝试使用SendMessage.我的代码:
[DllImport("user32.dll")]
private static extern bool SendMessage(IntPtr hWnd, Int32 msg, Int32 wParam, Int32 lParam);
private const Int32 WM_USER = 0x0400;
private const Int32 CCM_FIRST = 0x2000;
private const Int32 PBM_SETBARCOLOR = WM_USER + 9;
private const Int32 PBM_SETBKCOLOR = CCM_FIRST + 1;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.Invoke((MethodInvoker)delegate
{
SendMessage(this.progressBar1.Handle, PBM_SETBARCOLOR, 0, ColorTranslator.ToWin32(Color.Red));
SendMessage(this.progressBar1.Handle, PBM_SETBKCOLOR, 0, ColorTranslator.ToWin32(Color.Red));
progressBar1.Style = ProgressBarStyle.Continuous;
progressBar1.Value = progressBar1.Maximum;
});
}
Run Code Online (Sandbox Code Playgroud)
它不起作用.我不知道为什么.你可以帮忙吗?
Yocto 中的 IMAGE_INSTALL 和 IMAGE_FEATURES 有什么区别。
我已经看到在 Yocto 中启用启动画面。我们需要将以下内容写入local.conf
IMAGE_FEATURES += "splash"
Run Code Online (Sandbox Code Playgroud)
为什么我不能在这里使用 IMAGE_INSTALL
IMAGE_INSTALL += "splash"
Run Code Online (Sandbox Code Playgroud)
谁能告诉我什么时候应该使用 IMAGE_FEATURES 和 IMAGE_INSTALL?
linux ×7
yocto ×5
linux-kernel ×4
x86 ×2
audio ×1
bitbake ×1
c ×1
c# ×1
imx6 ×1
install ×1
io ×1
openembedded ×1
progress-bar ×1
rootfs ×1
system-calls ×1
winforms ×1