NXP - និមិត្តសញ្ញា

IMXLXYOCTOUG
មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់គម្រោង i.MX Yocto
Rev. LF6.6.3_1.0.0 — ថ្ងៃទី 29 ខែមិនា ឆ្នាំ 2024
NXP Semiconductors

ការណែនាំអ្នកប្រើប្រាស់

គម្រោង IMXLXYOCTOUG i.MX Yocto

ព័ត៌មានឯកសារ

ព័ត៌មាន មាតិកា
ពាក្យគន្លឹះ i.MX, Linux, LF6.6.3_1.0.0
អរូបី ឯកសារនេះពិពណ៌នាអំពីរបៀបបង្កើតរូបភាពសម្រាប់បន្ទះ i.MX ដោយប្រើបរិយាកាសបង្កើតគម្រោង Yocto ។ វាពិពណ៌នាអំពីស្រទាប់ចេញផ្សាយ i.MX និងការប្រើប្រាស់ជាក់លាក់ i.MX ។

ជាងview

ឯកសារនេះពិពណ៌នាអំពីរបៀបបង្កើតរូបភាពសម្រាប់បន្ទះ i.MX ដោយប្រើបរិយាកាសបង្កើតគម្រោង Yocto ។ វាពិពណ៌នាអំពីស្រទាប់ចេញផ្សាយ i.MX និងការប្រើប្រាស់ជាក់លាក់ i.MX ។
គម្រោង Yocto គឺជាការសហការប្រភពបើកចំហដែលផ្តោតលើការអភិវឌ្ឍន៍ប្រព័ន្ធប្រតិបត្តិការលីនុចដែលបានបង្កប់។ សម្រាប់ព័ត៌មានបន្ថែមអំពីគម្រោង Yocto សូមមើលទំព័រគម្រោង Yocto៖ www.yoctoproject.org/. មានឯកសារជាច្រើននៅលើទំព័រដើមរបស់គម្រោង Yocto ដែលពិពណ៌នាលម្អិតអំពីរបៀបប្រើប្រាស់ប្រព័ន្ធ។ ដើម្បីប្រើគម្រោង Yocto មូលដ្ឋានដោយគ្មានស្រទាប់ចេញផ្សាយ i.MX សូមធ្វើតាមការណែនាំនៅក្នុងគម្រោង Yocto Quick Start ដែលបានរកឃើញនៅ https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html.
សហគមន៍គម្រោង FSL Yocto BSP (រកឃើញនៅ សហគមន៍ FSL BSP (freescale.github.io)) គឺជាសហគមន៍អភិវឌ្ឍន៍នៅខាងក្រៅ NXP ដែលផ្តល់ការគាំទ្រសម្រាប់ក្រុមប្រឹក្សា i.MX នៅក្នុងបរិយាកាសគម្រោង Yocto ។ i.MX បានចូលរួមសហគមន៍គម្រោង Yocto ដែលផ្តល់នូវការចេញផ្សាយដោយផ្អែកលើក្របខ័ណ្ឌគម្រោង Yocto ។ ព័ត៌មានជាក់លាក់ចំពោះការប្រើប្រាស់ BSP របស់សហគមន៍ FSL មាននៅលើសហគមន៍ web ទំព័រ។ ឯកសារនេះគឺជាផ្នែកបន្ថែមនៃឯកសារ BSP សហគមន៍។
Files ប្រើសម្រាប់បង្កើតរូបភាពត្រូវបានរក្សាទុកក្នុងស្រទាប់។ ស្រទាប់មានប្រភេទផ្សេងគ្នានៃការប្ដូរតាមបំណង និងមកពីប្រភពផ្សេងៗគ្នា។ មួយ​ចំនួន​នៃ files នៅក្នុងស្រទាប់ត្រូវបានគេហៅថារូបមន្ត។ រូបមន្ត Yocto Project មានយន្តការដើម្បីទាញយកកូដប្រភព បង្កើត និងវេចខ្ចប់សមាសធាតុមួយ។ បញ្ជីខាងក្រោមបង្ហាញពីស្រទាប់ដែលបានប្រើនៅក្នុងការចេញផ្សាយនេះ។

ស្រទាប់ចេញផ្សាយ i.MX

  • meta-imx
    – meta-bsp៖ អាប់ដេតសម្រាប់ meta-freescale, poky, និង meta-openbedded layers
    - meta-sdk៖ អាប់ដេតសម្រាប់ meta-freescale-distros
    - meta-ml: រូបមន្តរៀនម៉ាស៊ីន
    - meta-v2x៖ រូបមន្ត V2X ប្រើសម្រាប់តែ i.MX 8DXL ប៉ុណ្ណោះ។
    - កាប៊ីនមេតា៖ រូបមន្តកាប៊ីនភីតសម្រាប់ i.MX 8QuadMax

ស្រទាប់សហគមន៍គម្រោង Yocto

  • meta-freescale៖ ផ្តល់ការគាំទ្រសម្រាប់មូលដ្ឋាន និងសម្រាប់ក្តារយោង i.MX Arm។
  • meta-freescale-3rdparty៖ ផ្តល់ការគាំទ្រសម្រាប់ភាគីទីបី និងក្រុមប្រឹក្សាដៃគូ។
  • meta-freescale-distro៖ ធាតុបន្ថែមដើម្បីជួយក្នុងការអភិវឌ្ឍន៍ និងសមត្ថភាពក្រុមប្រឹក្សាភិបាល។
  • fsl-community-bsp-base៖ ជារឿយៗត្រូវបានប្តូរឈ្មោះទៅជាមូលដ្ឋាន។ ផ្តល់នូវការកំណត់មូលដ្ឋានសម្រាប់ FSL Community BSP ។
  • meta-openbedded៖ ការប្រមូលស្រទាប់សម្រាប់សកលលោក OE-core ។ សូមមើល layers.openbedded.org/.
  • poky: ធាតុគម្រោង Yocto មូលដ្ឋាននៅក្នុង Poky ។ សូមមើល Poky README សម្រាប់ព័ត៌មានលម្អិត។
  • meta-browser៖ ផ្តល់ browsers ជាច្រើន។
  • meta-qt6: ផ្តល់ Qt 6 ។
  • meta-timesys៖ ផ្តល់ឧបករណ៍ Vigiles សម្រាប់ការត្រួតពិនិត្យ និងការជូនដំណឹងអំពីភាពងាយរងគ្រោះ BSP (CVEs)។

សេចក្តីយោងទៅស្រទាប់សហគមន៍នៅក្នុងឯកសារនេះគឺសម្រាប់ស្រទាប់ទាំងអស់នៅក្នុងគម្រោង Yocto លើកលែងតែ meta-imx ។ បន្ទះ i.MX ត្រូវបានកំណត់រចនាសម្ព័ន្ធនៅក្នុងស្រទាប់ meta-imx និង meta-freescale ។ នេះរួមបញ្ចូលទាំង U-Boot, ខឺណែលលីនុច និងសេចក្តីលម្អិតអំពីក្រុមប្រឹក្សាភិបាលយោង។
i.MX ផ្តល់ស្រទាប់បន្ថែមមួយហៅថា i.MX BSP Release ដែលមានឈ្មោះថា meta-imx ដើម្បីរួមបញ្ចូលការចេញផ្សាយ i.MX ថ្មីជាមួយ FSL Yocto Project Community BSP ។ ស្រទាប់ meta-imx មានគោលបំណងបញ្ចេញរូបមន្ត Yocto Project និងការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនដែលបានធ្វើបច្ចុប្បន្នភាព និងថ្មីសម្រាប់ការចេញផ្សាយថ្មីដែលមិនទាន់មាននៅលើស្រទាប់ meta-freescale និង meta-freescale-distro ដែលមានស្រាប់នៅក្នុង Yocto Project ។ ខ្លឹមសារនៃ i.MX BSP
ស្រទាប់ចេញផ្សាយគឺជារូបមន្ត និងការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន។ ក្នុងករណីសាកល្បងជាច្រើន ស្រទាប់ផ្សេងទៀតអនុវត្តរូបមន្ត ឬរួមបញ្ចូល files និងស្រទាប់ចេញផ្សាយ i.MX ផ្តល់នូវការអាប់ដេតចំពោះរូបមន្តដោយបន្ថែមទៅរូបមន្តបច្ចុប្បន្ន ឬរួមបញ្ចូលសមាសធាតុ និងការធ្វើបច្ចុប្បន្នភាពជាមួយបំណះ ឬទីតាំងប្រភព។ រូបមន្តស្រទាប់ចេញផ្សាយ i.MX ភាគច្រើនគឺតូចណាស់ ព្រោះវាប្រើអ្វីដែលសហគមន៍បានផ្តល់ និងធ្វើបច្ចុប្បន្នភាពអ្វីដែលត្រូវការសម្រាប់កំណែកញ្ចប់ថ្មីនីមួយៗ ដែលមិនមាននៅក្នុងស្រទាប់ផ្សេងទៀត។
ស្រទាប់ i.MX BSP Release ក៏ផ្តល់នូវរូបមន្តរូបភាពដែលរួមបញ្ចូលសមាសធាតុទាំងអស់ដែលត្រូវការសម្រាប់រូបភាពប្រព័ន្ធដើម្បីចាប់ផ្ដើម ដែលធ្វើឱ្យវាកាន់តែងាយស្រួលសម្រាប់អ្នកប្រើប្រាស់។ សមាសធាតុអាចត្រូវបានបង្កើតជាលក្ខណៈបុគ្គល ឬតាមរយៈរូបមន្តរូបភាព ដែលទាញសមាសធាតុទាំងអស់ដែលត្រូវការនៅក្នុងរូបភាពទៅក្នុងដំណើរការបង្កើតតែមួយ។
ការចេញផ្សាយខឺណែល i.MX និង U-Boot ត្រូវបានចូលប្រើតាមរយៈម៉ាស៊ីនមេ i.MX public Git ។ ទោះជាយ៉ាងណាក៏ដោយសមាសធាតុជាច្រើនត្រូវបានបញ្ចេញជាកញ្ចប់នៅលើកញ្ចក់ i.MX ។ រូបមន្តដែលមានមូលដ្ឋានលើកញ្ចប់ទាញ files ពីកញ្ចក់ i.MX ជំនួសឱ្យទីតាំង Git និងបង្កើតកញ្ចប់ដែលត្រូវការ។
កញ្ចប់ទាំងអស់ដែលត្រូវបានចេញផ្សាយជាប្រព័ន្ធគោលពីរត្រូវបានបង្កើតឡើងជាមួយនឹងចំណុចអណ្តែតលើផ្នែករឹងដែលត្រូវបានអនុញ្ញាត ដូចដែលបានបញ្ជាក់ដោយ DEFAULTTUNE ដែលបានកំណត់នៅក្នុងការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីននីមួយៗ។ file. កញ្ចប់ចំណុចអណ្តែតលើកម្មវិធីមិនត្រូវបានផ្តល់ឱ្យដោយចាប់ផ្តើមជាមួយនឹងការចេញផ្សាយ jethro ។
ការចេញផ្សាយ LF6.6.3_1.0.0 ត្រូវបានចេញផ្សាយសម្រាប់គម្រោង Yocto 4.3 (Nanbield) ។ រូបមន្តដូចគ្នាសម្រាប់គម្រោង Yocto Project 4.3 នឹងត្រូវបានផ្សព្វផ្សាយ និងធ្វើឱ្យមាននៅលើការចេញផ្សាយបន្ទាប់នៃការចេញផ្សាយគម្រោង Yocto ។ វដ្តនៃការចេញផ្សាយគម្រោង Yocto មានរយៈពេលប្រហែលប្រាំមួយខែ។
រូបមន្ត និងបំណះនៅក្នុង meta-imx ត្រូវបានបញ្ចូលទៅក្នុងស្រទាប់សហគមន៍។ បន្ទាប់ពីនោះត្រូវបានធ្វើសម្រាប់សមាសភាគជាក់លាក់មួយ។ files នៅក្នុង meta-imx លែងត្រូវការទៀតហើយ FSL Yocto Project Community BSP នឹងផ្តល់ការគាំទ្រ។ សហគមន៍គាំទ្រក្រុមប្រឹក្សាយោង i.MX ក្រុមប្រឹក្សាសហគមន៍ និងក្រុមប្រឹក្សាភាគីទីបី។

1.1 កិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណអ្នកប្រើប្រាស់ចុងក្រោយ
ក្នុងអំឡុងពេលដំណើរការរៀបចំបរិស្ថាននៃគម្រោង NXP Yocto Project BSP កិច្ចព្រមព្រៀង NXP End User License Agreement (EULA) ត្រូវបានបង្ហាញ។ ដើម្បីបន្តប្រើប្រាស់កម្មវិធី i.MX Proprietary អ្នកប្រើប្រាស់ត្រូវតែយល់ព្រមតាមលក្ខខណ្ឌនៃអាជ្ញាប័ណ្ណនេះ។ កិច្ចព្រមព្រៀងចំពោះលក្ខខណ្ឌអនុញ្ញាតឱ្យបង្កើតគម្រោង Yocto ដើម្បីលុបកញ្ចប់ពីកញ្ចក់ i.MX ។
ចំណាំ៖
សូមអានកិច្ចព្រមព្រៀងអាជ្ញាប័ណ្ណនេះដោយប្រុងប្រយ័ត្នក្នុងអំឡុងពេលដំណើរការរៀបចំ ពីព្រោះនៅពេលដែលបានទទួលយក ការងារបន្ថែមទៀតទាំងអស់នៅក្នុងបរិយាកាសគម្រោង i.MX Yocto ត្រូវបានចងភ្ជាប់ទៅនឹងកិច្ចព្រមព្រៀងដែលបានទទួលយកនេះ។

1.2 ឯកសារយោង
i.MX មានគ្រួសារជាច្រើនដែលគាំទ្រនៅក្នុងកម្មវិធី។ ខាង​ក្រោម​នេះ​គឺ​ជា​ក្រុម​គ្រួសារ​ដែល​បាន​រាយ​បញ្ជី និង SoCs ក្នុង​មួយ​គ្រួសារ។ i.MX Linux Release Notes ពិពណ៌នាថា SoC មួយណាត្រូវបានគាំទ្រនៅក្នុងការចេញផ្សាយបច្ចុប្បន្ន។ SoCs មួយចំនួនដែលបានចេញផ្សាយពីមុនអាចបង្កើតបាននៅក្នុងការចេញផ្សាយបច្ចុប្បន្ន ប៉ុន្តែមិនមានសុពលភាពទេ ប្រសិនបើពួកគេស្ថិតនៅកម្រិតដែលមានសុពលភាពពីមុន។

  • i.MX 6 គ្រួសារ៖ 6QuadPlus, 6Quad, 6DualLite, 6SoloX, 6SLL, 6UltraLite, 6ULL, 6ULZ
  • i.MX 7 គ្រួសារ៖ 7Dual, 7ULP
  • i.MX 8 គ្រួសារ៖ 8QuadMax, 8QuadPlus, 8ULP
  • i.MX 8M Family៖ 8M Plus, 8M Quad, 8M Mini, 8M Nano
  • i.MX 8X គ្រួសារ៖ 8QuadXPlus, 8DXL
  • i.MX 9 គ្រួសារ៖ i.MX 93, i.MX 95

ការចេញផ្សាយនេះរួមបញ្ចូលឯកសារយោង និងព័ត៌មានបន្ថែមដូចខាងក្រោម។

  • i.MX Linux Release Notes (IMXLXRN) – ផ្តល់ព័ត៌មានចេញផ្សាយ។
  • មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ i.MX Linux (IMXLUG) – ផ្តល់ព័ត៌មានអំពីការដំឡើង U-Boot និង Linux OS និងការប្រើប្រាស់លក្ខណៈពិសេសជាក់លាក់របស់ i.MX ។
  • មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់គម្រោង i.MX Yocto (IMXLXYOCTOUG) – ពិពណ៌នាអំពីកញ្ចប់គាំទ្រក្រុមប្រឹក្សាភិបាលសម្រាប់ប្រព័ន្ធអភិវឌ្ឍន៍ NXP ដោយប្រើគម្រោង Yocto ដើម្បីរៀបចំម៉ាស៊ីន ដំឡើងខ្សែសង្វាក់ឧបករណ៍ និងបង្កើតកូដប្រភពដើម្បីបង្កើតរូបភាព។
  • i.MX Machine Learning User's Guide (IMXMLUG) – ផ្តល់ព័ត៌មានអំពីការរៀនម៉ាស៊ីន។
  • i.MX Linux Reference Manual (IMXLXRM) – ផ្តល់ព័ត៌មានអំពីកម្មវិធីបញ្ជា Linux សម្រាប់ i.MX ។
  • មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ក្រាហ្វិក i.MX (IMXGRAPHICUG) – ពិពណ៌នាអំពីលក្ខណៈពិសេសក្រាហ្វិក។
  • មគ្គុទ្ទេសក៍ច្រក i.MX (IMXXBSPPG) – ផ្តល់ការណែនាំអំពីការបញ្ជូន BSP ទៅកាន់ក្រុមប្រឹក្សាភិបាលថ្មី។
  • i.MX VPU Application Programming Interface Manual Linux Reference Manual (IMXVPUAPI) – ផ្តល់ព័ត៌មានយោងនៅលើ VPU API នៅលើ i.MX 6 VPU ។
  • មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ Harpoon (IMXHPUG) - បង្ហាញការចេញផ្សាយ Harpoon សម្រាប់គ្រួសារឧបករណ៍ i.MX 8M ។
  • i.MX Digital Cockpit Hardware Partitioning Enablement for i.MX 8QuadMax (IMXDCHPE) – ផ្តល់នូវដំណោះស្រាយផ្នែករឹងរបស់ i.MX Digital Cockpit សម្រាប់ i.MX 8QuadMax ។
  • មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ i.MX DSP (IMXDSPUG) – ផ្តល់ព័ត៌មាននៅលើ DSP សម្រាប់ i.MX 8 ។
  • i.MX 8M Plus Camera and Display Guide (IMX8MPCDUG) – ផ្តល់ព័ត៌មាននៅលើ ISP Independent Sensor Interface API សម្រាប់ i.MX 8M Plus ។
  • EdgeLock Enclave Hardware Security Module API (RM00284) – ឯកសារនេះគឺជាការពិពណ៌នាផ្នែកទន់នៃ API ដែលផ្តល់ដោយ i.MX 8ULP, i.MX 93, និង i.MX 95 Hardware Security Module (HSM) សម្រាប់ដំណោះស្រាយ EdgeLock Enclave ( ELE) វេទិកា។

