Star Labs Lite Mk III(StarLite Mk III)coreboot 实战指南:Gemini Lake 板级配置、IFWI 固件与 fwupd 刷写
固件嵌入式操作系统驱动开发【免费下载链接】corebootRead-only mirror of https://review.coreboot.org/coreboot.git. Synced every hour. We dont handle Pull Requests.项目地址https://gitcode.com/gh_mirrors/co/coreboot点击查看免费下载本文围绕 coreboot 仓库中 Star Labs Lite Mk IIIStarLite Mk III主板的官方文档展开完整覆盖该板型的硬件规格、coreboot 构建前置条件与命令、SPI Flash 芯片信息及 fwupd 内部刷写流程并结合仓库中的 Kconfig、设备树devicetree、IFWI 固件映射与 SPI 驱动源码说明该板在 coreboot 中的实际实现细节帮助读者独立完成这块 Gemini Lake 笔记本的 coreboot 构建与刷写。一、StarLite Mk III 硬件规格文档 lite_glk.md 给出的完整硬件清单如下类别配置CPUIntel N5000Gemini Lake完整规格参考 Intel ARKECITE IT8987E背光键盘标准 PS/2 键码 SCI 热键电池充电器AC 适配器或 USB-C PD挂起/恢复Suspend/ResumeGPUIntel UHD Graphics 605建议使用 GOP 驱动提供 VBTeDP 11.6 英寸 1920x1080 液晶屏HDMI 视频USB-C DisplayPort 视频内存8GB 板载网络9462 CNVi WiFi / 蓝牙焊接在 PCBA 上音频Realtek ALC269内置扬声器与麦克风3.5mm 耳麦二合一接口HDMI 音频USB-C DisplayPort 音频存储M.2 SATA SSDRTS5129 MicroSD 读卡器USB640x480 CCD 摄像头USB 3.1 Gen 1 Type-C左USB 3.1 Gen 1 Type-A左USB 3.1 Gen 1 Type-A右从源码结构看这些规格与仓库中的配置一一对应Kconfig 中BOARD_STARLABS_LITE_GLK选择SOC_INTEL_GEMINILAKE对应 N5000 所在的 Gemini Lake SoC、EC_STARLABS_ITE对应 ITE IT8987E 嵌入式控制器以及SPI_FLASH_GIGADEVICE对应下文刷写章节的 Gigadevice 闪存而MAINBOARD_PART_NUMBER的默认值正是Lite Mk III见 KconfigMAINBOARD_FAMILY为I3。二、coreboot 源码中的板级支持结构Lite 系列主板的源码位于 src/mainboard/starlabs/lite 目录按变体组织variants/glkLite Mk III与variants/glkrLite Mk IVN5030。关键实现包括入口与 GPIOmainboard.c 中init_mainboard()通过variant_gpio_table()取得变体 GPIO 表并调用gpio_configure_pads()配置引脚enable_mainboard()将dev-ops-acpi_fill_ssdt指向merlin_fill_ssdt即 SSdT 表由 Star Labs Merlin EC 驱动填充。设备树variants/glk/devicetree.cb 指定 SoC 芯片为soc/intel/apollolakeGemini Lake 与 Apollo Lake 共用该 SoC 描述。板级变量variants/glk/Makefile.mk 将gpio.c编入 bootblock 与 ramstage、hda_verb.c编入 ramstage用于 HDA 动词表即文档所述音频电路初始化、romstage.c编入 romstage。2.1 设备树中的关键配置devicetree.cb 中的配置印证了硬件规格表中的多个条目chip soc/intel/apollolake register common_soc_config.chipset_lockdown CHIPSET_LOCKDOWN_COREBOOT ... device domain 0 on device ref igd on register gfx GMA_DEFAULT_PANEL(0) end device ref cnvi on chip drivers/wifi/generic register add_acpi_dma_property true register enable_cnvi_ddr_rfim true ...device ref igdGMA_DEFAULT_PANEL(0)对应文档中eDP 11.6 英寸 1920x1080 LCD结合 Kconfig 中select INTEL_GMA_HAVE_VBT说明文档VBT is provided提供 VBT由板级 variants/glk/data.vbt 落实GPU 走 GOP 驱动路径。device ref cnvi对应9462 CNVi WiFi/蓝牙通过 drivers/wifi/generic 芯片接入并配置了 DDR RFIM 使能与 ACPI DMA 属性。device ref hda上设置subsystemid 0x2145 0x0004注释明确为# Lite ALC269 VC与规格表中的 Realtek ALC269 声卡一致。device ref lpc_espi挂接chip ec/starlabs/merlin对应 ITE IT8987E EC其中 PS/2 键盘 PnP 设备4e.06分配了io 0x60/0x64与irq 1正是文档所述标准 PS/2 键码键盘的 ACPI 描述device ref sata启用端口 0 对应 M.2 SATA SSD。USB 端口逐个在xhci下开启并生成 ACPI PLD 热插拔属性Type-C母板、Type-A母板/子板、内置摄像头usb2_port[4]、SD 卡读卡器usb2_port[6]与 CNVi 蓝牙usb2_port[9]使用 GPIO_33 使能/复位。Kconfig 中WEBCAM_USB_PORTglk 默认为 4与CARD_READER_USB_PORTglk 默认为 6与设备树中的端口号一致。device mmio 0xfed40000挂接chip drivers/crb对应 Kconfig 中的CRB_TPM/MAINBOARD_HAS_TPM2即该板 TPM 通过 CRB 接口暴露。2.2 Kconfig 中该板型的选择项BOARD_STARLABS_LITE_GLK 本身很简洁大部分能力来自它所选中的系列配置BOARD_STARLABS_LITE_SERIESKconfigconfig BOARD_STARLABS_LITE_SERIES def_bool n select BOARD_ROMSIZE_KB_8192 # 8 MiB 闪存与 Flash 芯片规格一致 select DRIVERS_EFI_VARIABLE_STORE select DRIVERS_OPTION_CFR_ENABLED select DRIVERS_I2C_HID # 触摸板/键盘 HID over I2C select FSP_COMPRESS_FSP_M_LZMA # FSP-M/FSP-S 使用 LZMA 压缩 select FSP_COMPRESS_FSP_S_LZMA select HAVE_ACPI_RESUME select HAVE_ACPI_TABLES select HAVE_INTEL_PTT select VALIDATE_INTEL_DESCRIPTOR select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE # 串口控制台 select CRB_TPM select MAINBOARD_HAS_TPM2 select ONBOARD_VGA_IS_PRIMARY select SOC_INTEL_COMMON_BLOCK_HDA select SOC_INTEL_COMMON_BLOCK_HDA_VERB select SPD_READ_BY_WORD select SPI_FLASH_GIGADEVICE # Gigadevice SPI Flash 驱动 select SYSTEM_TYPE_LAPTOP select TPM2其他与 glk 变体相关的默认值包括UART_FOR_CONSOLE为 2串口控制台走 uart2、EC_GPE_SCI为0x26EC 唤醒/热键 SCI 事件、电池 ACPI 默认型号3172120X2-I116CG、Apower Electronics厂商、类型LiP以及POWER_STATE_DEFAULT_ON_AFTER_FAILURE n断电恢复后不自动上电符合笔记本习惯。2.3 IFWI 固件映射board.fmdGemini Lake 平台需要 Intel IFWI集成固件包含 Flash Descriptor、TXE 等。variants/glk/board.fmd 给出了完整的 8 MiB0x00000000–0x007FFFFFFlash 布局Flash Descriptor、IFWI、TXE 区域、Platform Data、EC 固件区等均有对应FLREG寄存器条目与 FLMSTR 主控权限定义FLMSTR1 为 Host CPU/BIOS、FLMSTR2 为 TXE、FLMSTR5 为 EC。这与刷写章节中Internal flashing: yes固件本身具备内部刷写权限相匹配。选择 VBOOT 时则改用 vboot.fmdKconfig 中FMDFILE的默认值逻辑。三、构建 coreboot3.1 前置文件Preliminaries根据 Star Labs 系列通用的构建说明 common/building.mdStarLite 系列构建前必须准备两个二进制文件Intel Flash Descriptor 文件descriptor.binIFWI 镜像ifwi.rom可选文件Windows 3.1 BMP 格式的开机画面Logo.bmp这些文件位于 Star Labs 自己的 blobs 仓库StarLabsLtd/blobs中该仓库会替代标准的3rdparty/blobs仓库使用——即构建 Lite Mk III 时需要用 Star Labs 的 blobs 源来提供上述 IFWI/描述符文件。3.2 构建命令文档要求按照 Star Labs 构建说明执行构建并指定config.starlabs_lite_glk作为配置文件make distclean make defconfig KBUILD_DEFCONFIGconfigs/config.starlabs_lite_glk make需要注意的适用前提当前 coreboot 主仓的 configs/ 目录中并没有config.starlabs_lite_glk文件configs/下没有任何 starlabs 开头的配置该配置文件随 Star Labs 的构建环境提供。若不使用其提供的配置也可以在 coreboot 仓库中通过 menuconfig 手动选择该板板型选项在 Kconfig.name 中定义为Star Labs Lite Mk III (N5000)即勾选CONFIG_BOARD_STARLABS_LITE_GLKy再配合 Star Labs blobs 提供的descriptor.bin与ifwi.rom即可完成构建。四、刷写 coreboot4.1 SPI Flash 芯片信息文档给出的 Flash 芯片参数如下原文为 reST 表格此处转为 Markdown属性值Socketed flash带座可插拔noVendorGigadeviceModelGD25LQ64(B)Size8 MiBPackageSOIC-8Internal flashing内部刷写yesExternal flashing外部刷写yes源码佐证系列 Kconfig 中的select SPI_FLASH_GIGADEVICE启用了 src/drivers/spi/gigadevice.c 驱动其中包含对 GD25LQ64 系列器件的支持BOARD_ROMSIZE_KB_8192与 8 MiB 容量一致由于 Flash 为 SOIC-8 焊接且不可插拔文档同时标注支持内部刷写fwupd 经 IFWI/EC 路径与外部刷写两种途径。4.2 使用 fwupd 刷写的要求与步骤刷写方法参见 common/flashing.md要求如下fwupd 版本 1.5.6 或更高电池电量至少 30%必须连接充电器USB-C 或 DC 接口必须关闭 BIOS Lock受支持的发行版Ubuntu 20.04、Linux Mint 20.1 / elementaryOS 6、Manjaro 211. 检查 fwupd 版本fwupdmgr --version在 Ubuntu 20.04/20.10、Linux Mint 20.1、elementaryOS 6 上可通过 Star Labs 的 PPA 安装 fwupd 1.5.6sudo add-apt-repository ppa:starlabs/ppa sudo apt update sudo apt install fwupd在 Manjaro 上sudo pacman -Sy fwupd-git flashrom-starlabs其他发行版若暂不可用也可通过 Live USB 方式安装 coreboot。2. 关闭 BIOS Lock从 AMI 固件切换到 coreboot 前必须执行关机状态下按住F2键开机进入 BIOS 设置方向键导航到Advanced页找到BIOS Lock按Enter将Enabled改为Disabled按F10Save Exit再按Enter确认。3. 切换分支Switching Branch。切换分支指在 AMI 固件与 coreboot 之间切换。先刷新固件列表并执行切换fwupdmgr refresh --force fwupdmgr switch-branch然后根据提示输入对应数字选择目标分支输入y确认n取消。切换完成后系统提示重启下次重启最长可能持续 5 分钟期间不要中断流程或断开充电器。重启完成后即完成切换此后将接收所选分支的更新。任意时刻都可以再次切换分支。五、小结StarLite Mk III 在 coreboot 中的支持集中在 src/mainboard/starlabs/lite 目录variants/glk提供 Gemini Lake 设备树、GPIO 表、HDA 动词与 VBT系列 Kconfig 统一启用了 8 MiB ROM、TPM2CRB、IFWI 校验、Gigadevice SPI 驱动等能力。构建时准备 Star Labs blobs 中的descriptor.bin与ifwi.rom可选Logo.bmp以config.starlabs_lite_glkStar Labs 环境提供或 menuconfig 中 Star Labs Lite Mk III (N5000) 板项构建刷写采用 fwupd 1.5.6 的分支切换机制前提是电量 ≥30%、连接充电器并关闭 AMI BIOS 的 BIOS Lock。该板同时保留内部与外部两种刷写通道便于在刷写失败时通过 SOIC-8 焊接的 GD25LQ64(B) 外部救砖。赞分享固件嵌入式操作系统驱动开发【免费下载链接】corebootRead-only mirror of https://review.coreboot.org/coreboot.git. Synced every hour. We dont handle Pull Requests.项目地址https://gitcode.com/gh_mirrors/co/coreboot点击查看免费下载相关推荐SFTPGo外接身份认证实战LDAP、OAuth2/OIDC单点登录配置完整教程SFTPGo外接身份认证实战LDAP、OAuth2/OIDC单点登录配置完整教程 SFTPGo 是一款功能完整的开源文件传输服务器同时支持 SFTP、FTP固件嵌入式操作系统驱动开发coreboot 中 Star Labs StarLite Mk Vlite_adl主板支持规格、构建与固件烧写指南coreboot 中 Star Labs StarLite Mk Vlite_adl主板支持规格、构建与固件烧写指南 本文基于 coreboot 仓库中固件嵌入式操作系统驱动开发coreboot 实战指南Star Labs LabTop Mk IVLabTop CML主板适配、编译与固件刷写解析coreboot 实战指南Star Labs LabTop Mk IVLabTop CML主板适配、编译与固件刷写解析 本文以 coreboot 仓库中固件嵌入式操作系统驱动开发上一篇OneUptime 仪表盘配置与访问控制所有者、标签、权限与公开共享的落地实践下一篇7天精通Lucide从零开始掌握SVG图标库的终极指南创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

