summaryrefslogtreecommitdiffstats
path: root/common/recipes-bsp/rmc
Commit message (Collapse)AuthorAgeFilesLines
* rmc: add support for Broxton-M based Joule board (rev. 1F1)pyro-nfvaccessTodor Minchev2017-07-071-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finger 0 type : 0x01 Finger 0 offset : 0x05 Finger 0 name: : product_name Finger 0 value : 570x DVT2 Finger 1 type : 0x02 Finger 1 offset : 0x05 Finger 1 name: : product_name Finger 1 value : SDS Finger 2 type : 0x04 Finger 2 offset : 0x10 Finger 2 name: : version Finger 2 value : Intel(R) Atom(TM) Processor T5700 @ 1.70GHz Finger 3 type : 0x7f Finger 3 offset : 0x00 Finger 3 name: : reserved Finger 3 value : Finger 4 type : 0x7f Finger 4 offset : 0x00 Finger 4 name: : reserved Finger 4 value : Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: add fingerprint for generic Broxton-M (rev. 1F1)Todor Minchev2017-07-071-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finger 0 type : 0x01 Finger 0 offset : 0x05 Finger 0 name: : product_name Finger 0 value : 570x DVT1 Finger 1 type : 0x02 Finger 1 offset : 0x05 Finger 1 name: : product_name Finger 1 value : SDS Finger 2 type : 0x04 Finger 2 offset : 0x10 Finger 2 name: : version Finger 2 value : U3E1 Finger 3 type : 0x7f Finger 3 offset : 0x00 Finger 3 name: : reserved Finger 3 value : Finger 4 type : 0x7f Finger 4 offset : 0x00 Finger 4 name: : reserved Finger 4 value : Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: update SRCREV for rmc recipeTodor Minchev2017-03-311-1/+1
| | | | | | | This SRCREV fixes rmc build failure under musl Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: update license file checksumTodor Minchev2017-03-311-1/+1
| | | | | Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: enable serial console when running under QEMUDmitry Rozhkov2017-03-214-0/+2
| | | | | | | | | | | | | | | | | | | Since we can run ordinary intel-corei7-64 wic images under QEMU it makes sense to add QEMU quirks enabling serial console to the RMC DB. This patch appends "console=ttyS0,115200" to kernel command line in case the image is used to run a QEMU VM e.g. with the command: $ runqemu ovmf refkit-image-common wic intel-corei7-64 slirp serial nographic Unfortunately different major versions of QEMU produce different RMC fingerprints, so the QEMU versions 2.6.x and 2.8.x should be treated as different boards. Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: update SRCREV for rmc recipeTodor Minchev2017-03-201-1/+1
| | | | | | | | | | | | | | | This SRCREV adds fingerprint and database extraction functionality to RMC Extract database: rmc -E -d rmc.db -o output/directory/ Extract fingerprint: rmc -E -f fingerprint_file https://bugzilla.yoctoproject.org/show_bug.cgi?id=10092 Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com> Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
* rmc-db: LICENSE is straight MIT so just use common-license/MITSaul Wold2017-03-071-1/+1
| | | | | | | The OE-Core LICENSE is mostly MIT, but should not be used as a checksum file for a purely MIT licensed package. Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: broxton-m: enable xstate save and restore using xsaveMikko Ylinen2017-03-071-1/+1
| | | | | | | | | | | | The command line setting for Intel 570x added 'noxsave' which disabled xsave/xrstor to save and restore extended registers. The systems run fine without the setting so drop noxsave to gain optimized context switches and get more CPU features flags (XSAVE*/AVX/MPX) enabled. Signed-off-by: Mikko Ylinen <mikko.ylinen@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: add Minnowboard Turbot board dataMikko Ylinen2017-02-022-0/+1
| | | | | | | | | | | To be able to detect a Minnowboard Turbot, its fingerprint is needed in the RMC database. This initial commit adds the fingerprint and a simple cmdline entry (KBOOTPARAM) for the board. Signed-off-by: Mikko Ylinen <mikko.ylinen@intel.com> Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
* rmc: Extend usages of RMC_BOARD_DATA_DIRS to specify board dataJianxun Zhang2017-01-091-1/+2
| | | | | | | | | | | | | | | | | | | Use the variable RMC_BOARD_DATA_DIRS, to disable, append to, or override the default board data in meta-intel with boards' data provided by users. Ideally, users should get the updated database in the new built image after an incremental build. Examples of RMC database output (db): RMC_BOARD_DATA_DIRS = "" (disable db generation) RMC_BOARD_DATA_DIRS_append = " top_dir" (db of defaults & user's) RMC_BOARD_DATA_DIRS = "top_dir" (db for user's , no defaults) RMC_BOARD_DATA_DIRS = " " (same as "") Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
* rmc: don't hardcode install pathsRoss Burton2016-12-151-2/+7
| | | | | | | | | | Instead of hardcoding /usr in the recipe, and hardcoding $prefix/lib in the Makefile, override all of the paths with the distro configuration. [ YOCTO #10800 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
* rmc: integration updateJianxun Zhang2016-12-051-15/+5
| | | | | | | | | | | | | | | | | | | | | This is a whole package of rmc work in meta-intel to reflect some major changes in the upstream project: In rmc.bb recipe, EFI_ARCH, path of EFI header files, and dependency on gnu-efi are removed with the updated revision. In systemd-boot, patches to integrate with rmc are re-worked mainly because of new APIs. Size of patches are smaller than the previous implementation. Notice we still use multiple APIs instead of calling an one-step interface multiple times, to get some potential runtime performance benefit. (rmc tool in user space is changed to use single API in the upstream project.) Fixes [YOCTO #10086] Fixes [YOCTO #10671] Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: remove stack-protector-strong from CFLAGSSaul Wold2016-12-051-0/+1
| | | | | | | | Since the rmc is used standalone from systemd-boot and does not use libc which provides the stack_chk_fail code that causes an undefined symbol Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Add support for MohonPeak platformRahul Kumar Gupta2016-11-287-0/+17
| | | | | | | | | | Intel common BSP is using ttyS0 and tty0 for consoles by default. By Adding support for mohonpeak platforms to rmc, these console port can customized to ttyS1 and tty1 by detecting the fingerprint file at runtime. It will use their own boot.conf/install.conf for booting/installing. Signed-off-by: Rahul Kumar Gupta <rahul.kumarxx.gupta@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* broxton-m/KBOOTPARAM: Add videofb console backSaul Wold2016-11-081-1/+1
| | | | | | This re-enables the video framebuffer for displaying cosole output Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Limit them to x86 targetsKhem Raj2016-11-081-0/+2
| | | | | | | Makes meta-intel behave well in multi-BSP scene Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Add bootloader entries for the Broxton-M/Joule platformSaul Wold2016-11-023-0/+10
| | | | | | | By adding these entries, we can get the serial console output on the correct ttyS2 port the default port for meta-intel is ttyS0, but we can fix this with the rmc configuration Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Add INSTALLER.CONFIG and POSTINSTALL.sh for broxton-m boardsCalifornia Sullivan2016-11-022-0/+5
| | | | | | | | On install we want to keep rmc's boot.conf. Also add POSTINSTALL.sh that removes ttyS0 from inittab since it uses ttyS2 instead. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Add example for Galileo Gen 2 (Quark)Jianxun Zhang2016-11-013-0/+6
| | | | | | | | | | | | | This is an experimental RMC sample for quark. At runtime, a boot option with board name will be available for user to boot the Galileo. Note: The supported image type is hddimg instead of the direct- boot image type usually used on quark. Use a USB stick flashed with the image to boot the Galileo Gen 2 board. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Add board data for NUC5i5RYBJianxun Zhang2016-10-206-0/+14
| | | | | | | | | | | | | | | | | A particular intention of this change is to remove the serial setting in kernel command line that is hardcoded in core2 and corei7 conf files. However we cannot use KBOOTPARAM because it is designed as a fragment appended to hardcoded part at runtime. This is why we need to create more files in this patch to use cmdline in bootloader entry files to bypass whatever from the build. Once we have a clean base (no any preset console setting) in generic configurations, this change can be dropped. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
* rmc: Update rmc project SRCREVJianxun Zhang2016-08-311-1/+1
| | | | | | | | | | | | | | | New changes in the upstream rmc project captured by this SRCREV: 2e38d05 Merge branch 'rmc-dev' (Aug 30 2016) a1a4a26 Makefile: remove static linking in Linux build b22169a doc: update README file 29e943d Merge branch 'rmc-dev' (Aug 24 2016) fc2fb1e rmc: fix allocating buffer issue in read_file() (32 bit) 38b0553 rmc: fix wrong error message 7ee67a0 test: Provide test scripts and sample data Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Explicitly specify hash style for linkerJianxun Zhang2016-08-311-0/+2
| | | | | | | | | | | | | | | | | | The QA sanity checker in OE fails when an ELF binary has a symbol table without GNU hash. There is no issue so far because rmc is statically linked with C libraries and the symbol table is stripped out in build. But once we compile rmc with dynamic linking, the symbol table in the dynamic section stays. Thus it fails the QA checker because the default hash style is sysv. To have some peace of mind, we specify "both" for the hash style to the linker. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Add NUC Gen 6 post-installation hook and update documentationJianxun Zhang2016-08-031-0/+7
| | | | | | | | | | | | | | | | | This change shows how we can get rid of an error message caused by board-specific design at runtime, and still keep the rest in system generic. The new added hook removes line(s) in inittab which triggers the error. README of rmc is also updated accordingly. Fixes [YOCTO #5351]. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Reviewed-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Add support for the Broxton-m platformJianxun Zhang2016-08-032-0/+1
| | | | | | | | | Add Broxton-m fingerprint and global kernel bootparam fragment into rmc. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Reviewed-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Add documentation and examples for RMC featureJianxun Zhang2016-08-0317-0/+44
| | | | | | | | | | Provide a README for RMC feature. Also check in fingerprints and configuration data for several boards as examples for users. They can be used for validation too. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Reviewed-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Add recipe and bbclass for RMC featureJianxun Zhang2016-08-031-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RMC Feature is based on RMC project, systemd-boot, EFI installer to enable a single generic image, built for multiple platforms, automatically applies customization and quirks specific to a type of boards at runtime. In another word, you will see a single image behaves differently and intelligently according to the type of board it is running on. To Enable this feature: add the two lines in conf file: DISTRO_FEATURES_append = " rmc" EFI_PROVIDER = "rmc-systemd-boot" Based on Saul Wold's initial work on a feature switch, RMC patches in systemd-boot, installer and gnu-efi aren't built unless the feature is enabled. For a supported board, this feature can : () show and boot with board-specific boot entries in boot menu in live-boot and post-installation. () apply a kernel cmdline fragment to the end of cmdline to boot Linux kernel. This is effective for any boot entry user chooses in boot menu. () create directory and deploy files only for the type of the running board to target's file systems. What left on target after installation is just same as the result from installing a conventional image customized for a single type of hardware. To add support of new boards, a new variable RMC_BOARD_DATA_DIRS is the interface to developers. How-to information will be provided with examples in following patches. Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Reviewed-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
* rmc: Add Runtime Machine Configuration (RMC) projectJianxun Zhang2016-08-031-0/+46
RMC recipe fetch RMC project and build it more than once in build time: RMC tool is built for host architecture (native). The tool for host is used to generate RMC database in build time. RMC tool is also built for target architecture, so that scripts in user space can call RMC tool on a running target. Developers can also boot a target and run rmc tool to obtain fingerprint for a new board type. RMC libraries are compiled for both of UEFI context and user space. They are always linked in RMC tool and can be linked into an EFI bootloader. The recipes don't install libraries for target's user space until we have a new client needs it. The rmc-db.bbclass provides functions to generate rmc database file for other software components to reuse. We absorb a patch from Tom Zanussi to update source location with the public link. We could put this change in another commit, but leaving the replaced internal link in this commit could cause trouble when people bisect the project but don't have access to the internal location: ---------------------- rmc: Update to use public repo The repo the rmc recipe was pointing to was private - it's now public Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> common/recipes-bsp/rmc/rmc.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/recipes-bsp/rmc/rmc.inc b/common/recipes-bsp/rmc/rmc.inc index c046e2e..bdf930d 100644 --- a/common/recipes-bsp/rmc/rmc.inc +++ b/common/recipes-bsp/rmc/rmc.inc @@ -15,7 +15,7 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://COPYING;md5=bcdd376d27b26bde6afadd67aa3c8b07" -SRC_URI = "git://git@git.yoctoproject.org/rmc;protocol=ssh" +SRC_URI = "git://git.yoctoproject.org/rmc" ... ---------------------- Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Reviewed-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>