មគ្គុទ្ទេសក៍ចាប់ផ្តើមរហ័សមានព័ត៌មានមូលដ្ឋាននៅលើក្តារ និងរៀបចំវា។ ពួកគេនៅលើ NXP webគេហទំព័រ។

ឯកសារអាចរកបានតាមអ៊ីនធឺណិតនៅ nxp.com.

លក្ខណៈពិសេស

ស្រទាប់ចេញផ្សាយគម្រោង i.MX Yocto មានលក្ខណៈពិសេសដូចខាងក្រោមៈ

  • រូបមន្តខឺណែលលីនុច
    - រូបមន្តខឺណែលស្ថិតនៅក្នុងថតរូបមន្តខឺណែល និងរួមបញ្ចូលខឺណែល i.MX ពីប្រភពដែលបានទាញយកពីម៉ាស៊ីនមេ i.MX Git ។ នេះត្រូវបានធ្វើដោយស្វ័យប្រវត្តិដោយរូបមន្តនៅក្នុងគម្រោង។
    – LF6.6.3_1.0.0 គឺជាខឺណែលលីនុចដែលបានចេញផ្សាយសម្រាប់គម្រោង Yocto ។
  • រូបមន្ត U-Boot
    - រូបមន្ត U-Boot ស្ថិតនៅក្នុងថតរូបមន្ត-bsp និងរួមបញ្ចូល i.MX uboot-imx.git ពីប្រភពដែលបានទាញយកពីម៉ាស៊ីនមេ i.MX Git ។
    – ការចេញផ្សាយ i.MX LF6.6.3_1.0.0 សម្រាប់ឧបករណ៍ i.MX 6, i.MX 7, i.MX 8, i.MX 93 និង i.MX 95 ប្រើប្រាស់កំណែ v2023.04 i.MX U- ដែលបានអាប់ដេត កំណែចាប់ផ្ដើម។ កំណែនេះមិនត្រូវបានអាប់ដេតសម្រាប់ផ្នែករឹង i.MX ទាំងអស់។
    - សហគមន៍គម្រោង i.MX Yocto BSP ប្រើ u-boot-fslc ពីបន្ទាត់សំខាន់ ប៉ុន្តែវាត្រូវបានគាំទ្រដោយសហគមន៍ U-Boot ប៉ុណ្ណោះ ហើយមិនត្រូវបានគាំទ្រជាមួយខឺណែល L6.6.3 ទេ។
    - សហគមន៍គម្រោង i.MX Yocto BSP ធ្វើបច្ចុប្បន្នភាពកំណែ U-Boot ជាញឹកញាប់ ដូច្នេះព័ត៌មានខាងលើអាចផ្លាស់ប្តូរ ដោយសារកំណែ U-Boot ថ្មីត្រូវបានរួមបញ្ចូលទៅក្នុងស្រទាប់មេតាដោយឥតគិតថ្លៃ ហើយការអាប់ដេតពីការចេញផ្សាយ i.MX uboot-imx ត្រូវបានបញ្ចូលទៅក្នុង បន្ទាត់សំខាន់។
  • រូបមន្តក្រាហ្វិក
    - រូបមន្តក្រាហ្វិករស់នៅក្នុងថតរូបមន្ត - ក្រាហ្វិក។
    - រូបមន្តក្រាហ្វិករួមបញ្ចូលការចេញផ្សាយកញ្ចប់ក្រាហ្វិក i.MX ។ សម្រាប់បន្ទះ i.MX ដែលមាន GPU រូបមន្ត imx-gpu-viv កញ្ចប់សមាសធាតុក្រាហ្វិកសម្រាប់ DISTRO នីមួយៗ៖ frame buffer (FB), XWayland, Wayland backend និង Weston compositor (Weston)។ មានតែ i.MX 6 និង i.MX 7 ប៉ុណ្ណោះដែលគាំទ្រ Frame Buffer ។
    - កម្មវិធីបញ្ជា Xorg រួមបញ្ចូល xserver-xorg ។
  • រូបមន្តកញ្ចប់ i.MX firmware-imx, imx-sc-fimrware និងកញ្ចប់ផ្សេងទៀតស្ថិតនៅក្នុងរូបមន្ត-bsp ហើយទាញចេញពីកញ្ចក់ i.MX ដើម្បីបង្កើត និងវេចខ្ចប់ទៅជារូបមន្តរូបភាព។
  • រូបមន្តពហុព័ត៌មាន
    - រូបមន្តពហុមេឌៀរស់នៅក្នុងរូបមន្ត - ពហុមេឌា។
    - កញ្ចប់ដែលមានកម្មសិទ្ធិដូចជា imx-codec និង imx-parser មានរូបមន្តទាញយកពីកញ្ចក់ i.MX ដើម្បីបង្កើត និងវេចខ្ចប់ទៅជារូបមន្តរូបភាព។
    - កញ្ចប់ Opensource មានរូបមន្តដែលទាញចេញពី Git Repos សាធារណៈនៅលើ GitHub ។
    - រូបមន្តមួយចំនួនត្រូវបានផ្តល់ជូនសម្រាប់កូឌិកដែលត្រូវបានដាក់កម្រិត។ កញ្ចប់សម្រាប់ទាំងនេះមិនមាននៅលើកញ្ចក់ i.MX ទេ។
    កញ្ចប់ទាំងនេះអាចរកបានដោយឡែកពីគ្នា។ ទាក់ទងតំណាង i.MX Marketing របស់អ្នក ដើម្បីទទួលបានព័ត៌មានទាំងនេះ។
  • រូបមន្តស្នូល
    រូបមន្តមួយចំនួនសម្រាប់ច្បាប់ដូចជា udev ផ្តល់នូវច្បាប់ i.MX ដែលបានអាប់ដេតដើម្បីដាក់ឱ្យប្រើប្រាស់នៅក្នុងប្រព័ន្ធ។ រូបមន្តទាំងនេះជាធម្មតាត្រូវបានអាប់ដេតអំពីគោលការណ៍ ហើយត្រូវបានប្រើប្រាស់សម្រាប់ការប្ដូរតាមបំណងតែប៉ុណ្ណោះ។ ការចេញផ្សាយផ្តល់តែការអាប់ដេតប្រសិនបើចាំបាច់។
  • រូបមន្តសាកល្បង
    រូបមន្តធ្វើបាតុកម្មស្ថិតនៅក្នុងបញ្ជីមេតា-sdk។ ស្រទាប់នេះមានរូបមន្តរូបភាព និងរូបមន្តសម្រាប់ការប្ដូរតាមបំណង ដូចជាការក្រិតតាមខ្នាតប៉ះ ឬរូបមន្តសម្រាប់កម្មវិធីបង្ហាញ។
  • រូបមន្តរៀនម៉ាស៊ីន
    រូបមន្តរៀនម៉ាស៊ីនស្ថិតនៅក្នុងថតមេតាមីលី។ ស្រទាប់នេះមានរូបមន្តរៀនម៉ាស៊ីនសម្រាប់កញ្ចប់ដូចជា tensorflow-lite, onnx ជាដើម។
  • រូបមន្តកាប៊ីន
    រូបមន្តកាប៊ីនភីតស្ថិតនៅក្នុងមេតាកាប៊ីន និងត្រូវបានគាំទ្រនៅលើ i.MX 8QuadMax ដោយប្រើការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន imx-8qmcockpit-mek ។
    នៅក្នុងស្រទាប់ meta-nxp-demo-experience ការបង្ហាញបន្ថែម និងរូបមន្តឧបករណ៍ត្រូវបានរួមបញ្ចូល។ ស្រទាប់នេះត្រូវបានរួមបញ្ចូលនៅក្នុងរូបភាពពេញលេញដែលបានចេញផ្សាយទាំងអស់។

ការរៀបចំម៉ាស៊ីន

ដើម្បីទទួលបានការរំពឹងទុករបស់គម្រោង Yocto នៅក្នុងម៉ាស៊ីនម៉ាស៊ីនលីនុច កញ្ចប់ និងឧបករណ៍ប្រើប្រាស់ដែលបានពិពណ៌នាខាងក្រោមត្រូវតែដំឡើង។ ការពិចារណាសំខាន់មួយគឺទំហំថាសរឹងដែលត្រូវការនៅក្នុងម៉ាស៊ីនម៉ាស៊ីន។ សម្រាប់អតីតampដូច្នេះនៅពេលបង្កើតម៉ាស៊ីនដែលដំណើរការ Ubuntu ទំហំថាសរឹងអប្បបរមាដែលត្រូវការគឺប្រហែល 50 GB ។ វាត្រូវបានណែនាំថាយ៉ាងហោចណាស់ 120 GB ត្រូវបានផ្តល់ជូន ដែលវាគ្រប់គ្រាន់ក្នុងការចងក្រង backend ទាំងអស់រួមគ្នា។ សម្រាប់ការបង្កើតសមាសធាតុរៀនម៉ាស៊ីន យ៉ាងហោចណាស់ 250 GB ត្រូវបានណែនាំ។

កំណែអ៊ូប៊ុនទូអប្បបរមាដែលបានណែនាំគឺ 20.04 ឬក្រោយនេះ។ ការចេញផ្សាយចុងក្រោយនេះគាំទ្រ Chromium v91 ដែលតម្រូវឱ្យមានការកើនឡើងដល់កម្រិតអតិបរមា (ចំនួននៃការបើក files) ដល់ 4098 ។

3.1 Docker
ឥឡូវនេះ i.MX កំពុងបញ្ចេញស្គ្រីបដំឡើង docker នៅក្នុង GitHub - nxp-imx/imx-docker: i.MX Docker. អនុវត្តតាមការណែនាំនៅក្នុង readme សម្រាប់ការដំឡើងម៉ាស៊ីនបង្កើតម៉ាស៊ីនដោយប្រើ docker ។
លើសពីនេះ docker នៅលើក្តារត្រូវបានបើកជាមួយស្តង់ដារ manifest ដោយរួមបញ្ចូលស្រទាប់ meta-virtualization នៅលើ i.MX 8 ប៉ុណ្ណោះ។ វាបង្កើតប្រព័ន្ធគ្មានក្បាលសម្រាប់ដំឡើងធុង docker ពីមជ្ឈមណ្ឌល docker ខាងក្រៅ។

3.2 កញ្ចប់ម៉ាស៊ីន
ការស្ថាបនាគម្រោង Yocto ទាមទារកញ្ចប់ជាក់លាក់ដែលត្រូវដំឡើងសម្រាប់ការសាងសង់ដែលត្រូវបានចងក្រងជាឯកសារក្រោមគម្រោង Yocto ។ ទៅ គម្រោង Yocto ចាប់ផ្តើមរហ័ស ហើយពិនិត្យមើលកញ្ចប់ដែលត្រូវតែដំឡើងសម្រាប់ម៉ាស៊ីនសាងសង់របស់អ្នក។
កញ្ចប់ម៉ាស៊ីនគម្រោង Yocto សំខាន់គឺ៖
$ sudo apt ដំឡើង 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-thon-mesa libs1.2 ឯកតារង mesa-common-dev zstd liblz3-tool file មូលដ្ឋាន -y
$ sudo locale-gen en_US.UTF-8

ឧបករណ៍កំណត់រចនាសម្ព័ន្ធប្រើកំណែលំនាំដើមនៃ grep ដែលមាននៅលើម៉ាស៊ីនបង្កើតរបស់អ្នក។ ប្រសិនបើមានកំណែផ្សេងនៃ grep នៅក្នុងផ្លូវរបស់អ្នក វាអាចបណ្តាលឱ្យការស្ថាបនាបរាជ័យ។ ដំណោះស្រាយមួយគឺត្រូវប្តូរឈ្មោះកំណែពិសេសទៅជាអ្វីដែលមិនមាន "grep" ។

3.3 ការដំឡើងឧបករណ៍ប្រើប្រាស់ Repo
Repo គឺជាឧបករណ៍ដែលបង្កើតឡើងនៅលើកំពូលនៃ Git ដែលធ្វើឱ្យវាកាន់តែងាយស្រួលក្នុងការគ្រប់គ្រងគម្រោងដែលមានឃ្លាំងច្រើន ដែលមិនចាំបាច់នៅលើម៉ាស៊ីនមេតែមួយ។ Repo បំពេញបន្ថែមនូវលក្ខណៈស្រទាប់នៃគម្រោង Yocto ដែលធ្វើឱ្យវាកាន់តែងាយស្រួលសម្រាប់អ្នកប្រើប្រាស់ក្នុងការបន្ថែមស្រទាប់ផ្ទាល់ខ្លួនរបស់ពួកគេទៅ BSP ។

ដើម្បីដំឡើងឧបករណ៍ប្រើប្រាស់ "repo" សូមអនុវត្តជំហានទាំងនេះ៖

  1. បង្កើតថតឯកសារនៅក្នុងថតផ្ទះ។
    $ mkdir ~/bin (ជំហាន​នេះ​ប្រហែល​ជា​មិន​ត្រូវ​ការ​ទេ ប្រសិន​បើ​ថត​ធុង​សំរាម​មាន​រួច​ហើយ)
    $ គurl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
    $ chmod a+x ~/bin/repo
  2. បន្ថែមបន្ទាត់ខាងក្រោមទៅ .bashrc file ដើម្បីធានាថាថត ~/bin ស្ថិតនៅក្នុងអថេរ PATH របស់អ្នក។
    នាំចេញ PATH =~/bin: $PATH

ការដំឡើងគម្រោង Yocto

ដំបូងត្រូវប្រាកដថា Git ត្រូវបានតំឡើងយ៉ាងត្រឹមត្រូវជាមួយនឹងពាក្យបញ្ជាខាងក្រោម៖
$ git config –global user.name “ឈ្មោះរបស់អ្នក”
$ git config –global user.email “អ៊ីមែលរបស់អ្នក”
$ git config -list

ថតឯកសារ i.MX Yocto Project BSP Release មានថតប្រភពដែលមានរូបមន្តដែលប្រើសម្រាប់បង្កើតថត build មួយ ឬច្រើន និងសំណុំស្គ្រីបដែលប្រើដើម្បីរៀបចំបរិស្ថាន។
រូបមន្ត​ដែល​ប្រើ​ក្នុង​ការ​សាង​សង់​គម្រោង​នេះ​មក​ពី​ទាំង​សហគមន៍ និង i.MX។ ស្រទាប់គម្រោង Yocto ត្រូវបានទាញយកទៅថតប្រភព។ នេះកំណត់រូបមន្តដែលត្រូវបានប្រើដើម្បីសាងសង់គម្រោង។
ខាងក្រោមនេះ example បង្ហាញពីរបៀបទាញយកស្រទាប់រូបមន្ត i.MX Yocto Project Community BSP ។ សម្រាប់អតីតនេះ។ample, ថតមួយដែលមានឈ្មោះថា imx-yocto-bsp ត្រូវបានបង្កើតឡើងសម្រាប់គម្រោង។ ឈ្មោះណាមួយអាចត្រូវបានប្រើជំនួសវា។
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u https://github.com/nxp-imx/imx-manifest
-b imx-linux-nanbield -m imx-6.6.3-1.0.0.xml
$ repo សមកាលកម្ម

ចំណាំ៖
https://github.com/nxp-imx/imx-manifest/tree/imx-linux-nanbield មានបញ្ជីនៃ manifest ទាំងអស់។ files បានគាំទ្រនៅក្នុងការចេញផ្សាយនេះ។
នៅពេលដំណើរការនេះត្រូវបានបញ្ចប់ កូដប្រភពត្រូវបានពិនិត្យចូលទៅក្នុងថត imx-yocto-bsp/sources ។
អ្នកអាចធ្វើសមកាលកម្ម Repo ដោយប្រើពាក្យបញ្ជា repo ធ្វើសមកាលកម្មជាទៀងទាត់ដើម្បីធ្វើបច្ចុប្បន្នភាពទៅលេខកូដចុងក្រោយបំផុត។
ប្រសិនបើមានកំហុសកើតឡើងកំឡុងពេលចាប់ផ្តើម Repo សូមព្យាយាមលុបថត .repo ហើយដំណើរការពាក្យបញ្ជាចាប់ផ្តើម Repo ម្តងទៀត។
repo init ត្រូវបានកំណត់រចនាសម្ព័ន្ធសម្រាប់បំណះចុងក្រោយបំផុតនៅក្នុងបន្ទាត់។ អនុវត្តតាមការណែនាំនៅក្នុងលិបិក្រម៖ imx-manifest.git ដើម្បីទាញយក GA ដើម។ បើមិនដូច្នោះទេ បំណះ GA បូកត្រូវបានជ្រើសរើសតាមលំនាំដើម។ ដើម្បីយកការចេញផ្សាយពីមុនពី zeus base សូមបន្ថែម -m (release manifest name) នៅចុងបញ្ចប់នៃ Repo initialization line ហើយវានឹងទាញយកការចេញផ្សាយពីមុនមក។ ឧamples ត្រូវបានផ្តល់ជូននៅក្នុង README file នៅក្នុងតំណភ្ជាប់ដែលបានផ្តល់ខាងលើ។

ការបង្កើតរូបភាព

ផ្នែកនេះផ្តល់នូវព័ត៌មានលម្អិតរួមជាមួយនឹងដំណើរការបង្កើតរូបភាព។

5.1 ការកំណត់រចនាសម្ព័ន្ធ
i.MX ផ្តល់នូវស្គ្រីប imx-setup-release.sh ដែលជួយសម្រួលដល់ការដំឡើងសម្រាប់ម៉ាស៊ីន i.MX ។ ដើម្បីប្រើស្គ្រីប ឈ្មោះរបស់ម៉ាស៊ីនជាក់លាក់ដែលត្រូវបង្កើតឡើងសម្រាប់តម្រូវការត្រូវបានបញ្ជាក់ ក៏ដូចជាផ្នែកខាងក្រោយក្រាហ្វិកដែលចង់បាន។
ស្គ្រីបរៀបចំថតឯកសារ និងការកំណត់រចនាសម្ព័ន្ធ files សម្រាប់ម៉ាស៊ីនដែលបានបញ្ជាក់ និងផ្នែកខាងក្រោយ។
នៅក្នុងស្រទាប់ meta-imx i.MX ផ្តល់នូវការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនថ្មី ឬអាប់ដេត ដែលត្រួតលើការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន metafreescale ។ ទាំងនេះ files ត្រូវបានចម្លងចូលទៅក្នុងថតឯកសារ meta-freescale/conf/machine ដោយស្គ្រីប imx-setup-release.sh ។ ខាងក្រោមនេះគឺជាការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន i.MX files ដែលអាចជ្រើសរើសបាន។ ពិនិត្យមើលកំណត់ចំណាំចេញផ្សាយ ឬថតម៉ាស៊ីនសម្រាប់ការបន្ថែមចុងក្រោយបំផុត។