从零到一:2026年薪酬设计核心技巧,让员工主动加动力

从零到一:2026年薪酬设计核心技巧,让员工主动加动力

在2026年,人才市场的竞争已进入“精细化”阶段。企业若仍依赖“年终奖固定涨薪”的简单模式,往往难以真正激发员工的内驱力。如何从零开始搭建一套既能匹配市场水平又能驱动业务增长的薪酬体系,成为HR与企业管理者的核心课题。本文结合行业数…

2026/10/15 20:47:42 阅读更多 →
f_net 网络传输层实战:fountain 框架的 TCP 连接管理、心跳巡检与多节点负载均衡客户端

f_net 网络传输层实战:fountain 框架的 TCP 连接管理、心跳巡检与多节点负载均衡客户端

后端Web框架 【免费下载链接】fountain 一个用于服务器应用开发的综合工具库。 - 零配置文件 - 环境变量和命令行参数配置 - 约定优于配置 - 深刻利用仓颉语言特性 - 只需要开发动态链接库,fboot负责加载、初始化并运行 - 覆盖服务器应用开发的各种场景 项目地址&am…

2026/10/15 20:47:42 阅读更多 →
伪装成HP Smart驱动的远控木马:样本分析、排查与防御

伪装成HP Smart驱动的远控木马:样本分析、排查与防御

最近拿到一个挺有意思的恶意样本,文件名是“HP Smart_Setup_Latest.exe”,图标和官网下载的安装包几乎一模一样,大小也就差了不到2MB。要不是我习惯性右键看了一眼数字签名,八成也会手滑双击。这个样本后来被卡巴斯基的引擎检出&a…

2026/10/15 20:47:42 阅读更多 →

最新新闻

大模型指令微调实战:从LoRA选型到数据配比与避坑指南

大模型指令微调实战:从LoRA选型到数据配比与避坑指南

简介:这份PPT面向自然语言处理与大模型方向的学习者与开发者,系统梳理大模型指令微调(Instruction Tuning)的核心概念与整体脉络。内容从NLP四范式切入,依次讲解传统机器学习、深度学习、预训练加微调以及预训练加Prom…

2026/10/15 21:38:54 阅读更多 →
用友U9客户化开发实战:从环境搭建到热更新的完整链路

用友U9客户化开发实战:从环境搭建到热更新的完整链路

简介:本资源是面向用友U9生态伙伴及初阶客户化开发工程师的系统性入门学习资料,聚焦U9平台二次开发核心实践路径,解决从环境配置到UI/BE层开发落地的关键认知盲区。文档为单个817KB的Word(.docx)文件,内容结…