i.MX ៨ i.MX ៨ i.MX ៨ i.MX ៨
• imx6qpsabresd
• imx6ulevk
• imx6ulz-14x14evk
• imx6ull14x14evk
• imx6ull9x9evk
• imx6dlsabred
• imx6qsabred
• imx6solosabresd
• imx6sxsabresd
• imx6sllevk
• imx7dsabresd
• imx7ulpevk
• imx8qmmek
• imx8qxpc0mek
• imx8mqevk
• imx8mm-lpddr4-evk
• imx8mm-ddr4-evk
• imx8mn-lpddr4-evk
• imx8mn-ddr4-evk
• imx8mp-lpddr4-evk
• imx8mp-ddr4-evk
• imx8dxla1-lpddr4-evk
• imx8dxlb0-lpddr4-evk
• imx8dxlb0-ddr3l-evk
• imx8mnddr3levk
• imx8ulp-lpddr4-evk
• imx8ulp-9×9-lpddr4evk
• imx93evk
• imx93-11x11lpddr4x-evk
• imx93-9×9-lpddr4qsb
• imx93-14x14lpddr4x-evk

ថតឯកសារសាងសង់នីមួយៗត្រូវតែកំណត់រចនាសម្ព័ន្ធតាមរបៀបដែលពួកវាប្រើតែការចែកចាយតែមួយប៉ុណ្ណោះ។ រាល់ពេលដែល DISTRO_FEATURES អថេរត្រូវបានផ្លាស់ប្តូរ ថតឯកសារស្អាតគឺត្រូវការ។ ផ្នែកខាងក្រោយក្រាហ្វិកនីមួយៗ Frame Buffer, Wayland និង XWayland នីមួយៗមានការកំណត់រចនាសម្ព័ន្ធចែកចាយ។ ប្រសិនបើគ្មាន DISTRO file ត្រូវបានបញ្ជាក់ ការចែកចាយ XWayland ត្រូវបានតំឡើងតាមលំនាំដើម។ ការកំណត់រចនាសម្ព័ន្ធ Distro ត្រូវបានរក្សាទុកនៅក្នុង local.conf file នៅក្នុងការកំណត់ DISTRO ហើយត្រូវបានបង្ហាញនៅពេលដែល bitbake កំពុងដំណើរការ។ នៅក្នុងការចេញផ្សាយកន្លងមក យើងបានប្រើ poky distro និងកំណែផ្ទាល់ខ្លួន និងអ្នកផ្តល់សេវានៅក្នុង layer.conf របស់យើង ប៉ុន្តែការចែកចាយផ្ទាល់ខ្លួនគឺជាដំណោះស្រាយប្រសើរជាង។ នៅពេលដែលការចែកចាយ poky លំនាំដើមត្រូវបានប្រើ ការកំណត់រចនាសម្ព័ន្ធសហគមន៍លំនាំដើមត្រូវបានប្រើ។ ក្នុងនាមជាការចេញផ្សាយ i.MX យើងចង់មានសំណុំនៃការកំណត់រចនាសម្ព័ន្ធដែល NXP គាំទ្រ និងត្រូវបានសាកល្បង។
នេះគឺជាបញ្ជីនៃការកំណត់រចនាសម្ព័ន្ធ DISTRO ។ សូមចំណាំថា fsl-imx-fb មិនត្រូវបានគាំទ្រនៅលើ i.MX 8 ហើយ fsl-imxx11 មិនត្រូវបានគាំទ្រទៀតទេ។

  • fsl-imx-wayland៖ ក្រាហ្វិចវេយលែនសុទ្ធ។
  • fsl-imx-xwayland៖ ក្រាហ្វិក Wayland និង X11. កម្មវិធី X11 ដែលប្រើ EGL មិនត្រូវបានគាំទ្រទេ។
  • fsl-imx-fb៖ ក្រាហ្វិចបណ្តុំស៊ុម – គ្មាន X11 ឬ Wayland ។ Frame Buffer មិនត្រូវបានគាំទ្រនៅលើ i.MX 8 និង i.MX 9 ទេ។

អ្នកប្រើប្រាស់ត្រូវបានស្វាគមន៍ក្នុងការបង្កើតការចែកចាយផ្ទាល់ខ្លួនរបស់ពួកគេ។ file ដោយផ្អែកលើមួយក្នុងចំណោមទាំងនេះដើម្បីប្ដូរតាមបំណងបរិស្ថានរបស់ពួកគេដោយមិនចាំបាច់ធ្វើបច្ចុប្បន្នភាព local.conf ដើម្បីកំណត់កំណែដែលពេញចិត្ត និងអ្នកផ្តល់សេវា។
វាក្យសម្ព័ន្ធសម្រាប់ស្គ្រីប imx-setup-release.sh ត្រូវបានបង្ហាញខាងក្រោម៖
$ DISTRO = ម៉ាស៊ីន = ប្រភព imx-setup-release.sh -b

ឌីស្ត្រូ = គឺ distro ដែលកំណត់រចនាសម្ព័ន្ធ build environment ហើយវាត្រូវបានរក្សាទុកក្នុង meta-imx/meta-sdk/conf/distro។
ម៉ាស៊ីន = គឺជាឈ្មោះម៉ាស៊ីនដែលចង្អុលទៅការកំណត់រចនាសម្ព័ន្ធ file នៅក្នុង conf/machine ក្នុង meta-freescale និង meta-imx ។
- ខ បញ្ជាក់ឈ្មោះនៃថត build ដែលបង្កើតឡើងដោយស្គ្រីប imx-setup-release.sh ។
នៅពេលដែលស្គ្រីបត្រូវបានដំណើរការ វាជំរុញឱ្យអ្នកប្រើប្រាស់ទទួលយក EULA ។ នៅពេលដែល EULA ត្រូវបានទទួលយក ការទទួលយកត្រូវបានរក្សាទុកក្នុង local.conf នៅខាងក្នុងថត build នីមួយៗ ហើយសំណួរនៃការទទួលយក EULA មិនត្រូវបានបង្ហាញសម្រាប់ថត build នោះទៀតទេ។
បន្ទាប់​ពី​ដំណើរ​ការ​ស្គ្រីប ថត​ឯកសារ​ដែល​ត្រូវ​បាន​បង្កើត​ឡើង​ដោយ​ស្គ្រីប ដែល​បាន​បញ្ជាក់​ជាមួយ​ជម្រើស -b ។ ថត conf ត្រូវបានបង្កើតឡើងដែលមាន files bblayers.conf និង local.conf ។
នេះ។ /conf/bblayers.conf file មានសារធាតុដែកទាំងអស់ដែលប្រើនៅក្នុងការចេញផ្សាយគម្រោង i.MX Yocto ។
local.conf file មាន​លក្ខណៈ​ពិសេស​របស់​ម៉ាស៊ីន និង​ឌីស្ត្រូ៖

ម៉ាស៊ីន ??= 'imx7ulpevk'
DISTRO ?= 'fsl-imx-xwayland'
ACCEPT_FSL_EULA = “1”

ការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនអាចត្រូវបានផ្លាស់ប្តូរដោយការកែសម្រួលនេះ។ fileបើចាំបាច់។
ACCEPT_FSL_EULA ក្នុង local.conf file បង្ហាញថាអ្នកបានទទួលយកលក្ខខណ្ឌនៃ EULA។
នៅក្នុងស្រទាប់ meta-imx ការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនរួម (imx6qpdlsolox.conf និង imx6ul7d.conf) ត្រូវបានផ្តល់ជូនសម្រាប់ម៉ាស៊ីន i.MX 6 និង i.MX 7 ។ i.MX ប្រើវាដើម្បីបង្កើតរូបភាពរួមជាមួយនឹងមែកធាងឧបករណ៍ទាំងអស់ក្នុងរូបភាពតែមួយសម្រាប់ការសាកល្បង។ កុំប្រើម៉ាស៊ីនទាំងនេះសម្រាប់អ្វីផ្សេងក្រៅពីការធ្វើតេស្ត។

5.2 ការជ្រើសរើសរូបភាពគម្រោង i.MX Yocto
គម្រោង Yocto ផ្តល់នូវរូបភាពមួយចំនួនដែលមាននៅលើស្រទាប់ផ្សេងៗគ្នា។ Poky ផ្តល់នូវរូបភាពមួយចំនួន មេតា-freescale និង meta-freescale-distro ផ្តល់ឱ្យអ្នកផ្សេងទៀត ហើយរូបមន្តរូបភាពបន្ថែមត្រូវបានផ្តល់ជូននៅក្នុងស្រទាប់ meta-imx ។ តារាងខាងក្រោមរាយរូបភាពសំខាន់ៗ មាតិការបស់វា និងស្រទាប់ដែលផ្តល់រូបមន្តរូបភាព។

តារាង 1. រូបភាពគម្រោង i.MX Yocto

ឈ្មោះរូបភាព គោលដៅ ផ្តល់ដោយស្រទាប់
ស្នូលរូបភាព - តិចតួចបំផុត។ រូបភាពតូចមួយដែលអនុញ្ញាតឱ្យឧបករណ៍ចាប់ផ្ដើមប៉ុណ្ណោះ។ poky
ស្នូល - រូបភាព - មូលដ្ឋាន រូបភាពសម្រាប់តែកុងសូលដែលគាំទ្រយ៉ាងពេញលេញនូវផ្នែករឹងឧបករណ៍គោលដៅ។ poky
ស្នូលរូបភាព - សាតូ រូបភាពជាមួយ Sato ដែលជាបរិស្ថានចល័ត និងរចនាប័ទ្មដែលមើលឃើញសម្រាប់ឧបករណ៍ចល័ត។ រូបភាពនេះគាំទ្រប្រធានបទ Sato និងប្រើកម្មវិធី Pimlico ។ វាមានស្ថានីយ កម្មវិធីនិពន្ធ និង ក file អ្នកគ្រប់គ្រង។ poky
imx-image-core រូបភាព i.MX ជាមួយកម្មវិធីតេស្ត i.MX ដែលត្រូវប្រើសម្រាប់ Backends Wayland។ រូបភាពនេះត្រូវបានប្រើដោយការធ្វើតេស្តស្នូលប្រចាំថ្ងៃរបស់យើង។ meta-imx/meta-sdk
fsl-image-machine- សាកល្បង រូបភាពស្នូល FSL Community i.MX ជាមួយនឹងបរិយាកាសកុងសូល - មិនមានចំណុចប្រទាក់ GUI ទេ។ meta-freescale-distro
imx-image-multimedia បង្កើតរូបភាព i.MX ដោយប្រើ GUI ដោយគ្មានមាតិកា Qt ។ meta-imx/meta-sdk
imx-image-full បង្កើតរូបភាព Opensource Qt 6 ជាមួយនឹងមុខងារ Machine Learning។ រូបភាពទាំងនេះត្រូវបានគាំទ្រសម្រាប់តែ i.MX SoC ដែលមានក្រាហ្វិកផ្នែករឹងប៉ុណ្ណោះ។ ពួកវាមិនត្រូវបានគាំទ្រនៅលើ i.MX 6UltraLite, i.MX 6UltraLiteLite, i.MX 6SLL, [MX 7Dual, i.MX 8MNanoLite ឬ i.MX 8DXL ទេ meta-imx/meta-sdk

5.3 ការបង្កើតរូបភាព
ការបង្កើតគម្រោង Yocto ប្រើពាក្យបញ្ជា bitbake ។ សម្រាប់អតីតampឡេ, ប៊ីតប៊ឺក បង្កើតសមាសធាតុដែលមានឈ្មោះ។ ការបង្កើតសមាសធាតុនីមួយៗមានភារកិច្ចជាច្រើនដូចជាការទៅយក ការកំណត់រចនាសម្ព័ន្ធ ការចងក្រង ការវេចខ្ចប់ និងការពង្រាយទៅកាន់ rootfs គោលដៅ។ ការបង្កើតរូបភាព bitbake ប្រមូលផ្តុំសមាសធាតុទាំងអស់ដែលតម្រូវដោយរូបភាព និងបង្កើតតាមលំដាប់នៃភាពអាស្រ័យក្នុងមួយកិច្ចការ។ ការបង្កើតដំបូងគឺ toolchain រួមជាមួយនឹងឧបករណ៍ដែលត្រូវការសម្រាប់សមាសធាតុដើម្បីសាងសង់។
ពាក្យបញ្ជាខាងក្រោមគឺជា exampរៀនពីរបៀបបង្កើតរូបភាព៖
$ bitbake imx-image-multimedia

5.4 ជម្រើស Bitbake
ពាក្យបញ្ជា bitbake ដែលប្រើសម្រាប់បង្កើតរូបភាពគឺ bitbake . ប៉ារ៉ាម៉ែត្របន្ថែមអាចត្រូវបានប្រើសម្រាប់សកម្មភាពជាក់លាក់ដែលបានពិពណ៌នាខាងក្រោម។ Bitbake ផ្តល់ជម្រើសដ៏មានប្រយោជន៍ជាច្រើនសម្រាប់ការអភិវឌ្ឍសមាសភាគតែមួយ។ ដើម្បីដំណើរការជាមួយប៉ារ៉ាម៉ែត្រ BitBake ពាក្យបញ្ជាមើលទៅដូចនេះ៖ bitbake គឺជាកញ្ចប់សាងសង់ដែលចង់បាន។
តារាងខាងក្រោមផ្តល់នូវជម្រើស BitBake មួយចំនួន។

តារាង 2. ជម្រើស BitBake

ប៉ារ៉ាម៉ែត្រ BitBake ការពិពណ៌នា
-c យក ទាញយកប្រសិនបើស្ថានភាពនៃការទាញយកមិនត្រូវបានសម្គាល់ថារួចរាល់។
- គ cleanall សម្អាត​បញ្ជី​បង្កើត​សមាសធាតុ​ទាំងមូល។ ការផ្លាស់ប្តូរទាំងអស់នៅក្នុងថតឯកសារត្រូវបានបាត់បង់។ ឫស និងស្ថានភាពនៃសមាសធាតុក៏ត្រូវបានសម្អាតផងដែរ។ សមាសភាគក៏ត្រូវបានយកចេញពីថតទាញយកផងដែរ។
-c ដាក់ពង្រាយ ដាក់ពង្រាយរូបភាព ឬសមាសធាតុទៅ rootfs ។
-k បន្ត​សមាសធាតុ​នៃ​ការ​សាងសង់​ទោះបីជា​មានការ​សម្រាក​សាងសង់​កើតឡើង​ក៏ដោយ។
-c ចងក្រង -f វាមិនត្រូវបានណែនាំថាកូដប្រភពនៅក្រោមថតបណ្ដោះអាសន្នត្រូវបានផ្លាស់ប្តូរដោយផ្ទាល់ទេ ប៉ុន្តែប្រសិនបើវាគឺ គម្រោង Yocto ប្រហែលជាមិនបង្កើតវាឡើងវិញទេ លុះត្រាតែជម្រើសនេះត្រូវបានប្រើ។ ប្រើជម្រើសនេះដើម្បីបង្ខំការចងក្រងឡើងវិញបន្ទាប់ពីរូបភាពត្រូវបានដាក់ឱ្យប្រើប្រាស់។
-g រាយបញ្ជីមែកធាងអាស្រ័យសម្រាប់រូបភាព ឬសមាសធាតុ។
-DDD បើកការបំបាត់កំហុស 3 កម្រិតជ្រៅ។ D នីមួយៗបន្ថែមកម្រិតនៃការបំបាត់កំហុសមួយទៀត។
-s, -show-versions បង្ហាញកំណែបច្ចុប្បន្ន និងពេញចិត្តនៃរូបមន្តទាំងអស់។

5.5 ការកំណត់រចនាសម្ព័ន្ធ U-Boot
ការកំណត់រចនាសម្ព័ន្ធ U-Boot ត្រូវបានកំណត់នៅក្នុងការកំណត់ម៉ាស៊ីនមេ file. ការកំណត់រចនាសម្ព័ន្ធត្រូវបានបញ្ជាក់ដោយប្រើការកំណត់ UBOOT_CONFIG ។ វាទាមទារការកំណត់ UBOOT_CONFIG នៅក្នុង local.conf។ បើមិនដូច្នោះទេ U-Boot build ប្រើ SD boot តាមលំនាំដើម។
ទាំងនេះអាចត្រូវបានបង្កើតដោយឡែកពីគ្នាដោយប្រើពាក្យបញ្ជាខាងក្រោម (ផ្លាស់ប្តូរម៉ាស៊ីនទៅគោលដៅត្រឹមត្រូវ) ។
ការកំណត់រចនាសម្ព័ន្ធ U-Boot ច្រើនអាចត្រូវបានបង្កើតឡើងដោយប្រើពាក្យបញ្ជាមួយដោយដាក់ចន្លោះរវាងការកំណត់រចនាសម្ព័ន្ធ U-Boot ។
ខាងក្រោមនេះគឺជាការកំណត់រចនាសម្ព័ន្ធ U-Boot សម្រាប់ក្តារនីមួយៗ។ បន្ទះ i.MX 6 និង i.MX 7 គាំទ្រ SD ដោយគ្មាន OPTEE និងជាមួយ OP-TEE៖

  • uboot_config_imx93evk=”sd fspi”
  • uboot_config_imx8mpevk=”sd fspi ecc”
  • uboot_config_imx8mnevk=”sd fspi”
  • uboot_config_imx8mmevk=”sd fspi”
  • uboot_config_imx8mqevk=”sd”
  • uboot_config_imx8dxlevk=”sd fspi”
  • uboot_conifg_imx8dxmek=”sd fspi”
  • uboot_config_imx8qxpc0mek=”sd fspi”
  • uboot_config_imx8qxpmek=”sd fspi”
  • uboot_config_imx8qmmek=”sd fspi”
  • uboot_config_imx8ulpevk=”sd fspi”
  • uboot_config_imx8ulp-9×9-lpddr4-evk=”sd fspi”
  • uboot_config_imx6qsabred=”sd sata sd-optee”
  • uboot_config_imx6qsabreauto=”sd sata eimnor spinor nand sd-optee”
  • uboot_config_imx6dlsabred=”sd epdc sd-optee”
  • uboot_config_imx6dlsabreauto=”sd eimnor spinor nand sd-optee”
  • uboot_config_imx6solosabresd=”sd sd-optee”
  • uboot_config_imx6solosabreauto=”sd eimnor spinor nand sd-optee”
  • uboot_config_imx6sxsabred=”sd emmc qspi2 m4fastup sd-optee”
  • uboot_config_imx6sxsabreauto=”sd qspi1 nand sd-optee”
  • uboot_config_imx6qpsabreauto=”sd sata eimnor spinor nand sd-optee”
  • uboot_config_imx6qpsabresd=”sd sata sd-optee”
  • uboot_config_imx6sllevk=”sd epdc sd-optee”
  • uboot_config_imx6ulevk=”sd emmc qspi1 sd-optee”
  • uboot_config_imx6ul9x9evk=”sd qspi1 sd-optee”
  • uboot_config_imx6ull14x14evk=”sd emmc qspi1 nand sd-optee”
  • uboot_config_imx6ull9x9evk=”sd qspi1 sd-optee”
  • uboot_config_imx6ulz14x14evk=”sd emmc qspi1 nand sd-optee”
  • uboot_config_imx7dsabresd=”sd epdc qspi1 nand sd-optee”
  • uboot_config_imx7ulpevk=”sd emmc sd-optee”

ដើម្បីសាងសង់ជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធ U-Boot ណាមួយ សូមអនុវត្តជំហានខាងក្រោម។
ជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធ U-Boot តែមួយ៖
$echo “UBOOT_CONFIG = \”eimnor\”” >> conf/local.conf
ជាមួយនឹងការកំណត់រចនាសម្ព័ន្ធ U-Boot ច្រើន៖
$ echo “UBOOT_CONFIG = \”sd eimnor\”” >> conf/local.conf
$ ម៉ាស៊ីន = bitbake -c ដាក់ពង្រាយ u-boot-imx
ចំណាំ៖ i.MX 8 ប្រើ imx-boot ដែលទាញ U-Boot ។

5.6 បង្កើតសេណារីយ៉ូ
ខាងក្រោមគឺជាសេណារីយ៉ូនៃការដំឡើងសម្រាប់ការកំណត់រចនាសម្ព័ន្ធផ្សេងៗ។
ដំឡើង manifest និងបញ្ចូលប្រភពស្រទាប់គម្រោង Yocto ដោយប្រើពាក្យបញ្ជាទាំងនេះ៖
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u https://github.com/nxp-imx/imx-manifest
-b imx-linux-nanbield -m imx-6.6.3-1.0.0.xml
$ repo សមកាលកម្ម
ផ្នែកខាងក្រោមផ្តល់ឱ្យអតីតជាក់លាក់មួយចំនួនamples ។ ជំនួសឈ្មោះម៉ាស៊ីន និងផ្នែកខាងក្រោយដែលបានបញ្ជាក់ ដើម្បីប្ដូរពាក្យបញ្ជាតាមបំណង។

រូបភាព 5.6.1 Frame Buffer នៅលើ i.MX 6QuadPlus SABRE-AI
$ DISTRO=fsl-imx-fb MACHINE=imx6qpsabreauto ប្រភព imx-setup-release.sh –b build-fb
$ bitbake imx-image-multimedia
នេះបង្កើតរូបភាពពហុមេឌៀជាមួយផ្នែកខាងក្រោយសតិបណ្ដោះអាសន្នស៊ុម។

រូបភាព 5.6.2 XWayland នៅលើ i.MX 8QuadXPlus MEK
$ DISTRO=fsl-imx-xwayland MACHINE=imx8qxpmek ប្រភព imx-setup-release.sh -b build-xwayland
$ bitbake imx-image-full
វាបង្កើតរូបភាព XWayland ជាមួយ Qt 6 និងមុខងាររៀនម៉ាស៊ីន។ ដើម្បីសាងសង់ដោយគ្មាន Qt 6 និងការរៀនម៉ាស៊ីន សូមប្រើ imx-image-multimedia ជំនួសវិញ។

5.6.3 រូបភាព Wayland នៅលើ i.MX 8M Quad EVK
$ DISTRO=fsl-imx-wayland MACHINE=imx8mqevk ប្រភព imx-setup-release.sh -b buildwayland
$ bitbake imx-image-multimedia
វាបង្កើតរូបភាព Weston Wayland ជាមួយនឹងពហុព័ត៌មានដោយគ្មាន Qt 6 ។

5.6.4 ការចាប់ផ្តើមបរិស្ថានសាងសង់ឡើងវិញ
ប្រសិនបើបង្អួចស្ថានីយថ្មីត្រូវបានបើក ឬម៉ាស៊ីនត្រូវបានចាប់ផ្ដើមឡើងវិញ បន្ទាប់ពីការដំឡើងថតឯកសារ នោះស្គ្រីបបរិស្ថាននៃការដំឡើងគួរតែត្រូវបានប្រើដើម្បីដំឡើងអថេរបរិស្ថាន ហើយដំណើរការការស្ថាបនាម្តងទៀត។ imxsetup-release.sh ពេញលេញគឺមិនត្រូវការទេ។
$ source setup-environment

5.6.5 Chromium Browser នៅលើ XWayland និង Wayland
សហគមន៍គម្រោង Yocto មានរូបមន្ត Chromium សម្រាប់កម្មវិធីរុករក Chromium កំណែ Wayland សម្រាប់ i.MX SoC ជាមួយនឹងផ្នែករឹង GPU ។ NXP មិនគាំទ្រ ឬសាកល្បងបំណះពីសហគមន៍ទេ។ ផ្នែកនេះពិពណ៌នាអំពីរបៀបរួមបញ្ចូល Chromium ទៅក្នុង rootfs របស់អ្នក និងបើកដំណើរការការបង្កើនល្បឿនផ្នែករឹងនៃការបង្ហាញ WebGL កម្មវិធីរុករកតាមអ៊ីនធឺណិត Chromium ទាមទារស្រទាប់បន្ថែមដូចជា meta-browser បានបន្ថែមនៅក្នុងស្គ្រីប imx-release-setup.sh ដោយស្វ័យប្រវត្តិ។
នៅក្នុង local.conf សម្រាប់ XWayland ឬ Wayland បន្ថែម Chromium ទៅក្នុងរូបភាពរបស់អ្នក។ X11 មិនត្រូវបានគាំទ្រទេ។
CORE_IMAGE_EXTRA_INSTALL += "chromium-ozone-wayland"

5.6.6 Qt 6 និង QtWebកម្មវិធីរុករកម៉ាស៊ីន
Qt 6 មានទាំងអាជ្ញាប័ណ្ណពាណិជ្ជកម្ម និងប្រភពបើកចំហ។ នៅពេលសាងសង់នៅក្នុងគម្រោង Yocto អាជ្ញាប័ណ្ណប្រភពបើកចំហគឺជាលំនាំដើម។ ត្រូវប្រាកដថាស្វែងយល់ពីភាពខុសគ្នារវាងអាជ្ញាប័ណ្ណទាំងនេះ ហើយជ្រើសរើសឱ្យបានត្រឹមត្រូវ។ បន្ទាប់ពីការអភិវឌ្ឍន៍ Qt 6 ផ្ទាល់ខ្លួនបានចាប់ផ្តើមនៅលើអាជ្ញាប័ណ្ណប្រភពបើកចំហ វាមិនអាចប្រើជាមួយអាជ្ញាប័ណ្ណពាណិជ្ជកម្មបានទេ។ ធ្វើការជាមួយអ្នកតំណាងផ្នែកច្បាប់ ដើម្បីយល់ពីភាពខុសគ្នារវាងអាជ្ញាប័ណ្ណទាំងនេះ។
ចំណាំ៖
អគារ QtWebម៉ាស៊ីនមិនឆបគ្នាជាមួយស្រទាប់ meta-chromium ដែលប្រើដោយការចេញផ្សាយនោះទេ។
ប្រសិនបើអ្នកកំពុងប្រើការដំឡើង NXP build យក meta-chromium ចេញពី bblayers.conf៖
# បញ្ចេញមតិដោយសារភាពមិនស៊ីគ្នាជាមួយ qtwebម៉ាស៊ីន
#BBLAYERS += “${BSPDIR}/sources/meta-browser/meta-chromium”

មានកម្មវិធីរុករក Qt 6 ចំនួនបួន។ QtWebកម្មវិធីរុករកម៉ាស៊ីនអាចរកបាននៅក្នុង៖

  • /usr/share/qt6/examples/webenginewidgets/StyleSheetbrowser
  • /usr/share/qt6/examples/webenginewidgets/Simplebrowser
  • /usr/share/qt6/examples/webenginewidgets/Cookiebrowser
  • /usr/share/qt6/examples/webម៉ាស៊ីន / កម្មវិធីរុករករហ័ស

កម្មវិធីរុករកទាំងបីអាចដំណើរការបានដោយចូលទៅកាន់ថតខាងលើ ហើយដំណើរការកម្មវិធីដែលអាចប្រតិបត្តិបាននៅទីនោះ។
អេក្រង់ប៉ះអាចត្រូវបានបើកដោយបន្ថែមប៉ារ៉ាម៉ែត្រ -plugin evdevtouch:/dev/input/event0 ទៅកម្មវិធីដែលអាចប្រតិបត្តិបាន។
./quicknanobrowser -plugin evdevtouch:/dev/input/event0
QtWebម៉ាស៊ីនដំណើរការតែលើ SoC ជាមួយនឹងផ្នែករឹងក្រាហ្វិក GPU នៅលើ i.MX 6, i.MX 7, i.MX 8, និង i.MX 9 ។
ដើម្បីរួមបញ្ចូល Qtwebម៉ាស៊ីនក្នុងរូបភាព ដាក់ខាងក្រោមក្នុង local.conf ឬក្នុងរូបមន្តរូបភាព។
IMAGE_INSTALL: append = ” packagegroup-qt6-webម៉ាស៊ីន”

5.6.7 ការរៀនម៉ាស៊ីន NXP eIQ
ស្រទាប់ meta-ml គឺជាការរួមបញ្ចូលនៃ NXP eIQ machine learning ដែលពីមុនត្រូវបានចេញផ្សាយជាស្រទាប់ meta-imx-machinelearning ដាច់ដោយឡែក ហើយឥឡូវនេះត្រូវបានដាក់បញ្ចូលទៅក្នុងរូបភាព BSP ស្តង់ដារ (imx-image-full)។
លក្ខណៈពិសេសជាច្រើនទាមទារ Qt 6. ក្នុងករណីប្រើការកំណត់ផ្សេងទៀតជាង imx-image-full សូមដាក់ដូចខាងក្រោមក្នុង local.conf៖
IMAGE_INSTALL៖ append = ” packagegroup-imx-ml”
ដើម្បីដំឡើងកញ្ចប់ NXP eIQ ទៅ SDK សូមដាក់ដូចខាងក្រោមក្នុង local.conf៖
TOOLCHAIN_TARGET_TASK: append = ” tensorflow-lite-dev onnxruntime-dev”

ចំណាំ៖
TOOLCHAIN_TARGET_TASK_append variable ដំឡើងកញ្ចប់ទៅ SDK តែប៉ុណ្ណោះ មិនមែនរូបភាពទេ។
ដើម្បីបន្ថែមការកំណត់រចនាសម្ព័ន្ធគំរូ និងទិន្នន័យបញ្ចូលសម្រាប់ការបង្ហាញ OpenCV DNN សូមដាក់ខាងក្រោមក្នុង local.conf៖
PACKAGECONFIG:append:pn-opencv_mx8 = ”tests-imx”

5.6.8 ប្រព័ន្ធ
Systemd ត្រូវបានបើកជាកម្មវិធីគ្រប់គ្រងការចាប់ផ្តើមលំនាំដើម។ ដើម្បីបិទ systemd ជាលំនាំដើម សូមចូលទៅកាន់ fsl-imxpreferred-env.inc ហើយបញ្ចេញមតិលើផ្នែក systemd ។

5.6.9 ការអនុញ្ញាត Multilib
សម្រាប់ i.MX 8 ការកសាងកម្មវិធី 32 ប៊ីតនៅលើប្រព័ន្ធប្រតិបត្តិការ 64 ប៊ីតអាចត្រូវបានគាំទ្រដោយប្រើការកំណត់រចនាសម្ព័ន្ធ multilib ។ Multilib ផ្តល់នូវសមត្ថភាពក្នុងការបង្កើតបណ្ណាល័យជាមួយនឹងការបង្កើនប្រសិទ្ធភាពគោលដៅផ្សេងៗគ្នា ឬទម្រង់ស្ថាបត្យកម្ម ហើយបញ្ចូលវាជាមួយគ្នាទៅជារូបភាពប្រព័ន្ធតែមួយ។ Multilib ត្រូវបានបើកដោយបន្ថែមការប្រកាស MULTILIB, DEFAULTTUNE និង IMAGE_INSTALL ទៅកាន់ local.conf របស់អ្នក។ file. Multilib មិនត្រូវបានគាំទ្រជាមួយនឹងការគ្រប់គ្រងកញ្ចប់ debian ទេ។ វាទាមទារប្រព័ន្ធ RPM ។ បញ្ចេញមតិលើបន្ទាត់គ្រប់គ្រងកញ្ចប់ពីរនៅក្នុង local.conf ដើម្បីទៅកាន់ RPM លំនាំដើម។
សេចក្តីប្រកាស MULTILIBS គឺជាធម្មតា lib32 ឬ lib64 ហើយចាំបាច់ត្រូវកំណត់ក្នុង
MULTILIB_GLOBAL_VARIANTS អថេរដូចខាងក្រោម៖

MULTILIBS = “multilib:lib32”
DEFAULTTUNE ត្រូវតែជាតម្លៃមួយក្នុងចំណោមតម្លៃ AVAILTUNES សម្រាប់ប្រភេទបណ្ណាល័យជំនួសនេះដូចខាងក្រោម៖
DEFAULTTUNE:virtclass-multilib-lib32 = “armv7athf-neon”
IMAGE_INSTALL នឹងត្រូវបានបន្ថែមទៅរូបភាព បណ្ណាល័យ 32 ប៊ីតដែលត្រូវការដោយកម្មវិធីជាក់លាក់ដូចខាងក្រោម៖
IMAGE_INSTALL: append = ” lib32-bash”
សម្រាប់ករណីនៅលើ i.MX 8 ការកសាងការគាំទ្រកម្មវិធី 32 ប៊ីតនឹងតម្រូវឱ្យមានសេចក្តីថ្លែងការណ៍ខាងក្រោមនៅក្នុង local.conf ។ ការកំណត់រចនាសម្ព័ន្ធនេះបញ្ជាក់ម៉ាស៊ីន 64 ប៊ីតជាប្រភេទម៉ាស៊ីនចម្បង ហើយបន្ថែម multilib:lib32 ដែលបណ្ណាល័យទាំងនោះត្រូវបានចងក្រងជាមួយបទភ្លេង armv7athf-neon ហើយបន្ទាប់មករួមបញ្ចូលទៅគ្រប់រូបភាពទាំងអស់នៃកញ្ចប់ lib32។
ម៉ាស៊ីន = imx8mqevk
# កំណត់គោលដៅពហុលីប
ទាមទារ conf/multilib.conf
MULTILIBS = “multilib:lib32”
DEFAULTTUNE:virtclass-multilib-lib32 = “armv7athf-neon”
# បន្ថែមកញ្ចប់ multilib ទៅក្នុងរូបភាព
IMAGE_INSTALL: append = ” lib32-glibc lib32-libgcc lib32-libstdc++”
បិទការវេចខ្ចប់ deb ដើម្បីជៀសវាងកំហុសក្នុងដំណើរការណាមួយ។ ពិនិត្យក្នុង local.conf ហើយបញ្ចេញមតិប្រសិនបើមាន៖
PACKAGE_CLASSES = “package_deb”
EXTRA_IMAGE_FEATURES += "ការគ្រប់គ្រងកញ្ចប់"

5.6.10 ការបើក OP-TEE
OP-TEE ទាមទារសមាសភាគបី៖ OP-TEE OS ម៉ាស៊ីនភ្ញៀវ OP-TEE និងការធ្វើតេស្ត OP-TEE ។ លើសពីនេះ ខឺណែល និង U-Boot មានការកំណត់រចនាសម្ព័ន្ធ។ OP-TEE OS ស្ថិតនៅក្នុងកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ ខណៈពេលដែលម៉ាស៊ីនភ្ញៀវ OP-TEE និងការធ្វើតេស្តស្ថិតនៅក្នុង rootfs ។
OP-TEE ត្រូវបានបើកតាមលំនាំដើមនៅក្នុងការចេញផ្សាយនេះ។ ដើម្បីបិទ OP-TEE សូមចូលទៅកាន់ meta-imx/meta-bsp/conf/layer.conf file ហើយបញ្ចេញមតិ DISTRO_FEATURES_append សម្រាប់ OP-TEE ហើយមិនបញ្ចេញមតិលើបន្ទាត់ដែលបានដកចេញ។

5.6.11 ការកសាងគុក
Jailhouse គឺជា Hypervisor បែងចែកឋិតិវន្តដោយផ្អែកលើ Linux OS ។ វាត្រូវបានគាំទ្រនៅលើបន្ទះ i.MX 8M Plus, i.MX 8M Nano, i.MX 8M Quad EVK និង i.MX 8M Mini EVK boards ។

ដើម្បីបើកដំណើរការ Jailhouse build សូមបន្ថែមបន្ទាត់ខាងក្រោមទៅកាន់ local.conf៖
DISTRO_FEATURES: បន្ថែម = "គុក"
នៅក្នុង U-Boot ដំណើរការ jh_netboot ឬ jh_mmcboot ។ វាផ្ទុក DTB ពិសេសសម្រាប់ការប្រើប្រាស់ Jailhouse ។ យក i.MX 8M Quad ជាអតីតampបន្ទាប់​ពី Linux OS ចាប់ផ្ដើម៖
#insmod jailhouse.ko
#./jailhouse បើក imx8mq.cell

សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពី Jailhouse នៅលើ i.MX 8 សូមមើលការណែនាំអ្នកប្រើប្រាស់ i.MX Linux (IMXLUG)។

5.6.12 ការគ្រប់គ្រងកញ្ចប់
ការគ្រប់គ្រងកញ្ចប់លំនាំដើមជាមួយគម្រោង Yocto គឺ rpm ។ ការចែកចាយ i.MX ឥឡូវនេះបើកដំណើរការ debian ជាការគ្រប់គ្រងកញ្ចប់។ វាអាចត្រូវបានបិទយ៉ាងងាយស្រួលដោយបន្ថែមការកំណត់ ACKAGE_CLASSES ទៅ package_rpm នៅក្នុង local.conf ឬបង្កើតការចែកចាយផ្ទាល់ខ្លួនដោយមិនមានព័ត៌មានកញ្ចប់ debian PACKAGE_CLASSES = “package_deb” ។
ជាមួយ​នឹង​ការ​បន្ថែម​នៃ​ផ្ទាំង​ព័ត៌មាន​កញ្ចប់​ debian នោះ​ប្រភព​មួយ​អាច​ត្រូវ​បាន​បន្ថែម​ទៅ /etc/apt ដែល​ភ្ជាប់​ក្នុង​ព័ត៌មាន​កញ្ចប់​របស់​ Debian។ នេះអនុញ្ញាតឱ្យអ្នកប្រើប្រាស់ដំឡើងកញ្ចប់ដែលមិនត្រូវបានផ្តល់ឱ្យក្នុងរូបភាពដោយមិនចាំបាច់បន្ថែមវាទៅក្នុងរូបភាព Yocto ។ ដោយសារតែកញ្ចប់ព័ត៌មាននេះមិនត្រូវបានបង្កើតដោយដំណើរការបង្កើត i.MX Yocto នោះមិនមានការធានាថាកញ្ចប់នីមួយៗនឹងដំណើរការជាមួយនឹងភាពអាស្រ័យត្រឹមត្រូវនោះទេ ប៉ុន្តែវាអនុញ្ញាតឱ្យមានឧបករណ៍សាមញ្ញជាង។
កម្មវិធីដែលស្មុគ្រស្មាញ និងមានភាពអាស្រ័យច្រើនលើកំណែជាក់លាក់អាចមានបញ្ហាជាមួយព័ត៌មានកញ្ចប់ខាងក្រៅ។

ការដាក់ពង្រាយរូបភាព

បញ្ចប់ fileរូបភាពប្រព័ន្ធត្រូវបានដាក់ពង្រាយ /tmp/deploy/images. រូបភាពមួយគឺសម្រាប់ផ្នែកភាគច្រើនជាក់លាក់ចំពោះម៉ាស៊ីនដែលបានកំណត់ក្នុងការរៀបចំបរិស្ថាន។ ការបង្កើតរូបភាពនីមួយៗបង្កើត U-Boot ខឺណែល និងប្រភេទរូបភាពដោយផ្អែកលើ IMAGE_FSTYPES ដែលបានកំណត់ក្នុងការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន file. ការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីនភាគច្រើនផ្តល់នូវរូបភាពកាត SD (.wic) និងរូបភាព rootfs (.tar) ។ រូបភាពកាត SD មានរូបភាពដែលបានបែងចែក (ជាមួយ U-Boot, ខឺណែល, rootfs ។ល។) សមរម្យសម្រាប់ការចាប់ផ្ដើមផ្នែករឹងដែលត្រូវគ្នា។

6.1 ការ​បញ្ចេញ​រូបភាព​កាត SD
រូបភាពកាត SD file .wic មានរូបភាពដែលបែងចែក (ជាមួយ U-Boot, ខឺណែល, rootfs ។ល។) សមរម្យសម្រាប់ការចាប់ផ្ដើមផ្នែករឹងដែលត្រូវគ្នា។ ដើម្បីបញ្ចេញរូបភាពកាត SD សូមដំណើរការពាក្យបញ្ជាខាងក្រោម៖
zstdcat .wic.zst | sudo dd នៃ =/dev/sd bs=1M conv=fsync
សម្រាប់ព័ត៌មានបន្ថែមអំពីការបើកពន្លឺ សូមមើលផ្នែក "ការរៀបចំកាត SD/MMC ដើម្បីចាប់ផ្ដើម" នៅក្នុងសៀវភៅណែនាំអ្នកប្រើប្រាស់ i.MX Linux (IMXLUG)។ សម្រាប់កម្មវិធីរៀនម៉ាស៊ីន NXP eIQ ត្រូវការទំហំថាសទំនេរបន្ថែម (ប្រហែល 1 GB)។ វាត្រូវបានកំណត់ដោយការបន្ថែមអថេរ IMAGE_ROOTFS_EXTRA_SPACE ទៅក្នុង local.conf file មុនពេលដំណើរការសាងសង់ Yocto ។ សូមមើល Yocto Project Mega-សៀវភៅណែនាំ.

ការប្ដូរតាមបំណង

មាន​សេណារីយ៉ូ​បី​ក្នុង​ការ​បង្កើត​និង​ប្ដូរ​តាម​បំណង​នៅ​លើ i.MX Linux OS៖

  • ការកសាង i.MX Yocto Project BSP និងធ្វើឱ្យមានសុពលភាពនៅលើបន្ទះយោង i.MX ។ ការណែនាំនៅក្នុងឯកសារនេះពិពណ៌នាអំពីវិធីសាស្រ្តនេះយ៉ាងលម្អិត។
  • ការកំណត់ខឺណែលតាមបំណង និងបង្កើតក្រុមប្រឹក្សាភិបាលផ្ទាល់ខ្លួន និងមែកធាងឧបករណ៍ជាមួយខឺណែល និង U-Boot ។ សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីរបៀបបង្កើត SDK និងដំឡើងម៉ាស៊ីនម៉ាស៊ីនសម្រាប់បង្កើតខឺណែល និង U-Boot តែនៅខាងក្រៅបរិយាកាសបង្កើតគម្រោង Yocto សូមមើលជំពូក "របៀបបង្កើត U-Boot និង Kernel នៅក្នុងបរិស្ថានឯករាជ្យ" នៅក្នុង i មគ្គុទ្ទេសក៍អ្នកប្រើប្រាស់ .MX (IMXLUG) ។
  • ការកំណត់ការចែកចាយបន្ថែម ឬដកការវេចខ្ចប់ចេញពី BSP ដែលផ្តល់សម្រាប់ការចេញផ្សាយ i.MX Linux ដោយបង្កើតស្រទាប់គម្រោង Yocto ផ្ទាល់ខ្លួន។ i.MX ផ្តល់នូវការបង្ហាញសាកល្បងជាច្រើនamples ដើម្បីបង្ហាញស្រទាប់ផ្ទាល់ខ្លួននៅលើកំពូលនៃការចេញផ្សាយ i.MX BSP ។ ផ្នែកដែលនៅសល់ក្នុងឯកសារនេះផ្តល់នូវការណែនាំសម្រាប់ការបង្កើត DISTRO ផ្ទាល់ខ្លួន និងការកំណត់រចនាសម្ព័ន្ធក្តារ។

7.1 ការបង្កើតការចែកចាយផ្ទាល់ខ្លួន
ការចែកចាយផ្ទាល់ខ្លួនអាចកំណត់រចនាសម្ព័ន្ធបង្កើតបរិយាកាសផ្ទាល់ខ្លួន។ ឌីស្ត្រូ files បានចេញផ្សាយ fsl-imx-wayland, fslimx-xwayland, និង fsl-imx-fb ទាំងអស់បង្ហាញការកំណត់រចនាសម្ព័ន្ធសម្រាប់ផ្នែកខាងក្រោយក្រាហ្វិកជាក់លាក់។ Distros ក៏អាចត្រូវបានប្រើដើម្បីកំណត់រចនាសម្ព័ន្ធប៉ារ៉ាម៉ែត្រផ្សេងទៀតដូចជា ខឺណែល U-Boot និង GStreamer ។ ការចែកចាយ i.MX files ត្រូវបានកំណត់ដើម្បីបង្កើតបរិយាកាសបង្កើតផ្ទាល់ខ្លួនដែលត្រូវការសម្រាប់សាកល្បងការចេញផ្សាយ i.MX Linux OS BSP របស់យើង។
វាត្រូវបានណែនាំសម្រាប់អតិថិជនម្នាក់ៗដើម្បីបង្កើតការចែកចាយផ្ទាល់ខ្លួនរបស់ពួកគេ។ file ហើយប្រើវាសម្រាប់ការកំណត់អ្នកផ្តល់សេវា កំណែ និងការកំណត់ផ្ទាល់ខ្លួនសម្រាប់បរិស្ថានសាងសង់របស់ពួកគេ។ ឌីស្ត្រូត្រូវបានបង្កើតឡើងដោយចម្លងឌីស្ត្រូដែលមានស្រាប់ fileឬរួមបញ្ចូលមួយដូចជា poky.conf និងការបន្ថែមការផ្លាស់ប្តូរបន្ថែម ឬរួមទាំងការចែកចាយ i.MX មួយ ហើយប្រើវាជាចំណុចចាប់ផ្តើម។

7.2 ការបង្កើតការកំណត់រចនាសម្ព័ន្ធក្តារផ្ទាល់ខ្លួន
អ្នកលក់ដែលកំពុងបង្កើតក្តារឯកសារយោងប្រហែលជាចង់បន្ថែមក្តាររបស់ពួកគេទៅ FSL Community BSP ។
ការមានម៉ាស៊ីនថ្មីដែលគាំទ្រដោយ FSL Community BSP ធ្វើឱ្យវាងាយស្រួលក្នុងការចែករំលែកកូដប្រភពជាមួយសហគមន៍ និងអនុញ្ញាតឱ្យមានមតិកែលម្អពីសហគមន៍។
គម្រោង Yocto ធ្វើឱ្យវាងាយស្រួលក្នុងការបង្កើត និងចែករំលែក BSP សម្រាប់ក្រុមប្រឹក្សាភិបាលថ្មីដែលមានមូលដ្ឋានលើ i.MX ។ ដំណើរការផ្សព្វផ្សាយគួរតែចាប់ផ្តើមនៅពេលដែលខឺណែល Linux OS និងកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធដំណើរការ និងសាកល្បងសម្រាប់ម៉ាស៊ីននោះ។ វាមានសារៈសំខាន់ខ្លាំងណាស់ក្នុងការមានខឺណែលលីនុចដែលមានស្ថេរភាព និងកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធ (សម្រាប់ឧample, U-Boot) ដែលត្រូវចង្អុលទៅក្នុងការកំណត់ម៉ាស៊ីន fileទៅជាលំនាំដើមដែលប្រើសម្រាប់ម៉ាស៊ីននោះ។
ជំហានសំខាន់មួយទៀតគឺកំណត់អ្នកថែទាំសម្រាប់ម៉ាស៊ីនថ្មី។ អ្នកថែទាំគឺជាអ្នកទទួលខុសត្រូវក្នុងការរក្សាសំណុំនៃកញ្ចប់សំខាន់ៗដែលដំណើរការសម្រាប់ក្រុមប្រឹក្សាភិបាលនោះ។ អ្នកថែទាំម៉ាស៊ីនគួរតែរក្សាខឺណែល និងកម្មវិធីចាប់ផ្ដើមប្រព័ន្ធឱ្យទាន់សម័យ ហើយកញ្ចប់ទំហំអ្នកប្រើប្រាស់ត្រូវបានសាកល្បងសម្រាប់ម៉ាស៊ីននោះ។

ជំហានដែលត្រូវការត្រូវបានរាយខាងក្រោម។

  1. កំណត់រចនាសម្ព័ន្ធខឺណែលតាមបំណង files តាមតម្រូវការ។ ការកំណត់រចនាសម្ព័ន្ធខឺណែល។ file គឺជាទីតាំងនៅក្នុង arch/arm/configs ហើយរូបមន្តខឺណែលអ្នកលក់គួរតែប្ដូរតាមបំណងនូវកំណែដែលបានផ្ទុកតាមរយៈរូបមន្តខឺណែល។
  2. ប្ដូរ U-Boot តាមតម្រូវការ។ សូមមើល i.MX BSP Porting Guide (IMXBSPPG) សម្រាប់ព័ត៌មានលម្អិតអំពីរឿងនេះ។
  3. ចាត់តាំងអ្នកថែទាំក្រុមប្រឹក្សាភិបាល។ អ្នកថែទាំនេះធ្វើឱ្យប្រាកដថា files ត្រូវបានអាប់ដេតតាមតម្រូវការ ដូច្នេះការស្ថាបនាតែងតែដំណើរការ។
  4. រៀបចំការកសាងគម្រោង Yocto ដូចដែលបានពិពណ៌នានៅក្នុងការណែនាំសហគមន៍ Yocto Project ដូចបានបង្ហាញខាងក្រោម។
    ប្រើសាខាមេសហគមន៍។
    ក. ទាញយកកញ្ចប់ម៉ាស៊ីនដែលត្រូវការ អាស្រ័យលើការចែកចាយ Linux OS ម៉ាស៊ីនរបស់អ្នក ពី គម្រោង Yocto ចាប់ផ្តើមរហ័ស.
    ខ. ទាញយក Repo ដោយប្រើពាក្យបញ្ជា៖
    $ គurl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
    គ. បង្កើត​ថត​ដើម្បី​រក្សា​អ្វី​គ្រប់​យ៉ាង​។ ឈ្មោះ​ថត​ណា​មួយ​អាច​ត្រូវ​បាន​ប្រើ។ ឯកសារនេះប្រើ imxcommunity-bsp ។
    $ mkdir imx-community-bsp
    ឃ. ប្រតិបត្តិពាក្យបញ្ជាខាងក្រោម៖
    $ cd imx-community-bsp
    អ៊ី ចាប់ផ្តើម Repo ជាមួយនឹងសាខាមេនៃ Repo ។
    $ repo init -u https://github.com/Freescale/fsl-community-bsp-platform - ខមេ
    f. ទទួលបានរូបមន្តដែលនឹងត្រូវបានប្រើដើម្បីសាងសង់។
    $ repo សមកាលកម្ម
    g. រៀបចំបរិស្ថានដោយប្រើពាក្យបញ្ជាខាងក្រោម៖
    $ source setup-environment build
  5. ជ្រើសរើសម៉ាស៊ីនស្រដៀងគ្នា file នៅក្នុង fsl-community-bsp/sources/meta-freescale-3rdparty/conf/machine ហើយចម្លងវា ដោយប្រើឈ្មោះដែលបង្ហាញពីក្រុមប្រឹក្សាភិបាលរបស់អ្នក។ កែសម្រួលបន្ទះថ្មី។ file ជាមួយនឹងព័ត៌មានអំពីក្រុមប្រឹក្សាភិបាលរបស់អ្នក។ ផ្លាស់ប្តូរឈ្មោះ និងការពិពណ៌នាយ៉ាងហោចណាស់។ បន្ថែម MACHINE_FEATURE ។
  6. សាកល្បងការផ្លាស់ប្ដូររបស់អ្នកជាមួយសាខាមេសហគមន៍ចុងក្រោយបំផុត ធ្វើឱ្យប្រាកដថាអ្វីៗដំណើរការបានល្អ។ ប្រើយ៉ាងហោចណាស់រូបភាពស្នូល-អប្បបរមា។
    $ bitbake core-image-minimal
  7. រៀបចំបំណះ។ សូមអនុវត្តតាមការណែនាំអំពីរចនាប័ទ្មរូបមន្ត និង git.yoctoproject.org/cgit/cgit.cgi/meta-freescale/tree/README នៅក្នុងផ្នែកដែលមានចំណងជើងថា ការរួមចំណែក។
  8. បញ្ចូលទៅក្នុង meta-freescale-3rdparty ។ ដើម្បីឡើងទឹក សូមផ្ញើបំណះទៅ metafreescale@yoctoproject.org.

7.3 ការត្រួតពិនិត្យភាពងាយរងគ្រោះផ្នែកសុវត្ថិភាពនៅក្នុង BSP របស់អ្នក។
ការត្រួតពិនិត្យភាពងាយរងគ្រោះ និងការបង្ហាញទូទៅ (CVE) អាចត្រូវបានសម្រេចដោយប្រើឧបករណ៍ Vigiles ដែលបានបើក NXP ពី Timesys ។ Vigiles គឺជាឧបករណ៍ត្រួតពិនិត្យ និងគ្រប់គ្រងភាពងាយរងគ្រោះដែលផ្តល់នូវការវិភាគ Yocto CVE នៃរូបភាពគោលដៅ។ វាធ្វើដូចនេះដោយការប្រមូលទិន្នន័យមេតាអំពីកម្មវិធីដែលប្រើក្នុង Yocto Project BSP ហើយប្រៀបធៀបវាជាមួយនឹងមូលដ្ឋានទិន្នន័យ CVE ដែលរួមបញ្ចូលព័ត៌មាននៅលើ CVEs ពីប្រភពផ្សេងៗ រួមទាំង NIST, Ubuntu និងមួយចំនួនផ្សេងទៀត។
កម្រិតខ្ពស់ជាងview ភាពងាយរងគ្រោះដែលបានរកឃើញត្រូវបានបញ្ជូនមកវិញ ហើយការវិភាគលម្អិតពេញលេញជាមួយនឹងព័ត៌មានស្តីពីការប៉ះពាល់ដល់ CVEs ភាពធ្ងន់ធ្ងរ និងការជួសជុលដែលមានអាចមាន។ viewed លើបណ្តាញ។
ដើម្បីចូលប្រើរបាយការណ៍អនឡាញ សូមចុះឈ្មោះសម្រាប់គណនី NXP Vigiles របស់អ្នកដោយធ្វើតាមតំណ៖
https://www.timesys.com/register-nxp-vigiles/
ព័ត៌មានបន្ថែមអំពីការដំឡើង និងការប្រតិបត្តិ Vigiles អាចរកបាននៅទីនេះ៖
https://github.com/TimesysGit/meta-timesys
https://www.nxp.com/vigiles

7.3.1 ការកំណត់រចនាសម្ព័ន្ធ
បន្ថែម meta-timesys ទៅ conf/bblayers.conf នៃ BSP build របស់អ្នក។
អនុវត្តតាមទម្រង់នៃអេ file ហើយបន្ថែម meta-timesys៖
BBLAYERS += “${BSPDIR}/sources/meta-timesys”
បន្ថែមការប្រុងប្រយ័ត្នចំពោះអថេរ INHERIT នៅក្នុង conf/local.conf៖
INHERIT += "ប្រុងប្រយ័ត្ន"

7.3.2 ការប្រតិបត្តិ
នៅពេលដែល meta-timesys ត្រូវបានបន្ថែមទៅ build របស់អ្នក Vigiles ប្រតិបត្តិភាពងាយរងគ្រោះផ្នែកសុវត្ថិភាព រាល់ពេលដែល Linux BSP ត្រូវបានបង្កើតជាមួយ Yocto ។ មិនមានពាក្យបញ្ជាបន្ថែមដែលត្រូវការទេ។ បន្ទាប់ពីការសាងសង់នីមួយៗត្រូវបានបញ្ចប់ ព័ត៌មានស្កេនភាពងាយរងគ្រោះត្រូវបានរក្សាទុកក្នុងថត imx-yocto-bsp/ / ប្រុងប្រយ័ត្ន។
អ្នកអាចធ្វើបាន view ព័ត៌មានលម្អិតនៃការស្កេនសុវត្ថិភាពតាមរយៈ៖

  • បន្ទាត់ពាក្យបញ្ជា (សង្ខេប)
  • លើបណ្តាញ (ព័ត៌មានលម្អិត)
    គ្រាន់តែបើក file មានឈ្មោះ -report.txt ដែលរួមបញ្ចូលតំណភ្ជាប់ទៅកាន់របាយការណ៍លម្អិតលើអ៊ីនធឺណិត។

សំណួរដែលសួរញឹកញាប់

8.1 ការចាប់ផ្តើមរហ័ស
ផ្នែកនេះសង្ខេបពីរបៀបរៀបចំគម្រោង Yocto នៅលើម៉ាស៊ីនលីនុច និងបង្កើតរូបភាព។ ការពន្យល់លម្អិតអំពីអត្ថន័យនេះ មាននៅក្នុងផ្នែកខាងលើ។

ការដំឡើងឧបករណ៍ប្រើប្រាស់ "repo"
ដើម្បីទទួលបាន BSP អ្នកត្រូវដំឡើង "repo" ។ នេះត្រូវធ្វើតែម្តងប៉ុណ្ណោះ។

$: mkdir ~/bin
$: គurl https://storage.googleapis.com/git-repo-downloads/repo>~/bin/repo
$: chmod a+x ~/bin/repo
$: PATH=${PATH}:~/bin

កំពុងទាញយក BSP Yocto Project Environment ។
ប្រើឈ្មោះត្រឹមត្រូវសម្រាប់ការចេញផ្សាយដែលចង់បាននៅក្នុងជម្រើស -b សម្រាប់ repo init ។ នេះត្រូវធ្វើម្តងសម្រាប់ការចេញផ្សាយនីមួយៗ ហើយកំណត់ការចែកចាយសម្រាប់ថតដែលបានបង្កើតក្នុងជំហានដំបូង។ ការធ្វើសមកាលកម្ម repo អាចត្រូវបានដំណើរការដើម្បីធ្វើបច្ចុប្បន្នភាពរូបមន្តនៅក្រោមប្រភពទៅចុងក្រោយបំផុត។
$: mkdir imx-yocto-bsp
$: cd imx-yocto-bsp
$: repo init -u https://github.com/nxp-imx/imx-manifest -b imx-linux-nanbield m imx-6.6.3-1.0.0.xml
៖ ធ្វើសមកាលកម្ម repo
ចំណាំ៖
https://github.com/nxp-imx/imx-manifest/tree/imx-linux-nanbield មានបញ្ជីនៃ manifest ទាំងអស់។ files បានគាំទ្រនៅក្នុងការចេញផ្សាយនេះ។

រៀបចំសម្រាប់ផ្នែកខាងក្រោយជាក់លាក់
i.MX 8 និង i.MX 9 Framebuffer មិនត្រូវបានគាំទ្រទេ។ ប្រើសម្រាប់តែ i.MX 6 និង i.MX 7 SoC ប៉ុណ្ណោះ។

ការដំឡើងសម្រាប់ Framebuffer៖
$: DISTRO=fsl-imx-fb MACHINE= ប្រភព imx-setup-release.sh -b build-fb
ការដំឡើងសម្រាប់ Wayland:
$: DISTRO=fsl-imx-wayland MACHINE= ប្រភព imx-setup-release.sh -b build-wayland
ការដំឡើងសម្រាប់ XWayland៖
$: DISTRO=fsl-imx-xwayland MACHINE= ប្រភព imx-setup-release.sh -b build-xwayland

បង្កើតសម្រាប់ផ្នែកខាងក្រោយទាំងអស់។
សាងសង់ដោយគ្មាន Qt
$: bitbake imx-image-multimedia
បង្កើតជាមួយ Qt 6 និងមុខងាររៀនម៉ាស៊ីន
$: bitbake imx-image-full

8.2 ការលៃតម្រូវការកំណត់រចនាសម្ព័ន្ធមូលដ្ឋាន
ការស្ថាបនាគម្រោង Yocto អាចប្រើប្រាស់ធនធានសាងសង់យ៉ាងច្រើនទាំងពេលវេលា និងការប្រើប្រាស់ថាស ជាពិសេសនៅពេលសាងសង់ក្នុងថតឯកសារសាងសង់ច្រើន។ មានវិធីសាស្រ្តដើម្បីបង្កើនប្រសិទ្ធភាពនេះឧទាហរណ៍ampប្រើឃ្លាំងសម្ងាត់ sstate ចែករំលែក (ឃ្លាំងសម្ងាត់ស្ថានភាពនៃការសាងសង់) និងថតឯកសារទាញយក (ផ្ទុកកញ្ចប់ដែលបានទាញយក) ។ ទាំងនេះអាចត្រូវបានកំណត់នៅទីតាំងណាមួយនៅក្នុង local.conf file ដោយបន្ថែមសេចក្តីថ្លែងការណ៍ដូចជា៖
DL_DIR=”/opt/imx/yocto/imx/download”
SSTATE_DIR=”/opt/imx/yocto/imx/sstate-cache”
ថតត្រូវមានរួចហើយ និងមានការអនុញ្ញាតសមរម្យ។ ស្ថានភាពដែលបានចែករំលែកជួយនៅពេលដែលថត build ច្រើនត្រូវបានកំណត់ ដែលនីមួយៗប្រើឃ្លាំងសម្ងាត់រួមគ្នាដើម្បីកាត់បន្ថយពេលវេលាសាងសង់។ ថតទាញយកដែលបានចែករំលែកកាត់បន្ថយពេលវេលាក្នុងការទាញយក។ បើគ្មានការកំណត់ទាំងនេះទេ គម្រោង Yocto កំណត់លំនាំដើមទៅកាន់ថតឯកសារសម្រាប់ឃ្លាំងសម្ងាត់ sstate និងការទាញយក។
រាល់កញ្ចប់ដែលបានទាញយកនៅក្នុងថត DL_DIR ត្រូវបានសម្គាល់ដោយ a .រួចរាល់។ ប្រសិនបើបណ្តាញរបស់អ្នកមានបញ្ហាក្នុងការទៅយកកញ្ចប់ អ្នកអាចចម្លងកំណែបម្រុងទុកនៃកញ្ចប់ដោយដៃទៅថត DL_DIR ហើយបង្កើត .រួចរាល់ file ជាមួយនឹងពាក្យបញ្ជាប៉ះ។ បន្ទាប់មកដំណើរការពាក្យបញ្ជា bitbake៖
ប៊ីតប៊ឺក .
សម្រាប់ព័ត៌មានបន្ថែម សូមមើល សៀវភៅណែនាំអំពីគម្រោង Yocto — ឯកសារ Yocto Project ® 5.0.1.

8.3 រូបមន្ត
សមាសធាតុនីមួយៗត្រូវបានបង្កើតឡើងដោយប្រើរូបមន្ត។ សម្រាប់សមាសធាតុថ្មី រូបមន្តត្រូវតែត្រូវបានបង្កើតដើម្បីចង្អុលទៅប្រភព (SRC_URI) និងបញ្ជាក់បំណះ ប្រសិនបើអាចអនុវត្តបាន។ បរិយាកាសគម្រោង Yocto បង្កើតពីការបង្កើតfile នៅក្នុងទីតាំងដែលបានបញ្ជាក់ដោយ SRC_URI នៅក្នុងរូបមន្ត។ នៅពេលដែលការស្ថាបនាត្រូវបានបង្កើតឡើងពីឧបករណ៍ស្វ័យប្រវត្តិ រូបមន្តគួរតែទទួលមរតក autotools និង pkgconfig ។ ធ្វើfiles ត្រូវតែអនុញ្ញាតឱ្យ CC ត្រូវបានបដិសេធដោយឧបករណ៍ Cross Compile ដើម្បីទទួលបានកញ្ចប់ដែលបង្កើតឡើងដោយ Yocto Project ។

សមាសធាតុមួយចំនួនមានរូបមន្ត ប៉ុន្តែត្រូវការបំណះបន្ថែម ឬការធ្វើបច្ចុប្បន្នភាព។ នេះអាចត្រូវបានធ្វើដោយប្រើរូបមន្ត bbappend ។ វាបន្ថែមទៅព័ត៌មានលម្អិតអំពីរូបមន្តដែលមានស្រាប់អំពីប្រភពដែលបានធ្វើបច្ចុប្បន្នភាព។ សម្រាប់អតីតample, រូបមន្ត bbappend ដើម្បីរួមបញ្ចូលបំណះថ្មីគួរតែមានមាតិកាដូចខាងក្រោមៈ
FILESEXTRAPATHS: prepend := “${THISDIR}/${PN}:”
SRC_URI += file// .បំណះ
FILESEXTRAPATHS_prepend ប្រាប់ Yocto Project ឱ្យមើលក្នុងបញ្ជីរាយនាម ដើម្បីស្វែងរកបំណះដែលបានរាយក្នុង SRC_URI ។

ចំណាំ៖
ប្រសិនបើរូបមន្ត bbappend មិនត្រូវបានជ្រើសរើសទេ view កំណត់ហេតុនៃការទាញយក file (log.do_fetch) នៅក្រោមថតការងារ ដើម្បីពិនិត្យមើលថាតើបំណះដែលពាក់ព័ន្ធត្រូវបានរួមបញ្ចូលឬអត់។ ជួនកាលកំណែ Git នៃរូបមន្តកំពុងត្រូវបានប្រើជំនួសឱ្យកំណែនៅក្នុង bbappend files.

8.4 របៀបជ្រើសរើសកញ្ចប់បន្ថែម
កញ្ចប់បន្ថែមអាចត្រូវបានបន្ថែមទៅរូបភាពប្រសិនបើមានរូបមន្តផ្តល់ជូនសម្រាប់កញ្ចប់នោះ។ បញ្ជីមុខម្ហូបដែលអាចស្វែងរកបានដែលផ្តល់ដោយសហគមន៍អាចរកបាននៅ layers.openbedded.org/. អ្នកអាចស្វែងរកដើម្បីមើលថាតើកម្មវិធីមួយមានរូបមន្ត Yocto Project រួចហើយ ហើយស្វែងរកកន្លែងដែលត្រូវទាញយកវាពី។

8.4.1 ការធ្វើបច្ចុប្បន្នភាពរូបភាព
រូបភាពគឺជាសំណុំនៃកញ្ចប់ និងការកំណត់រចនាសម្ព័ន្ធបរិស្ថាន។
រូបភាពមួយ។ file (ដូចជា imx-image-multimedia.bb) កំណត់កញ្ចប់ដែលចូលទៅខាងក្នុង file ប្រព័ន្ធ។
ឫស file ប្រព័ន្ធ ខឺណែល ម៉ូឌុល និង U-Boot binary មាននៅក្នុង build/tmp/deploy/images/ .

ចំណាំ៖
អ្នកអាចបង្កើតកញ្ចប់ដោយមិនរួមបញ្ចូលវានៅក្នុងរូបភាពមួយ ប៉ុន្តែអ្នកត្រូវតែបង្កើតរូបភាពឡើងវិញប្រសិនបើអ្នកចង់ឱ្យកញ្ចប់ដំឡើងដោយស្វ័យប្រវត្តិនៅលើ rootfs ។

8.4.2 ក្រុមកញ្ចប់
ក្រុមកញ្ចប់គឺជាសំណុំនៃកញ្ចប់ដែលអាចត្រូវបានរួមបញ្ចូលនៅលើរូបភាពណាមួយ។
ក្រុមកញ្ចប់អាចមានសំណុំកញ្ចប់។ សម្រាប់អតីតampដូច្នេះ កិច្ចការពហុព័ត៌មានអាចកំណត់បាន យោងទៅតាមម៉ាស៊ីន ថាតើកញ្ចប់ VPU ត្រូវបានបង្កើតឡើងឬអត់ ដូច្នេះការជ្រើសរើសកញ្ចប់ពហុព័ត៌មានអាចដោយស្វ័យប្រវត្តិសម្រាប់គ្រប់ក្តារដែលគាំទ្រដោយ BSP ហើយមានតែកញ្ចប់ពហុព័ត៌មានប៉ុណ្ណោះដែលត្រូវបានបញ្ចូលក្នុងរូបភាព។
កញ្ចប់បន្ថែមអាចត្រូវបានដំឡើងដោយបន្ថែមបន្ទាត់ខាងក្រោមនៅក្នុង /local.conf.
CORE_IMAGE_EXTRA_INSTALL៖ បន្ថែម = ” ”
មានក្រុមកញ្ចប់ជាច្រើន។ ពួកវាស្ថិតនៅក្នុងថតរងដែលមានឈ្មោះថា packagegroup ឬ packagegroup។

8.4.3 កំណែដែលពេញចិត្ត
កំណែដែលពេញចិត្តត្រូវបានប្រើដើម្បីបញ្ជាក់កំណែដែលពេញចិត្តនៃរូបមន្តដែលត្រូវប្រើសម្រាប់សមាសភាគជាក់លាក់មួយ។ សមាសធាតុមួយអាចមានរូបមន្តជាច្រើននៅក្នុងស្រទាប់ផ្សេងៗគ្នា ហើយកំណែដែលពេញចិត្តចង្អុលទៅកំណែជាក់លាក់ដែលត្រូវប្រើ។

នៅក្នុងស្រទាប់ meta-imx ក្នុង layer.conf កំណែដែលពេញចិត្តត្រូវបានកំណត់សម្រាប់រូបមន្តទាំងអស់ដើម្បីផ្តល់នូវប្រព័ន្ធឋិតិវន្តសម្រាប់បរិយាកាសផលិតកម្ម។ ការកំណត់កំណែដែលពេញចិត្តទាំងនេះត្រូវបានប្រើសម្រាប់ការចេញផ្សាយ i.MX ផ្លូវការ ប៉ុន្តែមិនមានសារៈសំខាន់សម្រាប់ការអភិវឌ្ឍន៍នាពេលអនាគតទេ។
កំណែដែលពេញចិត្តក៏ជួយផងដែរ នៅពេលដែលកំណែមុនអាចបណ្តាលឱ្យមានការភ័ន្តច្រឡំអំពីរូបមន្តដែលគួរប្រើ។
សម្រាប់អតីតample, រូបមន្តពីមុនសម្រាប់ imx-test និង imx-lib បានប្រើកំណែប្រចាំខែ ដែលបានប្តូរទៅ កំណែទម្រង់។ បើគ្មានកំណែដែលពេញចិត្តទេ កំណែចាស់អាចនឹងត្រូវបានជ្រើសរើស។ រូបមន្តដែលមានកំណែ _git ជាធម្មតាត្រូវបានជ្រើសរើសលើរូបមន្តផ្សេងទៀត លុះត្រាតែកំណែដែលពេញចិត្តត្រូវបានកំណត់។ ដើម្បីកំណត់កំណែដែលពេញចិត្ត ដាក់ខាងក្រោមក្នុង local.conf ។
PREFERRED_VERSION_ : = “ ”
សូមមើលសៀវភៅណែនាំគម្រោង Yocto សម្រាប់ព័ត៌មានបន្ថែមស្តីពីការប្រើប្រាស់កំណែដែលពេញចិត្ត។

8.4.4 អ្នកផ្តល់ដែលពេញចិត្ត
អ្នកផ្តល់សេវាដែលពេញចិត្តត្រូវបានប្រើដើម្បីបញ្ជាក់អ្នកផ្តល់សេវាដែលពេញចិត្តសម្រាប់សមាសភាគជាក់លាក់មួយ។ សមាសធាតុមួយអាចមានអ្នកផ្តល់សេវាច្រើន។ សម្រាប់អតីតampដូច្នេះ ខឺណែលលីនុចអាចត្រូវបានផ្តល់ដោយ i.MX ឬដោយ kernel.org និងអ្នកផ្តល់សេវាដែលពេញចិត្តប្រាប់អ្នកផ្តល់សេវាឱ្យប្រើ។
សម្រាប់អតីតample, U-Boot ត្រូវបានផ្តល់ដោយសហគមន៍ទាំងពីរតាមរយៈ denx.de និង i.MX ។ អ្នកផ្តល់សហគមន៍ត្រូវបានបញ្ជាក់ដោយ u-boot-fslc ។ អ្នកផ្តល់សេវា i.MX ត្រូវបានបញ្ជាក់ដោយ u-boot-imx ។ ដើម្បីបញ្ជាក់ពីអ្នកផ្តល់សេវាដែលពេញចិត្ត សូមដាក់ខាងក្រោមក្នុង local.conf៖
PREFERRED_PROVIDER_ : = “ ”
PREFERRED_PROVIDER_u-boot_mx6 = “u-boot-imx”

8.4.5 គ្រួសារ SoC
គ្រួសារ SoC ចងក្រងនូវថ្នាក់នៃការផ្លាស់ប្តូរដែលអនុវត្តចំពោះសំណុំជាក់លាក់នៃបន្ទះឈីបប្រព័ន្ធ។ នៅក្នុងការកំណត់ម៉ាស៊ីននីមួយៗ fileម៉ាស៊ីនត្រូវបានរាយបញ្ជីជាមួយគ្រួសារ SoC ជាក់លាក់។ សម្រាប់អតីតample, i.MX 6DualLite Sabre-SD ត្រូវបានរាយបញ្ជីនៅក្រោមគ្រួសារ i.MX 6 និង i.MX 6DualLite SoC ។ i.MX 6Solo Sabre-auto ត្រូវបានចុះបញ្ជីនៅក្រោមគ្រួសារ i.MX 6 និង i.MX 6Solo SoC ។ ការផ្លាស់ប្តូរមួយចំនួនអាចត្រូវបានកំណត់គោលដៅទៅកាន់គ្រួសារ SoC ជាក់លាក់នៅក្នុង local.conf ដើម្បីបដិសេធការផ្លាស់ប្តូរនៅក្នុងការកំណត់រចនាសម្ព័ន្ធម៉ាស៊ីន។ file. ខាងក្រោមនេះគឺជាអតីតample នៃការផ្លាស់ប្តូរទៅការកំណត់ខឺណែល mx6dlsabresd ។
KERNEL_DEVICETREE:mx6dl = “imx6dl-sabresd.dts”
គ្រួសារ SoC មានប្រយោជន៍នៅពេលធ្វើការផ្លាស់ប្តូរដែលជាក់លាក់សម្រាប់តែប្រភេទ Hardware ប៉ុណ្ណោះ។ សម្រាប់អតីតample, i.MX 28 EVK មិនមានអង្គភាពដំណើរការវីដេអូ (VPU) ដូច្នេះការកំណត់ទាំងអស់សម្រាប់ VPU គួរតែប្រើ i.MX 5 ឬ i.MX 6 ដើម្បីជាក់លាក់ចំពោះថ្នាក់ត្រឹមត្រូវ។

8.4.6 កំណត់ហេតុ BitBake
BitBake កត់ត្រាដំណើរការសាងសង់ និងកញ្ចប់នៅក្នុងថតឯកសារនៅក្នុង tmp/work/ / / សីតុណ្ហភាព
ប្រសិនបើសមាសធាតុមួយមិនអាចទៅយកកញ្ចប់បានទេ កំណត់ហេតុដែលបង្ហាញកំហុសគឺនៅក្នុង file log.do_fetch ។
ប្រសិនបើសមាសធាតុមួយបរាជ័យក្នុងការចងក្រង កំណត់ហេតុដែលបង្ហាញកំហុសគឺស្ថិតនៅក្នុង file log.do_compile ។
ពេលខ្លះសមាសធាតុមិនត្រូវបានដាក់ឱ្យដំណើរការដូចការរំពឹងទុក។ ពិនិត្យ​មើល​ថត​នៅ​ក្រោម​ថត​សមាសភាគ​បង្កើត (tmp/work/ / ) ពិនិត្យមើលកញ្ចប់ កញ្ចប់-បំបែក និង sysroot* ថតនៃរូបមន្តនីមួយៗ ដើម្បីមើលថាតើ files ត្រូវបានដាក់នៅទីនោះ (កន្លែងដែលពួកគេនៅ staged មុនពេលត្រូវបានចម្លងទៅថតដាក់ពង្រាយ)។

8.4.7 របៀបបន្ថែមយន្តការសម្រាប់ការត្រួតពិនិត្យ និងការជូនដំណឹងអំពី CVE
យន្តការតាមដាន CVE អាចទាញយកពី GitHub ។ រុករកទៅថត imx-yocto-bsp/sources ។

ដំណើរការពាក្យបញ្ជាខាងក្រោម៖
git ក្លូន https://github.com/TimesysGit/meta-timesys.git - ខឺកស្តូន
ពាក្យបញ្ជានេះនឹងទាញយក metalayer បន្ថែមដែលផ្តល់ស្គ្រីបសម្រាប់ការបង្កើតរូបភាពដែលប្រើសម្រាប់ការត្រួតពិនិត្យសុវត្ថិភាព និងការជូនដំណឹងដែលជាផ្នែកមួយនៃផលិតផល Vigiles ដែលផ្តល់ជូនពី NXP និង Timesys ។ សូមអនុវត្តតាមផ្នែកទី 7.3 អំពីរបៀបប្រើដំណោះស្រាយ។
ការទទួលបានសិទ្ធិចូលដំណើរការរបាយការណ៍ CVE ពេញលេញតម្រូវឱ្យមានគន្លឹះអាជ្ញាប័ណ្ណ LinuxLink ។ ដោយគ្មានគន្លឹះនៅក្នុងបរិយាកាសអភិវឌ្ឍន៍របស់អ្នក Vigiles បន្តប្រតិបត្តិក្នុងរបៀបសាកល្បង ដោយផលិតតែរបាយការណ៍សង្ខេបប៉ុណ្ណោះ។
ចូលទៅក្នុងគណនី Vigiles របស់អ្នកនៅលើ LinuxLink (ឬបង្កើតមួយប្រសិនបើអ្នកមិនមាន: https://www.timesys.com/registernxp-vigiles/). ចូលប្រើចំណូលចិត្តរបស់អ្នក ហើយបង្កើតថ្មី។
សោ។ ទាញយកសោ file ដល់បរិស្ថានអភិវឌ្ឍន៍របស់អ្នក។ បញ្ជាក់ទីតាំងរបស់សោ file នៅក្នុង conf/local.conf របស់ Yocto របស់អ្នក។ file ជាមួយនឹងសេចក្តីថ្លែងការណ៍ដូចខាងក្រោមៈ
VIGILES_KEY_FILE = “/tools/timesys/linuxlink_key”

ឯកសារយោង

  • សម្រាប់ព័ត៌មានលម្អិតស្តីពីការបិទបើក សូមមើលផ្នែក "របៀបចាប់ផ្ដើមបន្ទះ i.MX" នៅក្នុងការណែនាំរបស់អ្នកប្រើ i.MX Linux (IMXLUG) ។
  • សម្រាប់របៀបទាញយករូបភាពដោយប្រើ U-Boot សូមមើលផ្នែក "ការទាញយករូបភាពដោយប្រើ U-Boot" នៅក្នុងសៀវភៅណែនាំអ្នកប្រើប្រាស់ i.MX Linux (IMXLUG)។
  • សម្រាប់របៀបដំឡើងកាត SD/MMC សូមមើលផ្នែក "ការរៀបចំកាត SD/MMC ដើម្បីចាប់ផ្ដើម" នៅក្នុងការណែនាំរបស់អ្នកប្រើ i.MX Linux (IMXLUG) ។

ចំណាំអំពីកូដប្រភពនៅក្នុងឯកសារ

Example កូដដែលបង្ហាញក្នុងឯកសារនេះមានសិទ្ធិរក្សាសិទ្ធិ និង BSD-3-Clause ដូចខាងក្រោម៖
រក្សាសិទ្ធិ 2024 NXP ការចែកចាយឡើងវិញ និងការប្រើប្រាស់ក្នុងទម្រង់ប្រភព និងប្រព័ន្ធគោលពីរ ដោយមានឬគ្មានការកែប្រែ ត្រូវបានអនុញ្ញាត ផ្តល់លក្ខខណ្ឌដូចខាងក្រោមត្រូវបានបំពេញ៖

  1. ការចែកចាយឡើងវិញនៃកូដប្រភពត្រូវតែរក្សាការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីលក្ខខណ្ឌ និងការបដិសេធខាងក្រោម។
  2. ការចែកចាយឡើងវិញក្នុងទម្រង់គោលពីរត្រូវតែបង្កើតឡើងវិញនូវការជូនដំណឹងអំពីការរក្សាសិទ្ធិខាងលើ បញ្ជីនៃលក្ខខណ្ឌនេះ និងការបដិសេធខាងក្រោមនៅក្នុងឯកសារ និង/ឬសម្ភារៈផ្សេងទៀតដែលបានផ្តល់ជាមួយនឹងការចែកចាយ។
  3. ទាំងឈ្មោះអ្នករក្សាសិទ្ធិនិងឈ្មោះអ្នកចូលរួមរបស់វាមិនអាចត្រូវបានប្រើដើម្បីគាំទ្រឬផ្សព្វផ្សាយផលិតផលដែលបានមកពីកម្មវិធីនេះដោយគ្មានការអនុញ្ញាតជាលាយលក្ខណ៍អក្សរជាមុន។

កម្មវិធីនេះត្រូវបានផ្តល់ដោយអ្នកកាន់សិទ្ធិអ្នកនិពន្ធ និងអ្នករួមវិភាគទាន "ដូចមាន" និងការធានាណាមួយដែលបញ្ជាក់ ឬដោយប្រយោល រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះ ការធានាដោយអត្ថន័យនៃទំនិញ អេដ។ ក្នុងករណីណាក៏ដោយ អ្នកកាន់កាប់សិទ្ធិថតចម្លង ឬអ្នករួមចំណែកត្រូវទទួលខុសត្រូវចំពោះការខូចខាតដោយផ្ទាល់ ដោយមិនផ្ទាល់ ឧប្បត្តិហេតុ ពិសេស គំរូ ឬការខូចខាតជាផលវិបាក (រួមទាំង ប៉ុន្តែមិនកំណត់ចំពោះការអនុវត្ត អ៊ី ទិន្នន័យ ឬប្រាក់ចំណេញ; ឬការរំខានអាជីវកម្ម) ទោះបីជាបណ្តាលមកពី និងលើទ្រឹស្ដីទំនួលខុសត្រូវណាមួយ ទោះជានៅក្នុងកិច្ចសន្យា ទំនួលខុសត្រូវយ៉ាងតឹងរ៉ឹង ឬការធ្វើទារុណកម្ម (រួមទាំងការធ្វេសប្រហែស ឬបើមិនដូច្នេះទេ) ដែលកើតឡើងនៅក្នុងវិធីណាមួយ នៃការប្រើប្រាស់នៅពេលក្រោយ ភាពឯកភាពនៃការខូចខាតបែបនេះ។

ប្រវត្តិកែប្រែ

តារាងនេះផ្តល់នូវប្រវត្តិនៃការកែប្រែ។
ប្រវត្តិនៃការពិនិត្យឡើងវិញ

លេខសម្គាល់ឯកសារ កាលបរិច្ឆេទ ការផ្លាស់ប្តូរសំខាន់ៗ
IMXLXYOCTOUG v.LF6.6.3_1.0.0 ថ្ងៃទី ២៤ ខែមីនា ឆ្នាំ ២០២៣ បានដំឡើងកំណែទៅខឺណែល 6.6.3 លុប i.MX 91P និងបន្ថែម i.MX 95 ជាគុណភាពអាល់ហ្វា។
IMXLXYOCTOUG v.LF6.1.55_2.2.0 ៥/៥ ដំឡើងកំណែទៅខឺណែល 6.1.55 ។
IMXLXYOCTOUG v.LF6.1.36_2.1.0 ៥/៥ ដំឡើងកំណែទៅខឺណែល 6.1.36 និងបន្ថែម I.MX 91P ។
IMXLXYOCTOUG v.LF6.1.22_2.0.0 ៥/៥ ដំឡើងកំណែទៅខឺណែល 6.1.22 ។
IMXLXYOCTOUG v.LF6.1.1_1.0.0 ៥/៥ ការកែកំហុសទៅបន្ទាត់ពាក្យបញ្ជានៅក្នុងផ្នែក 3.2 ។
IMXLXYOCTOUG v.LF6.1.1_1.0.0 ៥/៥ ដំឡើងកំណែទៅខឺណែល 6.1.1 ។
IMXLXYOCTOUG v.LF5.15.71_2.2.0 ៥/៥ ដំឡើងកំណែទៅខឺណែល 5.15.71 ។
IMXLXYOCTOUG v.LF5.15.52_2.1.0 ៥/៥ បានដំឡើងកំណែទៅខឺណែល 5.15.52 ហើយបានបន្ថែម i.MX 93។
IMXLXVOCTOUG v.LF5.15.32_2.0.0 ៥/៥ បានដំឡើងកំណែទៅខឺណែល 5.15.32, U-Boot 2022.04 និង Kirkstone Yocto ។
IMXLXYOCTOUG v.LF5.15.5_1.0.0 ៥/៥ អាប់ដេតទៅខឺណែល 5.15.5, Honister Yocto, និង Qt6 ។
IMXLXYOCTOUG v.LF5.10.72_2.2.0 ៥/៥ បានដំឡើងកំណែខឺណែលទៅ 5.10.72 និងធ្វើបច្ចុប្បន្នភាព BSP ។
IMXLXYOCTOUG v.LF5.10.52_2.1.0 ៥/៥ បានធ្វើបច្ចុប្បន្នភាពសម្រាប់ i.MX GULP Alpha ហើយខឺណែលបានដំឡើងកំណែទៅ 5.10.52 ។
IMXLXYOCTOUG v.LF5.10.35_2.0.0 ៥/៥ អាប់ដេតទៅ 5.10.35 ខឺណែល។
IMXLXYOCTOUG v.LF5.10.9_1.0.0 ៥/៥ បានកែកំហុសនៅក្នុងបន្ទាត់ពាក្យបញ្ជានៅក្នុងផ្នែក 3.1 'កញ្ចប់ម៉ាស៊ីន។
IMXLXYOCTOUG v.LF5.10.9_1.0.0 ៥/៥ អាប់ដេតទៅ 5.10.9 ខឺណែល។
IMXLXYOCTOUG v.L5.4.70_2.3.0 ៥/៥ បានធ្វើបច្ចុប្បន្នភាពបន្ទាត់ពាក្យបញ្ជានៅក្នុងផ្នែក "ដំណើរការរូបភាព Arm Cortex-M4" ។
IMXLXYOCTOUG v.L5.4.70_2.3.0 ៥/៥ i.MX 5.4 consolidated GA សម្រាប់ការចេញផ្សាយបន្ទះ i.MX រួមទាំង i. MX 8M Plus និង i.MX 8DXL ។
IMXLXYOCTOUG v.L5.4.47_2.2.0 ៥/៥ ការចេញផ្សាយ I.MX 5.4 Beta2 សម្រាប់ i.MX 8M Plus, Beta សម្រាប់ 8DXL និង GA រួមបញ្ចូលគ្នាសម្រាប់បន្ទះ I.MX ដែលបានចេញផ្សាយ។
IMXLXYOCTOUG v.L5.4.24_2.1.0 ៥/៥ ការចេញផ្សាយ i.MX 5.4 Beta សម្រាប់ i.MX 8M Plus, Aipha2 សម្រាប់ 8DXL និង GA រួមបញ្ចូលគ្នាសម្រាប់បន្ទះ i.MX ដែលបានចេញផ្សាយ។
IMXLXYOCTOUG v.L5.4.3_2.0.0 ៥/៥ ការចេញផ្សាយ i.MX 5.4 Alpha សម្រាប់បន្ទះ i.MX 8M Plus និង 8DXL EVK ។
IMXLXYOCTOUG v.LF5A.3_1.0.0 ៥/៥ ការធ្វើឱ្យប្រសើរខឺណែល I.MX 5.4 និងគម្រោង Yocto ។
IMXLXYOCTOUG v.L4.19.35_1.1.0 ៥/៥ ការធ្វើឱ្យប្រសើរខឺណែល I.MX 4.19 និងគម្រោង Yocto ។
IMXLXYOCTOUG v.L4.19.35_1.0.0 ៥/៥ I.MX 4.19 Beta Kernel និង Yocto Project Upgrades។
IMXLXYOCTOUG v.L4.14.98_2.0.0_ga ៥/៥ i.MX 4.14 អាប់ដេតខឺណែល និងការអាប់ដេតក្តារ។
IMXLXYOCTOUG v.L4.14.78_1.0.0_ga ៥/៥ ការចេញផ្សាយ GA គ្រួសារ I.MX 6, i.MX 7, i.MX 8 ។
IMXLXYOCTOUG v14.14.62_1.0.0_ បេតា ៥/៥ i.MX 4.14 Kernel Upgrade, Yocto Project Sumo upgrade ។
IMXLXYOCTOUG v14.9.123_2.3.0_ 8mm ៥/៥ ការចេញផ្សាយ i.MX 8M Mini GA ។
IMXLXYOCTOUG v14.9.88_2.2.0_ 8qxp-beta2 ៥/៥ ការចេញផ្សាយ i.MX 8QuadXPlus Beta2 ។
IMXLXYOCTOUG v14.9.88_2.1.0_ 8mm-alpha ៥/៥ ការចេញផ្សាយ i.MX 8M Mini Alpha ។
IMXLXYOCTOUG v14.9.88_2.0.0-ga ៥/៥ ការចេញផ្សាយ i.MX 7ULP និង i.MX 8M Quad GA ។
IMXLXYOCTOUG v14.9.51_imx8mq- ga ៥/៥ បានបន្ថែម i.MX 8M Quad GA ។
IMXLXYOCTOUG v14.9.51_8qm- beta2/8qxp-beta ៥/៥ បានបន្ថែម i.MX 8QuadMax Beta2 និង i.MX 8QuadXPlus Beta ។
IMXLXYOCTOUG v.L4.9.51_imx8mq- បេតា ៥/៥ បានបន្ថែម i.MX 8M Quad ។
IMXLXYOCTOUG v14.9.51_imx8qm- បេតា ១ ៥/៥ បានបន្ថែម i.MX 8 QuadMax ។
IMXLXYOCTOUG v14.9.51_imx8qxp- អាល់ហ្វា ៥/៥ ការចេញផ្សាយដំបូង។

ព័ត៌មានផ្លូវច្បាប់

និយមន័យ
សេចក្តីព្រាង - ស្ថានភាពព្រាងនៅលើឯកសារបង្ហាញថាខ្លឹមសារនៅតែស្ថិតក្រោមការកែប្រែផ្ទៃក្នុងview និងស្ថិតនៅក្រោមការយល់ព្រមជាផ្លូវការ ដែលអាចបណ្តាលឱ្យមានការកែប្រែ ឬបន្ថែម។ NXP Semiconductors មិនផ្តល់ការតំណាង ឬការធានាណាមួយអំពីភាពត្រឹមត្រូវ ឬពេញលេញនៃព័ត៌មានដែលរួមបញ្ចូលនៅក្នុងកំណែព្រាងនៃឯកសារ ហើយនឹងមិនទទួលខុសត្រូវចំពោះផលវិបាកនៃការប្រើប្រាស់ព័ត៌មាននោះទេ។
ការបដិសេធ
ការធានា និងការទទួលខុសត្រូវមានកំណត់ - ព័ត៌មាននៅក្នុងឯកសារនេះត្រូវបានគេជឿថាមានភាពត្រឹមត្រូវ និងអាចទុកចិត្តបាន។ ទោះជាយ៉ាងណាក៏ដោយ NXP Semiconductors មិនផ្តល់ការតំណាង ឬការធានាណាមួយដែលបានបង្ហាញ ឬបង្កប់ន័យចំពោះភាពត្រឹមត្រូវ ឬពេញលេញនៃព័ត៌មាននោះទេ ហើយនឹងមិនទទួលខុសត្រូវចំពោះផលវិបាកនៃការប្រើប្រាស់ព័ត៌មាននោះទេ។ NXP Semiconductors មិនទទួលខុសត្រូវចំពោះខ្លឹមសារនៅក្នុងឯកសារនេះទេ ប្រសិនបើផ្តល់ដោយប្រភពព័ត៌មាននៅខាងក្រៅ NXP Semiconductors។
គ្មានព្រឹត្តិការណ៍ណាមួយដែល NXP Semiconductors ទទួលខុសត្រូវចំពោះការខូចខាតដោយប្រយោល ចៃដន្យ ការដាក់ទណ្ឌកម្ម ពិសេស ឬជាលទ្ធផល (រួមទាំង - ដោយគ្មានដែនកំណត់ ការបាត់បង់ប្រាក់ចំណេញ ការសន្សំដែលបាត់បង់ ការរំខានអាជីវកម្ម ការចំណាយទាក់ទងនឹងការដកចេញ ឬការជំនួសផលិតផល ឬថ្លៃការងារឡើងវិញ) ថាតើ ឬ ការខូចខាតបែបនេះមិនមែនផ្អែកលើការធ្វើទារុណកម្ម (រួមទាំងការធ្វេសប្រហែស) ការធានា ការបំពានកិច្ចសន្យា ឬទ្រឹស្តីច្បាប់ផ្សេងទៀតណាមួយឡើយ។
ទោះបីជាមានការខូចខាតណាមួយដែលអតិថិជនអាចកើតឡើងដោយហេតុផលណាមួយក៏ដោយ ទំនួលខុសត្រូវសរុបរបស់ NXP Semiconductors ចំពោះអតិថិជនសម្រាប់ផលិតផលដែលបានពិពណ៌នានៅទីនេះ នឹងត្រូវកំណត់ដោយអនុលោមតាមលក្ខខណ្ឌនៃការលក់ពាណិជ្ជកម្មរបស់ NXP Semiconductors ។ សិទ្ធិធ្វើការផ្លាស់ប្តូរ — NXP Semiconductors រក្សាសិទ្ធិដើម្បីធ្វើការផ្លាស់ប្តូរព័ត៌មានដែលបានបោះពុម្ពផ្សាយនៅក្នុងឯកសារនេះ រួមទាំងដោយគ្មានការកំណត់ជាក់លាក់ និងការពិពណ៌នាអំពីផលិតផល នៅពេលណាក៏បាន និងដោយគ្មានការជូនដំណឹងជាមុន។ ឯកសារនេះជំនួស និងជំនួសព័ត៌មានទាំងអស់ដែលបានផ្តល់មុនការបោះពុម្ពផ្សាយនៅទីនេះ។
ភាពស័ក្តិសមសម្រាប់ការប្រើប្រាស់ - ផលិតផល NXP Semiconductors មិនត្រូវបានរចនា អនុញ្ញាត ឬធានាឱ្យមានលក្ខណៈសមរម្យសម្រាប់ប្រើប្រាស់ក្នុងការគាំទ្រជីវិត ប្រព័ន្ធ ឬឧបករណ៍ដែលមានសារៈសំខាន់សម្រាប់ជីវិត ឬសុវត្ថិភាព ឬនៅក្នុងកម្មវិធីដែលការបរាជ័យ ឬដំណើរការខុសប្រក្រតីនៃផលិតផល NXP Semiconductors អាចរំពឹងទុកដោយហេតុផលថានឹងមានលទ្ធផលនៅក្នុង ការរងរបួសផ្ទាល់ខ្លួន ការស្លាប់ ឬទ្រព្យសម្បត្តិធ្ងន់ធ្ងរ ឬការខូចខាតបរិស្ថាន។ NXP Semiconductors និងអ្នកផ្គត់ផ្គង់របស់ខ្លួនមិនទទួលខុសត្រូវចំពោះការដាក់បញ្ចូល និង/ឬការប្រើប្រាស់ផលិតផល NXP Semiconductors នៅក្នុងឧបករណ៍ ឬកម្មវិធីនោះទេ ដូច្នេះការដាក់បញ្ចូល និង/ឬការប្រើប្រាស់បែបនេះគឺស្ថិតក្នុងហានិភ័យផ្ទាល់ខ្លួនរបស់អតិថិជន។
កម្មវិធី - កម្មវិធីដែលត្រូវបានពិពណ៌នានៅទីនេះសម្រាប់ផលិតផលណាមួយគឺសម្រាប់គោលបំណងបង្ហាញតែប៉ុណ្ណោះ។ NXP Semiconductors មិនធ្វើតំណាង ឬការធានាថាកម្មវិធីបែបនេះនឹងសាកសមសម្រាប់ការប្រើប្រាស់ដែលបានបញ្ជាក់ដោយមិនចាំបាច់ធ្វើតេស្ត ឬកែប្រែបន្ថែម។
អតិថិជនត្រូវទទួលខុសត្រូវចំពោះការរចនា និងប្រតិបត្តិការនៃកម្មវិធី និងផលិតផលរបស់ពួកគេដោយប្រើប្រាស់ផលិតផល NXP Semiconductors ហើយ NXP Semiconductors មិនទទួលខុសត្រូវចំពោះជំនួយណាមួយជាមួយកម្មវិធី ឬការរចនាផលិតផលរបស់អតិថិជនឡើយ។ វាជាទំនួលខុសត្រូវតែមួយគត់របស់អតិថិជនក្នុងការកំណត់ថាតើផលិតផល NXP Semiconductors មានលក្ខណៈសមរម្យ និងសមនឹងកម្មវិធី និងផលិតផលរបស់អតិថិជនដែលបានគ្រោងទុក ក៏ដូចជាសម្រាប់កម្មវិធីដែលបានគ្រោងទុក និងការប្រើប្រាស់អតិថិជនភាគីទីបីរបស់អតិថិជនផងដែរ។ អតិថិជនគួរតែផ្តល់នូវការរចនា និងការការពារប្រតិបត្តិការសមស្រប ដើម្បីកាត់បន្ថយហានិភ័យដែលទាក់ទងនឹងកម្មវិធី និងផលិតផលរបស់ពួកគេ។
NXP Semiconductors មិនទទួលយកទំនួលខុសត្រូវណាមួយដែលទាក់ទងនឹងលំនាំដើម ការខូចខាត ការចំណាយ ឬបញ្ហាដែលផ្អែកលើភាពទន់ខ្សោយ ឬលំនាំដើមណាមួយនៅក្នុងកម្មវិធី ឬផលិតផលរបស់អតិថិជន ឬកម្មវិធី ឬការប្រើប្រាស់ដោយអតិថិជនភាគីទីបីរបស់អតិថិជននោះទេ។ អតិថិជនមានទំនួលខុសត្រូវក្នុងការធ្វើតេស្តចាំបាច់ទាំងអស់សម្រាប់កម្មវិធី និងផលិតផលរបស់អតិថិជនដោយប្រើផលិតផល NXP Semiconductors ដើម្បីជៀសវាងការបរាជ័យនៃកម្មវិធី និងផលិតផល ឬនៃកម្មវិធី ឬប្រើប្រាស់ដោយអតិថិជនភាគីទីបីរបស់អតិថិជន។ NXP មិនទទួលយកការទទួលខុសត្រូវណាមួយក្នុងន័យនេះទេ។
ល័ក្ខខ័ណ្ឌនៃការលក់ពាណិជ្ជកម្ម — ផលិតផល NXP Semiconductors ត្រូវបានលក់តាមលក្ខខណ្ឌទូទៅនៃការលក់ពាណិជ្ជកម្ម ដូចដែលបានចុះផ្សាយនៅ https://www.nxp.com/profile/termsលុះត្រាតែមានការព្រមព្រៀងផ្សេងពីនេះក្នុងកិច្ចព្រមព្រៀងបុគ្គលដែលមានសុពលភាពជាលាយលក្ខណ៍អក្សរ។ ក្នុងករណីកិច្ចព្រមព្រៀងបុគ្គលត្រូវបានបញ្ចប់ មានតែលក្ខខណ្ឌនៃកិច្ចព្រមព្រៀងរៀងៗខ្លួនប៉ុណ្ណោះដែលត្រូវអនុវត្ត។ NXP Semiconductors សម្តែងការជំទាស់ចំពោះការអនុវត្តលក្ខខណ្ឌទូទៅរបស់អតិថិជនទាក់ទងនឹងការទិញផលិតផល NXP Semiconductors ដោយអតិថិជន។
ការត្រួតពិនិត្យការនាំចេញ - ឯកសារនេះក៏ដូចជាធាតុដែលបានពិពណ៌នានៅទីនេះអាចជាកម្មវត្ថុនៃបទប្បញ្ញត្តិត្រួតពិនិត្យការនាំចេញ។ ការនាំចេញអាចទាមទារការអនុញ្ញាតជាមុនពីអាជ្ញាធរមានសមត្ថកិច្ច។
ភាពស័ក្តិសមសម្រាប់ប្រើប្រាស់ក្នុងផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្ត — លុះត្រាតែឯកសារនេះបញ្ជាក់យ៉ាងច្បាស់ថាផលិតផល NXP Semiconductors ជាក់លាក់នេះគឺមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់សម្រាប់យានយន្តនោះ ផលិតផលមិនស័ក្តិសមសម្រាប់ការប្រើប្រាស់រថយន្តទេ។ វាមិនមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់ ឬត្រូវបានសាកល្បងដោយអនុលោមតាមការធ្វើតេស្តរថយន្ត ឬតម្រូវការកម្មវិធី NXP Semiconductors មិនទទួលខុសត្រូវចំពោះការរួមបញ្ចូល និង/ឬការប្រើប្រាស់ផលិតផលដែលមិនមានគុណភាពសម្រាប់រថយន្តនៅក្នុងឧបករណ៍ ឬកម្មវិធីរថយន្ត។
ក្នុងករណីដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់ការរចនា និងប្រើប្រាស់ក្នុងកម្មវិធីរថយន្តទៅនឹងលក្ខណៈបច្ចេកទេស និងស្តង់ដាររថយន្ត អតិថិជន (ក) ត្រូវប្រើប្រាស់ផលិតផលដោយគ្មានការធានារបស់ NXP Semiconductors នៃផលិតផលសម្រាប់កម្មវិធីរថយន្ត ការប្រើប្រាស់ និងលក្ខណៈបច្ចេកទេស និង ( ខ) រាល់ពេលដែលអតិថិជនប្រើប្រាស់ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីលក្ខណៈបច្ចេកទេសរបស់ NXP Semiconductors ការប្រើប្រាស់បែបនេះត្រូវប្រឈមមុខនឹងហានិភ័យផ្ទាល់របស់អតិថិជន ហើយ (គ) អតិថិជននឹងសងសំណងទាំងស្រុងនូវ NXP Semiconductors សម្រាប់ការទទួលខុសត្រូវ ការខូចខាត ឬការទាមទារផលិតផលដែលបរាជ័យដែលបណ្តាលមកពីការរចនា និងការប្រើប្រាស់របស់អតិថិជន។ ផលិតផលសម្រាប់កម្មវិធីរថយន្តលើសពីការធានាស្តង់ដាររបស់ NXP Semiconductors និងផលិតផលជាក់លាក់របស់ NXP Semiconductors ។
ការបកប្រែ - កំណែដែលមិនមែនជាភាសាអង់គ្លេស (បកប្រែ) នៃឯកសារ រួមទាំងព័ត៌មានផ្លូវច្បាប់នៅក្នុងឯកសារនោះ គឺសម្រាប់ជាឯកសារយោងតែប៉ុណ្ណោះ។ កំណែជាភាសាអង់គ្លេសនឹងមានសុពលភាពក្នុងករណីមានភាពខុសគ្នារវាងកំណែដែលបានបកប្រែ និងភាសាអង់គ្លេស។
សន្តិសុខ - អតិថិជនយល់ថាផលិតផល NXP ទាំងអស់អាចទទួលរងនូវភាពងាយរងគ្រោះដែលមិនស្គាល់អត្តសញ្ញាណ ឬអាចគាំទ្រស្តង់ដារសុវត្ថិភាពដែលបានបង្កើតឡើង ឬលក្ខណៈជាក់លាក់ជាមួយនឹងដែនកំណត់ដែលគេស្គាល់។ អតិថិជនទទួលខុសត្រូវចំពោះការរចនា និងប្រតិបត្តិការនៃកម្មវិធី និងផលិតផលរបស់ខ្លួនពេញមួយវដ្តជីវិតរបស់ពួកគេ ដើម្បីកាត់បន្ថយឥទ្ធិពលនៃភាពងាយរងគ្រោះទាំងនេះលើកម្មវិធី និងផលិតផលរបស់អតិថិជន។ ទំនួលខុសត្រូវរបស់អតិថិជនក៏ពង្រីកដល់បច្ចេកវិទ្យាបើកចំហ និង/ឬកម្មសិទ្ធិផ្សេងទៀតដែលគាំទ្រដោយផលិតផល NXP សម្រាប់ប្រើប្រាស់ក្នុងកម្មវិធីរបស់អតិថិជន។ NXP មិនទទួលខុសត្រូវចំពោះភាពងាយរងគ្រោះណាមួយឡើយ។ អតិថិជនគួរតែពិនិត្យមើលការអាប់ដេតសុវត្ថិភាពពី NXP ជាទៀងទាត់ ហើយតាមដានដោយសមរម្យ។
អតិថិជនត្រូវជ្រើសរើសផលិតផលដែលមានលក្ខណៈពិសេសសុវត្ថិភាពដែលសមស្របបំផុតនឹងច្បាប់ បទប្បញ្ញត្តិ និងស្តង់ដារនៃកម្មវិធីដែលបានគ្រោងទុក ហើយធ្វើការសម្រេចចិត្តរចនាចុងក្រោយទាក់ទងនឹងផលិតផលរបស់ខ្លួន ហើយទទួលខុសត្រូវទាំងស្រុងចំពោះការអនុលោមតាមតម្រូវការច្បាប់ និយតកម្ម និងសុវត្ថិភាពទាំងអស់ទាក់ទងនឹងផលិតផលរបស់ខ្លួន ដោយមិនគិតពី នៃព័ត៌មាន ឬជំនួយដែលអាចត្រូវបានផ្តល់ដោយ NXP ។
NXP មានក្រុមឆ្លើយតបឧប្បត្តិហេតុសុវត្ថិភាពផលិតផល (PSIRT) (អាចទាក់ទងបាននៅ PSIRT@nxp.com) ដែលគ្រប់គ្រងការស៊ើបអង្កេត ការរាយការណ៍ និងការចេញផ្សាយដំណោះស្រាយចំពោះភាពងាយរងគ្រោះផ្នែកសុវត្ថិភាពនៃផលិតផល NXP ។
NXP B.V. — NXP B.V. មិនមែនជាក្រុមហ៊ុនប្រតិបត្តិការទេ ហើយវាមិនចែកចាយ ឬលក់ផលិតផលទេ។

ពាណិជ្ជសញ្ញា
សេចក្តីជូនដំណឹង៖ ម៉ាកដែលបានយោងទាំងអស់ ឈ្មោះផលិតផល ឈ្មោះសេវាកម្ម និងពាណិជ្ជសញ្ញា គឺជាកម្មសិទ្ធិរបស់ម្ចាស់រៀងៗខ្លួន។
អិន។ ភី។ ភី - ពាក្យនិងនិមិត្តសញ្ញាគឺជាពាណិជ្ជសញ្ញារបស់ NXP BV

AMBA, Arm, Arm7, Arm7TDMI, Arm9, Arm11, Artisan, big.LITTLE, Cordio, CoreLink, CoreSight, Cortex, DesignStart, DynamIQ, Jazelle, Keil, Mali, Mbed, Mbed Enabled, NEON, POP, RealView, SecurCore, Socrates, Thumb, TrustZone, ULINK, ULINK2, ULINK-ME, ULINKPLUS, ULINKpro, μVision, Versatile — គឺជាពាណិជ្ជសញ្ញា និង/ឬពាណិជ្ជសញ្ញាដែលបានចុះបញ្ជីរបស់ Arm Limited (ឬសាខា ឬសាខារបស់វា) នៅសហរដ្ឋអាមេរិក និង/ឬកន្លែងផ្សេងទៀត។ បច្ចេកវិទ្យាដែលពាក់ព័ន្ធអាចត្រូវបានការពារដោយប៉ាតង់ ការរក្សាសិទ្ធិ ការរចនា និងអាថ៌កំបាំងពាណិជ្ជកម្មណាមួយ។ រក្សា​រ​សិទ្ធ​គ្រប់យ៉ាង។
EdgeLock - គឺជាពាណិជ្ជសញ្ញារបស់ NXP BV
eIQ - គឺជាពាណិជ្ជសញ្ញារបស់ NXP BV
i.MX - គឺជាពាណិជ្ជសញ្ញារបស់ NXP BV

IMXLXYOCTOUG
All information provided នៅក្នុងឯកសារនេះគឺជាកម្មវត្ថុនៃការបដិសេធផ្លូវច្បាប់។
© 2024 NXP BV រក្សាសិទ្ធិគ្រប់យ៉ាង។
Rev. LF6.6.3_1.0.0 — ថ្ងៃទី 29 ខែមិនា ឆ្នាំ 2024

ឯកសារ/ធនធាន

គម្រោង NXP IMXLXYOCTOUG i.MX Yocto [pdf] ការណែនាំអ្នកប្រើប្រាស់
គម្រោង IMXLXYOCTOUG i.MX Yocto គម្រោង i.MX Yocto គម្រោង Yocto គម្រោង

ឯកសារយោង

ទុកមតិយោបល់

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានផ្សព្វផ្សាយទេ។ វាលដែលត្រូវការត្រូវបានសម្គាល់ *