2026/10/15 21:38:54 阅读更多 →
ST语言编程手册:从语法图到避坑实践全解析

ST语言编程手册:从语法图到避坑实践全解析

简介:《ST语言编程手册》是一份系统介绍ST(Structured Text)语言编程知识的参考文档,面向工业自动化、PLC控制及机器人编程领域的技术人员与学习者。手册从ST语言的基本原理讲起,详细拆解语法图、字符组、标识符规则、…

2026/10/15 21:38:54 阅读更多 →
PyTorch Logistic回归实战:sigmoid、交叉熵与二分类模型训练

PyTorch Logistic回归实战:sigmoid、交叉熵与二分类模型训练

跟着这个系列走到这一章,你已经掌握了张量运算、自动求导和梯度下降这些基础工具,也跑通了用线性回归做连续值预测的完整流程。接下来要进入一个全新的问题类型:分类。分类和回归的差别看起来只是一个字,但建模思路、损失函数、评…

2026/10/15 21:38:54 阅读更多 →
NumPy array与pandas Series关键区别与常见坑点解析

NumPy array与pandas Series关键区别与常见坑点解析

在数据处理这个行当里待久了,几乎每个月都会碰到类似的提问:“我这段代码到底该用 NumPy 的 array,还是 pandas 的 Series?”这两个东西在屏幕上看起来长得不一样,但内在关系又实在太近——Series 本身就建立在 ndarra…

2026/10/15 21:38:54 阅读更多 →
Grok 4.5 实测对比:Opus 八成能力、四分之一价格,程序员该怎么选?

Grok 4.5 实测对比:Opus 八成能力、四分之一价格,程序员该怎么选?

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 21:37:53 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →