├── .gitignore ├── recipes-core ├── net-persistent-mac │ ├── net-persistent-mac │ │ ├── default │ │ ├── imx233-olinuxino-maxi │ │ │ └── default │ │ └── init │ └── net-persistent-mac.bb └── init-ifupdown │ ├── init-ifupdown_1.0.bbappend │ └── init-ifupdown │ ├── imx233-olinuxino-maxi │ └── interfaces │ ├── ccimx6ulsbcexpress │ └── interfaces │ └── ccimx6ulsbcpro │ └── interfaces ├── recipes-bsp ├── u-boot │ ├── u-boot-kontron │ │ └── fw_env.config │ ├── u-boot-boundary │ │ ├── mx6-generic-bsp │ │ │ └── fw_env.config │ │ ├── mx7-generic-bsp │ │ │ └── fw_env.config │ │ ├── mx8mm-generic-bsp │ │ │ └── fw_env.config │ │ ├── mx8mn-generic-bsp │ │ │ └── fw_env.config │ │ ├── mx8mp-generic-bsp │ │ │ └── fw_env.config │ │ └── mx8mq-generic-bsp │ │ │ └── fw_env.config │ ├── u-boot-fslc_%.bbappend │ ├── u-boot-boundary-common_2022.04.inc │ ├── u-boot-boundary_2022.04.bb │ ├── u-boot-toradex │ │ ├── colibri-imx7 │ │ │ └── fw_env.config │ │ ├── colibri-imx6ull │ │ │ └── fw_env.config │ │ ├── vf-generic-bsp │ │ │ └── fw_env.config │ │ ├── fw_env.config │ │ ├── mx6-generic-bsp │ │ │ └── fw_env.config │ │ └── colibri-imx7-emmc │ │ │ └── fw_env.config │ ├── u-boot-variscite_2018.03.bb │ ├── u-boot-olimex-common_2024.04.inc │ ├── u-boot-script-qoriq │ │ └── boot.cmd.in │ ├── u-boot-qoriq │ │ ├── 0001-Remove-redundant-YYLOC-global-declaration.patch │ │ ├── 0001-binman-Move-to-use-Python-3.patch │ │ ├── 0001-patman-Update-command.Run-to-handle-failure-better.patch │ │ ├── 0001-binman-Convert-a-few-tests-to-Python-3.patch │ │ └── 0001-patman-Drop-binary-parameter.patch │ ├── u-boot-kontron_2020.01.bb │ ├── u-boot-qoriq-lx2160acex7 │ │ ├── 0009-armv8-lx2160acex7-Fix-booting-from-NVMe-drives.patch │ │ ├── 0015-lx2160a-cex7-set-mmc-dev-to-0-when-attempting-sd_boo.patch │ │ ├── 0008-uboot-add-nvme-commands-and-for-distroboot.patch │ │ ├── 0002-armv8-lx2160acex-misc-hacks-to-get-the-sources-built.patch │ │ ├── 0007-lx2160a-load-dpl-into-0x80001000-instead-of-0x80d000.patch │ │ ├── 0011-nvme-flush-dcache-on-both-r-w-and-the-prp-list.patch │ │ ├── 0005-armv8-lx2160acex7-lx2160acex-device-tree.patch │ │ ├── 0017-lx2160acex7-misc-fixes-to-get-booting-from-eMMC-func.patch │ │ ├── 0001-armv8-add-lx2160acex7-build-inclusion.patch │ │ ├── 0010-nvme-add-accessor-to-namespace-id-and-eui64.patch │ │ ├── 0012-nvme-use-page-aligned-buffer-for-identify-command.patch │ │ └── 0016-lx2160acex7-Misc-fixes-to-support-LSDK-20.04.patch │ ├── u-boot-qoriq_2019.10.bbappend │ ├── u-boot-script-toradex_2020.07.bb │ ├── u-boot-script-boundary_2022.04.bb │ ├── u-boot-script-qoriq_2019.10.bb │ ├── u-boot-toradex_2020.07.bb │ ├── u-boot-olimex_2024.04.bb │ └── u-boot-script-toradex │ │ └── boot.cmd.in ├── formfactor │ ├── formfactor │ │ ├── cfa10057 │ │ │ └── machconfig │ │ └── cfa10058 │ │ │ └── machconfig │ └── formfactor_0.0.bbappend ├── alsa-state │ └── alsa-state.bbappend ├── broadcom-nvram-config │ ├── bcm43430-nvram-config.bb │ ├── bcm4329-nvram-config.bb │ ├── bcm4339-nvram-config.bb │ ├── bcm4330-nvram-config.bb │ ├── broadcom-nvram-config.inc │ └── files │ │ ├── imx7s-warp │ │ └── brcmfmac43430-sdio.txt │ │ ├── cubox-i │ │ ├── brcmfmac4329-sdio.txt │ │ └── brcmfmac4330-sdio.txt │ │ ├── wandboard │ │ ├── brcmfmac4329-sdio.txt │ │ └── brcmfmac4330-sdio.txt │ │ ├── nitrogen6x-lite │ │ └── brcmfmac4330-sdio.txt │ │ ├── imx6sl-warp │ │ └── brcmfmac4330-sdio.txt │ │ ├── imx7d-pico │ │ └── brcmfmac4339-sdio.txt │ │ ├── imx6qdl-pico │ │ └── brcmfmac4339-sdio.txt │ │ ├── imx6ul-pico │ │ └── brcmfmac4339-sdio.txt │ │ └── LICENCE.broadcom_bcm43xx ├── atf │ └── qoriq-atf_1.5.bbappend ├── mc-utils │ └── mc-utils_git.bbappend ├── libmcc │ ├── libmcc │ │ ├── build-with-versioned-soname.patch │ │ ├── 0001-Makefile-use-oe-ldflags.patch │ │ └── build-Fix-symlink-generation.patch │ └── libmcc_1.05.1.bb ├── mqxboot │ ├── mqxboot │ │ └── 0001-Makefile-use-OE-ldflags.patch │ └── mqxboot_1.0.1.bb ├── rcw │ ├── rcw-lx2160acex7 │ │ ├── 0006-lx2160a-add-SVR-check-for-a050234-to-apply-only-on-r.patch │ │ ├── 0002-Set-io-pads-as-GPIO.patch │ │ ├── 0003-S2-enable-gen3-xspi-increase-divisor-to-28.patch │ │ ├── 0007-lx2160acex7-pcie-workarounds-and-fan-full-speed.patch │ │ └── 0008-lx2160a-add-generic-bootloc-section.patch │ └── rcw_git.bbappend └── imx-atf │ └── imx-atf-boundary_2.8.bb ├── recipes-kernel ├── linux │ ├── linux-qoriq_5.4.bbappend │ ├── linux-fslc-qoriq_5.4.bbappend │ ├── linux-fslc_%.bbappend │ ├── linux-variscite_4.14.bb │ ├── linux-lx2160acex7.inc │ ├── linux-toradex_4.4.bb │ ├── linux-qoriq_5.4.bb │ ├── linux-toradex_5.4-2.3.x.bb │ ├── linux-boundary_6.1.bb │ ├── linux-kontron_5.10.bb │ ├── linux-qoriq │ │ ├── 0001-Makfefile-linux-5.4-add-warning-cflags-on-LSDK-20.04.patch │ │ ├── 0001-perf-tests-bp_account-Make-global-variable-static.patch │ │ ├── 0001-libtraceevent-Fix-build-with-binutils-2.35.patch │ │ └── 0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch │ ├── linux-fslc-qoriq-lx2160acex7 │ │ ├── 0001-arm64-dts-lx2160a-add-lx2160acex7-device-tree-build.patch │ │ ├── 0009-lx2160a-dwc3-dts-disable-usb3-parkmode.patch │ │ ├── 0005-arm64-dts-lx2160a-cex7-add-ltc3882-support.patch │ │ ├── 0011-aarm64-dts-lx2160a-cex7-add-secondary-spi-flash-supp.patch │ │ ├── 0010-arm64-dts-lx2160a-cex7-add-power-button-support.patch │ │ └── 0006-arm64-dts-lx2160a-cex7-add-on-module-eeproms.patch │ └── linux-fslc │ │ └── imx6q-var-som-vsc.dts ├── linux-firmware │ └── linux-firmware_%.bbappend └── kernel-module-mcc-toradex │ └── kernel-module-mcc-toradex_1.06+toradex2.bb ├── conf ├── machine │ ├── imx233-olinuxino-mini.conf │ ├── imx233-olinuxino-nano.conf │ ├── imx233-olinuxino-micro.conf │ ├── imx233-olinuxino-maxi.conf │ ├── imx7s-warp.conf │ ├── imx6dl-riotboard.conf │ ├── include │ │ └── imx233-olinuxino.inc │ ├── nitrogen7.conf │ ├── nitrogen6sx.conf │ ├── nitrogen6x-lite.conf │ ├── imx6ul-pico.conf │ ├── colibri-imx7-emmc.conf │ ├── imx6qdl-pico.conf │ ├── imx7d-pico.conf │ ├── cubox-i.conf │ ├── colibri-imx6ull.conf │ ├── wandboard.conf │ ├── apalis-imx6.conf │ ├── lx2160acex7.conf │ ├── colibri-imx6.conf │ ├── imx6sl-warp.conf │ ├── imx6qdl-variscite-som.conf │ ├── nitrogen8mn.conf │ ├── colibri-vf.conf │ ├── colibri-imx7-nand.conf │ ├── imx6ul-kontron.conf │ ├── nitrogen6x.conf │ ├── nitrogen8m.conf │ ├── olimex-imx8mp-evb.conf │ ├── nitrogen8mp.conf │ └── nitrogen8mm.conf └── layer.conf ├── scripts └── generate-license-file ├── .github └── workflows │ ├── backport.yaml │ └── update-license-file.yml ├── README ├── LICENSE ├── recipes-connectivity └── ti-18xx-wlconf │ └── ti-18xx-wlconf_8.7.3.bb ├── classes └── image_types_digi.bbclass └── wic └── lx2160acex7.wks.in /.gitignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *.bak 3 | *.orig 4 | *.rej 5 | *.swp 6 | -------------------------------------------------------------------------------- /recipes-core/net-persistent-mac/net-persistent-mac/default: -------------------------------------------------------------------------------- 1 | INTERFACES="" -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-kontron/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mmcblk0 0xf0000 0x10000 2 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq_5.4.bbappend: -------------------------------------------------------------------------------- 1 | require linux-lx2160acex7.inc 2 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq_5.4.bbappend: -------------------------------------------------------------------------------- 1 | require linux-lx2160acex7.inc 2 | -------------------------------------------------------------------------------- /recipes-bsp/formfactor/formfactor/cfa10057/machconfig: -------------------------------------------------------------------------------- 1 | # Display options 2 | HAVE_TOUCHSCREEN=1 3 | -------------------------------------------------------------------------------- /recipes-bsp/formfactor/formfactor/cfa10058/machconfig: -------------------------------------------------------------------------------- 1 | # Display options 2 | HAVE_TOUCHSCREEN=1 3 | -------------------------------------------------------------------------------- /recipes-bsp/formfactor/formfactor_0.0.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" 2 | -------------------------------------------------------------------------------- /recipes-bsp/alsa-state/alsa-state.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:prepend:cubox-i := "${THISDIR}/files:" 2 | -------------------------------------------------------------------------------- /recipes-core/net-persistent-mac/net-persistent-mac/imx233-olinuxino-maxi/default: -------------------------------------------------------------------------------- 1 | INTERFACES="usb0" 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx6-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mtd1 0x00000 0x2000 0x1000 2 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx7-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mtd1 0x00000 0x2000 0x1000 2 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx8mm-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mmcblk0boot0 -0x2000 0x2000 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx8mn-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mmcblk0boot0 -0x2000 0x2000 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx8mp-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mmcblk2boot0 -0x2000 0x2000 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary/mx8mq-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | /dev/mmcblk0boot0 -0x2000 0x2000 2 | -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/init-ifupdown_1.0.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:prepend := "${THISDIR}/init-ifupdown:" 2 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-fslc_%.bbappend: -------------------------------------------------------------------------------- 1 | COMPATIBLE_MACHINE:imx6sl-warp = "(.)" 2 | COMPATIBLE_MACHINE:imx6dl-riotboard = "(.)" 3 | -------------------------------------------------------------------------------- /conf/machine/imx233-olinuxino-mini.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: OLIMEX iMX233-OLinuXino-Mini 3 | #@SOC: i.MX23 4 | #@DESCRIPTION: Machine configuration for OLIMEX iMX233-OLinuXino-Mini 5 | 6 | include conf/machine/include/imx233-olinuxino.inc 7 | -------------------------------------------------------------------------------- /conf/machine/imx233-olinuxino-nano.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: OLIMEX iMX233-OLinuXino-Nano 3 | #@SOC: i.MX23 4 | #@DESCRIPTION: Machine configuration for OLIMEX iMX233-OLinuXino-Nano 5 | 6 | include conf/machine/include/imx233-olinuxino.inc 7 | -------------------------------------------------------------------------------- /conf/machine/imx233-olinuxino-micro.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: OLIMEX iMX233-OLinuXino-Micro 3 | #@SOC: i.MX23 4 | #@DESCRIPTION: Machine configuration for OLIMEX iMX233-OLinuXino-Micro 5 | 6 | include conf/machine/include/imx233-olinuxino.inc 7 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/bcm43430-nvram-config.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Nvram support for Broadcom 43430 wifi/bt device" 2 | SECTION = "kernel" 3 | 4 | include broadcom-nvram-config.inc 5 | 6 | CHIP_MODEL = "43430" 7 | 8 | COMPATIBLE_MACHINE = "(imx7s-warp)" 9 | -------------------------------------------------------------------------------- /recipes-bsp/atf/qoriq-atf_1.5.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:append:lx2160acex7 := "${THISDIR}/${PN}-lx2160acex7:" 2 | 3 | SRC_URI:append:lx2160acex7 = "\ 4 | file://0001-plat-nxp-Add-lx2160acex7-module-support.patch \ 5 | file://0002-plat-nxp-lx2160a-auto-boot.patch \ 6 | " 7 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/bcm4329-nvram-config.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Nvram support for Broadcom BCM4329 wifi/bt device" 2 | SECTION = "kernel" 3 | 4 | include broadcom-nvram-config.inc 5 | 6 | CHIP_MODEL = "4329" 7 | 8 | COMPATIBLE_MACHINE = "(wandboard|cubox-i)" 9 | -------------------------------------------------------------------------------- /recipes-bsp/mc-utils/mc-utils_git.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:append:lx2160acex7 := "${THISDIR}/${PN}-lx2160acex7:" 2 | 3 | SRC_URI:append:lx2160acex7 = "\ 4 | file://0001-lx2160acex7-add-8x10G-dual-40G-and-dual-100G-DPL-DPC.patch \ 5 | " 6 | 7 | MC_FLAVOUR:lx2160acex7 = "CEX7" 8 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/bcm4339-nvram-config.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Nvram support for Broadcom BCM4339 wifi/bt device" 2 | SECTION = "kernel" 3 | 4 | include broadcom-nvram-config.inc 5 | 6 | CHIP_MODEL = "4339" 7 | 8 | COMPATIBLE_MACHINE = "(imx7d-pico|imx6ul-pico|imx6qdl-pico)" 9 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/bcm4330-nvram-config.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Nvram support for Broadcom BCM4330 wifi/bt device" 2 | SECTION = "kernel" 3 | 4 | include broadcom-nvram-config.inc 5 | 6 | CHIP_MODEL = "4330" 7 | 8 | COMPATIBLE_MACHINE = "(cubox-i|nitrogen6x-lite|wandboard|imx6sl-warp)" 9 | -------------------------------------------------------------------------------- /conf/machine/imx233-olinuxino-maxi.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: OLIMEX iMX233-OLinuXino-Maxi 3 | #@SOC: i.MX23 4 | #@DESCRIPTION: Machine configuration for OLIMEX iMX233-OLinuXino-Maxi 5 | 6 | include conf/machine/include/imx233-olinuxino.inc 7 | 8 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "net-persistent-mac" 9 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc_%.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" 2 | 3 | COMPATIBLE_MACHINE:imx6sl-warp = "(.)" 4 | COMPATIBLE_MACHINE:imx6dl-riotboard = "(.)" 5 | 6 | SRC_URI:append:imx6qdl-variscite-som:use-mainline-bsp = " \ 7 | file://imx6qdl-var-som.dtsi \ 8 | file://imx6q-var-som-vsc.dts \ 9 | " 10 | 11 | do_configure:prepend:imx6qdl-variscite-som() { 12 | cp ${UNPACKDIR}/imx6*-var*.dts* ${S}/arch/arm/boot/dts 13 | } 14 | -------------------------------------------------------------------------------- /conf/layer.conf: -------------------------------------------------------------------------------- 1 | # We have a conf and classes directory, add to BBPATH 2 | BBPATH .= ":${LAYERDIR}" 3 | 4 | # We have a packages directory, add to BBFILES 5 | BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ 6 | ${LAYERDIR}/recipes-*/*/*.bbappend" 7 | 8 | BBFILE_COLLECTIONS += "freescale-3rdparty" 9 | BBFILE_PATTERN_freescale-3rdparty := "^${LAYERDIR}/" 10 | BBFILE_PRIORITY_freescale-3rdparty = "4" 11 | 12 | LAYERSERIES_COMPAT_freescale-3rdparty = "walnascar whinlatter" 13 | LAYERDEPENDS_freescale-3rdparty = "core freescale-layer" 14 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary-common_2022.04.inc: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "U-Boot for Boundary Devices boards" 2 | LICENSE = "GPL-2.0-or-later" 3 | LIC_FILES_CHKSUM = "file://Licenses/README;md5=5a7450c57ffe5ae63fd732446b988025" 4 | 5 | PV = "v2022.04+git${SRCPV}" 6 | 7 | SRCREV = "1c69998957efb2a9dcde024f33e9b73b84226560" 8 | SRCBRANCH = "boundary-v2022.04" 9 | SRC_URI = "git://github.com/boundarydevices/u-boot.git;branch=${SRCBRANCH};protocol=https" 10 | 11 | S = "${WORKDIR}/git" 12 | B = "${WORKDIR}/build" 13 | PACKAGE_ARCH = "${MACHINE_ARCH}" 14 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-boundary_2022.04.bb: -------------------------------------------------------------------------------- 1 | require recipes-bsp/u-boot/u-boot.inc 2 | require recipes-bsp/u-boot/u-boot-boundary-common_${PV}.inc 3 | 4 | inherit deploy ${@oe.utils.ifelse(d.getVar('UBOOT_PROVIDES_BOOT_CONTAINER') == '1', 'imx-boot-container', '')} 5 | 6 | DEPENDS += "bison-native dtc-native python3-setuptools-native" 7 | 8 | SRC_URI += "file://fw_env.config" 9 | 10 | PROVIDES += "u-boot" 11 | 12 | COMPATIBLE_MACHINE = "(nitrogen6x-lite|nitrogen6x|nitrogen6sx|nitrogen7|nitrogen8m|nitrogen8mm|nitrogen8mn|nitrogen8mp)" 13 | -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/init-ifupdown/imx233-olinuxino-maxi/interfaces: -------------------------------------------------------------------------------- 1 | # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) 2 | 3 | # The loopback interface 4 | auto lo 5 | iface lo inet loopback 6 | 7 | # Wireless interfaces 8 | iface wlan0 inet dhcp 9 | wireless_mode managed 10 | wireless_essid any 11 | wpa-driver wext 12 | wpa-conf /etc/wpa_supplicant.conf 13 | 14 | auto usb0 15 | iface usb0 inet static 16 | address 192.168.7.2 17 | netmask 255.255.255.0 18 | network 192.168.7.0 19 | gateway 192.168.7.1 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/colibri-imx7/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. 5 | # Futhermore, if the Flash sector size is ommitted, this value is assumed to 6 | # be the same as the Environment size, which is valid for NOR and SPI-dataflash 7 | 8 | # MTD device name Device offset Env. size Flash sector size Number of sectors 9 | # Colibri iMX7 10 | /dev/mtd3 0x00000000 0x00020000 0x20000 4 11 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/colibri-imx6ull/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. 5 | # Futhermore, if the Flash sector size is ommitted, this value is assumed to 6 | # be the same as the Environment size, which is valid for NOR and SPI-dataflash 7 | 8 | # MTD device name Device offset Env. size Flash sector size Number of sectors 9 | # Colibri iMX6ULL 10 | /dev/mtd3 0x00000000 0x00020000 0x20000 4 11 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/vf-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. 5 | # Futhermore, if the Flash sector size is ommitted, this value is assumed to 6 | # be the same as the Environment size, which is valid for NOR and SPI-dataflash 7 | 8 | # MTD device name Device offset Env. size Flash sector size Number of sectors 9 | # Colibri VF61 10 | /dev/mtd2 0x00000000 0x00020000 0x20000 4 11 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-variscite_4.14.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013-16 Freescale Semiconductor 2 | # Released under the MIT license (see COPYING.MIT for the terms) 3 | 4 | require recipes-kernel/linux/linux-imx.inc 5 | 6 | DEPENDS += "lzop-native bc-native" 7 | 8 | LINUX_VERSION = "4.14.78" 9 | 10 | SRCBRANCH = "imx_4.14.78_1.0.0_ga_var01" 11 | SRCREV = "0b8118cd4d7b802748ff1a5de17a31a2990cdefd" 12 | SRC_URI = "\ 13 | git://github.com/varigit/linux-imx.git;protocol=https;branch=${SRCBRANCH} \ 14 | file://defconfig \ 15 | " 16 | 17 | KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}" 18 | 19 | COMPATIBLE_MACHINE = "(mx6-nxp-bsp)" 20 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-lx2160acex7.inc: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:append:lx2160acex7 := "${THISDIR}/linux-fslc-qoriq-lx2160acex7:" 2 | 3 | SRC_URI:append:lx2160acex7 = "\ 4 | file://0001-arm64-dts-lx2160a-add-lx2160acex7-device-tree-build.patch \ 5 | file://0002-arm64-dts-lx2160a-add-lx2160acex7-device-tree.patch \ 6 | file://0005-arm64-dts-lx2160a-cex7-add-ltc3882-support.patch \ 7 | file://0006-arm64-dts-lx2160a-cex7-add-on-module-eeproms.patch \ 8 | file://0009-lx2160a-dwc3-dts-disable-usb3-parkmode.patch \ 9 | file://0010-arm64-dts-lx2160a-cex7-add-power-button-support.patch \ 10 | file://0011-aarm64-dts-lx2160a-cex7-add-secondary-spi-flash-supp.patch \ 11 | " 12 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-toradex_4.4.bb: -------------------------------------------------------------------------------- 1 | require recipes-kernel/linux/linux-imx.inc 2 | 3 | SUMMARY = "Linux kernel for Toradex Colibri VFxx Computer on Modules" 4 | 5 | SRC_URI = "git://git.toradex.com/linux-toradex.git;protocol=git;branch=${SRCBRANCH}" 6 | 7 | KBUILD_DEFCONFIG ?= "colibri_vf_defconfig" 8 | 9 | KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('COMBINED_FEATURES', 'usbgadget', ' libcomposite', '',d)}" 10 | 11 | LOCALVERSION = "-0.0.0" 12 | PV:append = "+git${SRCPV}" 13 | 14 | LINUX_VERSION = "4.4.291" 15 | 16 | SRCBRANCH = "toradex_vf_4.4" 17 | SRCREV = "4a0abd7dd466276ee3fdf79b54f05f845f7d8844" 18 | 19 | DEPENDS += "lzop-native bc-native" 20 | COMPATIBLE_MACHINE = "(vf-generic-bsp)" 21 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-variscite_2018.03.bb: -------------------------------------------------------------------------------- 1 | require recipes-bsp/u-boot/u-boot.inc 2 | 3 | SUMMARY = "U-Boot for Variscite i.MX6Q/DL VAR-SOM-MX6" 4 | LICENSE = "GPL-2.0-or-later" 5 | LIC_FILES_CHKSUM = "file://Licenses/README;md5=a2c678cfd4a4d97135585cad908541c6" 6 | COMPATIBLE_MACHINE = "(imx6qdl-variscite-som)" 7 | 8 | DEPENDS += "bc-native" 9 | UBOOT_INITIAL_ENV = "" 10 | 11 | PROVIDES += "u-boot" 12 | 13 | SPL_BINARY = "SPL" 14 | 15 | SRCREV = "717f29898abe82ffa2d74515806c46094075285a" 16 | SRCBRANCH = "imx_v2018.03_4.14.78_1.0.0_ga_var02" 17 | 18 | SRC_URI = "\ 19 | git://github.com/varigit/uboot-imx.git;protocol=https;branch=${SRCBRANCH} \ 20 | " 21 | 22 | S = "${WORKDIR}/git" 23 | B = "${WORKDIR}/build" 24 | -------------------------------------------------------------------------------- /conf/machine/imx7s-warp.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: WaRP7 3 | #@SOC: i.MX7S 4 | #@DESCRIPTION: Machine configuration for i.MX7S WaRP board. 5 | #@MAINTAINER: Pierre-Jean Texier 6 | 7 | MACHINEOVERRIDES =. "mx7:mx7d:" 8 | 9 | require conf/machine/include/imx-base.inc 10 | require conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | 14 | MACHINE_FEATURES += " wifi bluetooth" 15 | 16 | KERNEL_DEVICETREE = "imx7s-warp.dtb" 17 | 18 | UBOOT_BINARY = "u-boot-dtb.imx" 19 | UBOOT_SUFFIX = "imx" 20 | UBOOT_MAKE_TARGET = "" 21 | 22 | UBOOT_CONFIG ??= "sd" 23 | UBOOT_CONFIG[sd] = "warp7_defconfig,sdcard" 24 | 25 | MACHINE_EXTRA_RRECOMMENDS += "bcm43430-nvram-config" 26 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq_5.4.bb: -------------------------------------------------------------------------------- 1 | LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" 2 | 3 | LINUX_VERSION = "5.4.47" 4 | 5 | SRC_URI = "git://github.com/nxp-qoriq/linux;protocol=https;nobranch=1 \ 6 | file://0001-Makfefile-linux-5.4-add-warning-cflags-on-LSDK-20.04.patch \ 7 | file://0001-perf-tests-bp_account-Make-global-variable-static.patch \ 8 | file://0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch \ 9 | file://0001-perf-bench-Share-some-global-variables-to-fix-build-.patch \ 10 | file://0001-libtraceevent-Fix-build-with-binutils-2.35.patch \ 11 | " 12 | SRCREV = "6bff40d413b394c2d742e7a42089bfc62aef0a9b" 13 | 14 | require recipes-kernel/linux/linux-qoriq.inc 15 | -------------------------------------------------------------------------------- /recipes-bsp/libmcc/libmcc/build-with-versioned-soname.patch: -------------------------------------------------------------------------------- 1 | libmcc: build with versioned soname 2 | 3 | This adds a versioned soname to the shared library during linking. 4 | Otherwise an application linked with '-lmcc' needs libmcc.so for execution, 5 | having libmcc.so.1 would not be enough. 6 | 7 | Upstream-Status: Pending 8 | Signed-off-by: Max Krummenacher 9 | --- a/Makefile 2015-01-07 17:09:13.657675270 +0100 10 | +++ b/Makefile 2015-01-07 17:21:19.457545709 +0100 11 | @@ -8,7 +8,7 @@ 12 | $(AR) rcs $@ $< 13 | 14 | build/libmcc.so.1.0: build/libmcc.o 15 | - $(CC) -shared -o $@ $< 16 | + $(CC) -shared -Wl,-soname,libmcc.so.1 -o $@ $< -lc 17 | 18 | install: 19 | mkdir -p $(DESTDIR)/usr/include $(DESTDIR)/usr/lib 20 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-olimex-common_2024.04.inc: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "i.MX U-Boot suppporting i.MX reference boards." 2 | 3 | LICENSE = "GPL-2.0-or-later" 4 | LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263" 5 | 6 | SRC_URI = "${UBOOT_SRC};branch=${SRCBRANCH}" 7 | UBOOT_SRC ?= "git://github.com/nxp-imx/uboot-imx.git;protocol=https" 8 | SRCBRANCH = "lf_v2024.04" 9 | LOCALVERSION ?= "-${SRCBRANCH}" 10 | SRCREV = "e3219a5a73445219df605d1492687918d488055c" 11 | 12 | DEPENDS += " \ 13 | bc-native \ 14 | bison-native \ 15 | dtc-native \ 16 | flex-native \ 17 | gnutls-native \ 18 | xxd-native \ 19 | " 20 | 21 | B = "${WORKDIR}/build" 22 | 23 | inherit fsl-u-boot-localversion 24 | 25 | BOOT_TOOLS = "imx-boot-tools" 26 | -------------------------------------------------------------------------------- /recipes-kernel/linux-firmware/linux-firmware_%.bbappend: -------------------------------------------------------------------------------- 1 | # Support additional firmware for WiLink8 modules 2 | # TIInit_11.8.32.bts is required for bluetooth support but this particular 3 | # version is not available in the linux-firmware repository. 4 | # 5 | SRC_URI:append:imx6qdl-variscite-som = "\ 6 | https://git.ti.com/ti-bt/service-packs/blobs/raw/5f73abe7c03631bb2596af27e41a94abcc70b009/initscripts/TIInit_11.8.32.bts;name=TIInit_11.8.32 \ 7 | " 8 | SRC_URI[TIInit_11.8.32.sha256sum] = "26ab0608e39fab95a6a55070c2f8364c92aad34442e8349abda71cee4da3277a" 9 | 10 | do_install:append:imx6qdl-variscite-som() { 11 | cp ${UNPACKDIR}/TIInit_11.8.32.bts ${D}${nonarch_base_libdir}/firmware/ti-connectivity/ 12 | } 13 | 14 | PACKAGE_ARCH:imx6qdl-variscite-som = "${MACHINE_ARCH}" 15 | -------------------------------------------------------------------------------- /scripts/generate-license-file: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export LC_ALL=C 4 | 5 | # Create or clear the LICENSE file 6 | echo "# License Information" > LICENSE 7 | echo "" >> LICENSE 8 | echo "This file lists all licenses used by recipes in the meta-freescale-3rdparty layer." >> LICENSE 9 | echo "" >> LICENSE 10 | 11 | # Find all .bb and .inc files and extract license information 12 | find . -type f \( -name "*.bb" -o -name "*.inc" \) | sort | while read -r file; do 13 | # Extract the license line from each recipe file, if it exists 14 | license_line=$(grep -i "^LICENSE" "$file") 15 | if [ -n "$license_line" ]; then 16 | echo "$file: $license_line" >> LICENSE 17 | fi 18 | done 19 | 20 | echo "LICENSE file has been generated and updated with current recipe licenses." 21 | -------------------------------------------------------------------------------- /conf/machine/imx6dl-riotboard.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: RIoTboard 3 | #@SOC: i.MX6S 4 | #@DESCRIPTION: Machine configuration for i.MX6S RIoTboard. 5 | #@MAINTAINER: Nikolay Dimitrov 6 | 7 | include conf/machine/include/imx-base.inc 8 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 9 | 10 | MACHINEOVERRIDES =. "mx6dl:" 11 | 12 | UBOOT_MACHINE = "riotboard_defconfig" 13 | UBOOT_SUFFIX = "imx" 14 | UBOOT_MAKE_TARGET = "u-boot.imx" 15 | 16 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-fslc" 17 | KERNEL_DEVICETREE = "imx6dl-riotboard.dtb" 18 | 19 | SERIAL_CONSOLES = "115200;ttymxc1" 20 | 21 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 22 | kernel-image \ 23 | kernel-devicetree \ 24 | u-boot-fslc \ 25 | " 26 | 27 | WKS_FILES = "imx-uboot.wks" 28 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/broadcom-nvram-config.inc: -------------------------------------------------------------------------------- 1 | LICENSE = "Proprietary" 2 | LIC_FILES_CHKSUM = "file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc" 3 | 4 | SRC_URI = " \ 5 | file://LICENCE.broadcom_bcm43xx \ 6 | " 7 | 8 | S = "${UNPACKDIR}" 9 | BRCM_FWDIR = "${nonarch_base_libdir}/firmware/brcm" 10 | CHIP_MODEL ?= "Invalid" 11 | 12 | do_install() { 13 | install -d ${D}${BRCM_FWDIR} 14 | 15 | cp -r ${UNPACKDIR}/brcmfmac${CHIP_MODEL}-sdio.txt \ 16 | ${D}${BRCM_FWDIR} 17 | } 18 | 19 | SRC_URI += " \ 20 | file://brcmfmac${CHIP_MODEL}-sdio.txt \ 21 | " 22 | 23 | FILES:${PN} = " \ 24 | ${BRCM_FWDIR}/brcmfmac${CHIP_MODEL}-sdio.txt \ 25 | " 26 | 27 | RDEPENDS:${PN} = " \ 28 | linux-firmware-bcm${CHIP_MODEL} \ 29 | " 30 | 31 | PACKAGE_ARCH = "${MACHINE_ARCH}" 32 | -------------------------------------------------------------------------------- /recipes-kernel/kernel-module-mcc-toradex/kernel-module-mcc-toradex_1.06+toradex2.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2015 Toradex AG 2 | # Copyright (C) 2013 Timesys Corporation 3 | SUMMARY = "Multicore communication kernel module for linux-toradex kernel" 4 | LICENSE = "GPL-2.0-only" 5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=c8959abcbbe4d6676c58eab9354019e6" 6 | 7 | PROVIDES = "virtual/kernel-module-mcc" 8 | RPROVIDES:${PN} = "virtual/kernel-module-mcc" 9 | RPROVIDES:${PN}-dev = "virtual/kernel-module-mcc-dev" 10 | 11 | inherit module 12 | 13 | export DESTDIR = "${D}" 14 | 15 | SRC_URI = "git://github.com/toradex/mcc-kmod.git;protocol=https;branch=${SRCBRANCH}" 16 | 17 | SRCBRANCH = "master" 18 | SRCREV = "083388fa5cce79c239988d61543322d91996aa8d" 19 | 20 | S = "${WORKDIR}/git" 21 | 22 | COMPATIBLE_MACHINE = "(vf-generic-bsp)" 23 | -------------------------------------------------------------------------------- /recipes-core/net-persistent-mac/net-persistent-mac.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "Network device MAC persistency" 2 | DESCRIPTION = "Provides support to store/restore the MAC of a specific network device" 3 | SECTION = "base" 4 | LICENSE = "MIT" 5 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" 6 | 7 | inherit update-rc.d 8 | 9 | INITSCRIPT_NAME = "net-persistent-mac" 10 | INITSCRIPT_PARAMS = "start 39 S ." 11 | 12 | SRC_URI = "file://init \ 13 | file://default" 14 | 15 | do_install () { 16 | install -d ${D}${sysconfdir}/init.d 17 | install -m 0755 ${UNPACKDIR}/init ${D}${sysconfdir}/init.d/${PN} 18 | 19 | install -d ${D}${sysconfdir}/default 20 | install -m 0644 ${UNPACKDIR}/default ${D}${sysconfdir}/default/${PN} 21 | } 22 | 23 | PACKAGE_ARCH = "${MACHINE_ARCH}" 24 | -------------------------------------------------------------------------------- /conf/machine/include/imx233-olinuxino.inc: -------------------------------------------------------------------------------- 1 | # Common definitions to all iMX233-OlinuXino variants 2 | 3 | # Add a override for all iMX233-OLinuXino variants 4 | MACHINEOVERRIDES =. "mxs:mx23:imx233-olinuxino:" 5 | 6 | include conf/machine/include/imx-base.inc 7 | include conf/machine/include/arm/armv5/tune-arm926ejs.inc 8 | 9 | # This machine is not supported by u-boot-imx as it is not tested by NXP on this 10 | # board. So we force it to use u-boot-fslc which is based on mainline here. 11 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" 12 | 13 | UBOOT_MAKE_TARGET = "u-boot.sb" 14 | UBOOT_SUFFIX = "sb" 15 | 16 | IMXBOOTLETS_MACHINE = "stmp378x_dev" 17 | UBOOT_MACHINE = "mx23_olinuxino_config" 18 | 19 | KERNEL_IMAGETYPE = "uImage" 20 | KERNEL_DEVICETREE = "nxp/mxs/imx23-olinuxino.dtb" 21 | 22 | MACHINE_FEATURES = "usbgadget usbhost vfat" 23 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-script-qoriq/boot.cmd.in: -------------------------------------------------------------------------------- 1 | setenv kernel @KERNEL_IMAGETYPE@ 2 | setenv fdt_file @KERNEL_DEVICETREE@ 3 | setenv rootfs_mmc0 setenv rootfs /dev/mmcblk0p2 4 | setenv rootfs_mmc1 setenv rootfs /dev/mmcblk1p2 5 | setenv rootfs_nvme0 setenv rootfs /dev/nvme0n1p2 6 | setenv rootfs_scsi0 setenv rootfs /dev/sda2 7 | setenv rootfs_usb0 setenv rootfs /dev/sda2 8 | setenv rootfs_dhcp setenv rootfs /dev/root 9 | run rootfs_${target} 10 | setenv new_bootargs setenv bootargs console=ttyAMA0,115200 earlycon=pl011,mmio32,0x21c0000 root=${rootfs} default_hugepagesz=1024m hugepagesz=1024m hugepages=2 pci=pcie_bus_perf 11 | run new_bootargs 12 | ${bootfstype}load ${devtype} ${devnum}:1 ${kernel_addr_r} /${kernel}; ${bootfstype}load ${devtype} ${devnum}:1 ${fdt_addr_r} /${fdt_file}; @KERNEL_BOOTCMD@ ${kernel_addr_r} - ${fdt_addr_r} 13 | -------------------------------------------------------------------------------- /recipes-bsp/mqxboot/mqxboot/0001-Makefile-use-OE-ldflags.patch: -------------------------------------------------------------------------------- 1 | From 368ee177806f15194acf352c83f64ba697a613ac Mon Sep 17 00:00:00 2001 2 | From: Max Krummenacher 3 | Date: Thu, 23 Jun 2022 08:46:14 +0000 4 | Subject: [PATCH] Makefile: use OE ldflags 5 | 6 | Prevents QA error about missing GNU_HASH in the binary. 7 | 8 | Upstream-Status: Pending 9 | Signed-off-by: Max Krummenacher 10 | --- 11 | Makefile | 2 +- 12 | 1 file changed, 1 insertion(+), 1 deletion(-) 13 | 14 | diff --git a/Makefile b/Makefile 15 | index 37da46f..74cf280 100644 16 | --- a/Makefile 17 | +++ b/Makefile 18 | @@ -4,7 +4,7 @@ all: build/mqxboot 19 | 20 | build/mqxboot: src/mqxboot.c 21 | mkdir -p build/ 22 | - $(CC) $< -o $@ $(CFLAGS) 23 | + $(CC) $< -o $@ $(CFLAGS) $(LDFLAGS) 24 | 25 | install: 26 | mkdir -p $(INSTALL_PATH) 27 | -- 28 | 2.20.1 29 | 30 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-toradex_5.4-2.3.x.bb: -------------------------------------------------------------------------------- 1 | require recipes-kernel/linux/linux-imx.inc 2 | 3 | LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" 4 | 5 | DEPENDS += "lzop-native bc-native" 6 | 7 | SUMMARY = "Linux kernel for Toradex Freescale i.MX based modules" 8 | 9 | # The recipe by default uses KBUILD_DEFCONFIG from the machine 10 | # configuration. Set KBUILD_DEFCONFIG = "" and add a file 'defconfig' to 11 | # SRC_URI to inject your defconfig in a bbappend. 12 | SRC_URI = "git://git.toradex.com/linux-toradex.git;protocol=git;branch=${SRCBRANCH}" 13 | 14 | PV:append = "+git${SRCPV}" 15 | 16 | LINUX_VERSION = "5.4.129" 17 | 18 | SRCREV = "828ec42a6a32004a199f8ee4893fecdc0b15ae92" 19 | SRCBRANCH = "toradex_5.4-2.3.x-imx" 20 | 21 | # Deploy symbols to allow for device tree overlays 22 | EXTRA_OEMAKE += "DTC_FLAGS=-@ " 23 | 24 | COMPATIBLE_MACHINE = "(mx6-nxp-bsp|mx7-nxp-bsp|mx8-nxp-bsp)" 25 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-boundary_6.1.bb: -------------------------------------------------------------------------------- 1 | # Adapted from linux-imx.inc, copyright (C) 2013, 2014 O.S. Systems Software LTDA 2 | # Released under the MIT license (see COPYING.MIT for the terms) 3 | 4 | require recipes-kernel/linux/linux-imx.inc 5 | 6 | SUMMARY = "Linux kernel for Boundary Devices boards" 7 | 8 | LICENSE = "GPL-2.0-only" 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" 10 | 11 | LINUX_VERSION = "6.1.22" 12 | 13 | SRC_URI = "git://github.com/boundarydevices/linux.git;branch=${SRCBRANCH};protocol=https \ 14 | " 15 | 16 | LOCALVERSION = "+yocto" 17 | SRCBRANCH = "boundary-imx_6.1.y" 18 | SRCREV = "7c4b671ae8f297f32543f1c0fb2dd08ce3d1bd7b" 19 | DEPENDS += "lzop-native bc-native" 20 | COMPATIBLE_MACHINE = "(nitrogen6x|nitrogen6x-lite|nitrogen6sx|nitrogen7|nitrogen8m|nitrogen8mm|nitrogen8mn|nitrogen8mp)" 21 | 22 | KBUILD_DEFCONFIG ?= "boundary_defconfig" 23 | 24 | S = "${WORKDIR}/git" 25 | -------------------------------------------------------------------------------- /recipes-bsp/mqxboot/mqxboot_1.0.1.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013 Timesys Corporation 2 | SUMMARY = "MQX Image loader - starts an MQX image on the M4" 3 | LICENSE = "GPL-2.0-only | BSD" 4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=c49712341497d0b5f2e40c30dff2af9d \ 5 | file://BSD_LICENSE;md5=10695b8f86532e5e44640acf4d92a2ef" 6 | 7 | DEPENDS = "virtual/kernel-module-mcc" 8 | 9 | SRC_URI = " \ 10 | http://repository.timesys.com/buildsources/m/mqxboot/mqxboot-${PV}/mqxboot-${PV}.tar.bz2 \ 11 | file://0001-Makefile-use-OE-ldflags.patch \ 12 | " 13 | 14 | SRC_URI[sha256sum] = "32444409de5e809b9347e275a3bf78623a89e9ecce3188ebac79318b2b7c39b3" 15 | 16 | S = "${WORKDIR}/mqxboot-${PV}" 17 | 18 | CFLAGS += "-I${STAGING_KERNEL_DIR}/include" 19 | 20 | RDEPENDS:${PN} = "virtual/kernel-module-mcc" 21 | 22 | COMPATIBLE_MACHINE = "(vf-generic-bsp)" 23 | 24 | do_install() { 25 | oe_runmake 'DESTDIR=${D}' install 26 | } 27 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Notice, that the "Number of sectors" is not required on NOR and SPI-dataflash. 5 | # Futhermore, if the Flash sector size is ommitted, this value is assumed to 6 | # be the same as the Environment size, which is valid for NOR and SPI-dataflash 7 | 8 | # NOR example 9 | # MTD device name Device offset Env. size Flash sector size Number of sectors 10 | #/dev/mtd1 0x0000 0x4000 0x4000 11 | #/dev/mtd2 0x0000 0x4000 0x4000 12 | 13 | # MTD SPI-dataflash example 14 | # MTD device name Device offset Env. size Flash sector size Number of sectors 15 | #/dev/mtd5 0x4200 0x4200 16 | #/dev/mtd6 0x4200 0x4200 17 | 18 | # NAND example 19 | #/dev/mtd0 0x4000 0x4000 0x20000 2 20 | 21 | # Block device example 22 | #/dev/mmcblk0 0xc0000 0x20000 23 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/imx7s-warp/brcmfmac43430-sdio.txt: -------------------------------------------------------------------------------- 1 | # 2.4 GHz, 20 MHz BW mode 2 | manfid=0x2d0 3 | prodid=0x0726 4 | vendid=0x14e4 5 | devid=0x43e2 6 | boardtype=0x0726 7 | boardrev=0x1202 8 | boardnum=22 9 | macaddr=00:90:4c:c5:12:38 10 | sromrev=11 11 | boardflags=0x00404201 12 | boardflags3=0x08000000 13 | xtalfreq=37400 14 | nocrc=1 15 | ag0=0 16 | aa2g=1 17 | ccode=ALL 18 | #pa0itssit=0x20 19 | extpagain2g=0 20 | pa2ga0=-168,7161,-820 21 | AvVmid_c0=0x0,0xc8 22 | cckpwroffset0=5 23 | maxp2ga0=90 24 | #txpwrbckof=6 25 | cckbw202gpo=0 26 | legofdmbw202gpo=0x66111111 27 | mcsbw202gpo=0x77711111 28 | propbw202gpo=0xdd 29 | ofdmdigfilttype=18 30 | ofdmdigfilttypebe=18 31 | papdmode=1 32 | papdvalidtest=1 33 | pacalidx2g=48 34 | papdepsoffset=-22 35 | papdendidx=58 36 | il0macaddr=00:90:4c:c5:12:38 37 | wl0id=0x431b 38 | #muxenab=0x10 39 | #BT COEX deferral limit setting 40 | #btc_params 8 45000 41 | #btc_params 10 20000 42 | #spurconfig=0x3 43 | -------------------------------------------------------------------------------- /recipes-bsp/libmcc/libmcc/0001-Makefile-use-oe-ldflags.patch: -------------------------------------------------------------------------------- 1 | From ba86203da14d21c9c48dcf02595d71901875a263 Mon Sep 17 00:00:00 2001 2 | From: Max Krummenacher 3 | Date: Thu, 23 Jun 2022 08:31:46 +0000 4 | Subject: [PATCH] Makefile: use oe ldflags 5 | 6 | Prevents QA error about missing GNU_HASH in the binary. 7 | 8 | Upstream-Status: Pending 9 | Signed-off-by: Max Krummenacher 10 | --- 11 | Makefile | 2 +- 12 | 1 file changed, 1 insertion(+), 1 deletion(-) 13 | 14 | diff --git a/Makefile b/Makefile 15 | index 4482baf..34afbd4 100644 16 | --- a/Makefile 17 | +++ b/Makefile 18 | @@ -8,7 +8,7 @@ build/libmcc.a: build/libmcc.o 19 | $(AR) rcs $@ $< 20 | 21 | build/libmcc.so.1.0: build/libmcc.o 22 | - $(CC) -shared -Wl,-soname,libmcc.so.1 -o $@ $< -lc 23 | + $(CC) $(LDFLAGS) -shared -Wl,-soname,libmcc.so.1 -o $@ $< -lc 24 | 25 | install: 26 | mkdir -p $(DESTDIR)/usr/include $(DESTDIR)/usr/lib 27 | -- 28 | 2.20.1 29 | 30 | -------------------------------------------------------------------------------- /.github/workflows/backport.yaml: -------------------------------------------------------------------------------- 1 | name: Backport labeled merged pull requests 2 | on: 3 | pull_request_target: 4 | types: [closed] 5 | jobs: 6 | build: 7 | name: Create backport PRs 8 | runs-on: ubuntu-latest 9 | # Only run when pull request is merged 10 | # or when a comment containing `/backport` is created 11 | if: github.event.pull_request.merged 12 | steps: 13 | - uses: actions/checkout@v2 14 | with: 15 | # Required to find all branches 16 | fetch-depth: 0 17 | - name: Create backport PRs 18 | # Should be kept in sync with `version` 19 | uses: zeebe-io/backport-action@v0.0.4 20 | with: 21 | # Required 22 | # Version of the backport-action 23 | # Must equal the version in `uses` 24 | # Recommended: latest tag or `master` 25 | version: v0.0.4 26 | 27 | github_token: ${{ secrets.GITHUB_TOKEN }} 28 | github_workspace: ${{ github.workspace }} 29 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/mx6-generic-bsp/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Device offset must be prefixed with 0x to be parsed as a hexadecimal value. 5 | # On a block device a negative offset is treated as a backwards offset from the 6 | # end of the device/partition, rather than a forwards offset from the start. 7 | 8 | # Colibri iMX6/Apalis iMX6 9 | # U-Boot environment is stored at the end of the first eMMC boot partition 10 | # hence use a negative value. The environment is just in front of the config 11 | # block which occupies the last sector (hence -0x200) 12 | # Note that /dev/mmcblk0boot0 by default is read only 13 | # To use fw_setenv you have to first make it writeable, on the cmdline e.g. by 14 | # $ echo 0 > /sys/block/mmcblk0boot0/force_ro 15 | 16 | # Block device name Device offset Env. size 17 | /dev/mmcblk0boot0 -0x2200 0x2000 18 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq/0001-Remove-redundant-YYLOC-global-declaration.patch: -------------------------------------------------------------------------------- 1 | From 018921ee79d3f30893614b3b2b63b588d8544f73 Mon Sep 17 00:00:00 2001 2 | From: Peter Robinson 3 | Date: Thu, 30 Jan 2020 09:37:15 +0000 4 | Subject: [PATCH] Remove redundant YYLOC global declaration 5 | 6 | Same as the upstream fix for building dtc with gcc 10. 7 | 8 | Upstream-Status: Backport 9 | 10 | Signed-off-by: Peter Robinson 11 | --- 12 | scripts/dtc/dtc-lexer.l | 1 - 13 | 1 file changed, 1 deletion(-) 14 | 15 | diff --git a/scripts/dtc/dtc-lexer.l b/scripts/dtc/dtc-lexer.l 16 | index fd825ebba69c..24af54997758 100644 17 | --- a/scripts/dtc/dtc-lexer.l 18 | +++ b/scripts/dtc/dtc-lexer.l 19 | @@ -38,7 +38,6 @@ LINECOMMENT "//".*\n 20 | #include "srcpos.h" 21 | #include "dtc-parser.tab.h" 22 | 23 | -YYLTYPE yylloc; 24 | extern bool treesource_error; 25 | 26 | /* CAUTION: this will stop working if we ever use yyless() or yyunput() */ 27 | -- 28 | 2.26.2 29 | 30 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex/colibri-imx7-emmc/fw_env.config: -------------------------------------------------------------------------------- 1 | # Configuration file for fw_(printenv/setenv) utility. 2 | # Up to two entries are valid, in this case the redundant 3 | # environment sector is assumed present. 4 | # Device offset must be prefixed with 0x to be parsed as a hexadecimal value. 5 | # On a block device a negative offset is treated as a backwards offset from the 6 | # end of the device/partition, rather than a forwards offset from the start. 7 | 8 | # Colibri iMX7 Dual 1GB (eMMC) 9 | # U-Boot environment is stored at the end of the first eMMC boot partition 10 | # hence use a negative value. The environment is just in front of the config 11 | # block which occupies the last sector (hence -0x200) 12 | # Note that /dev/mmcblk0boot0 by default is read only 13 | # To use fw_setenv you have to first make it writeable, on the cmdline e.g. by 14 | # $ echo 0 > /sys/block/mmcblk0boot0/force_ro 15 | 16 | # Block device name Device offset Env. size 17 | /dev/mmcblk0boot0 -0x2200 0x2000 18 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq/0001-binman-Move-to-use-Python-3.patch: -------------------------------------------------------------------------------- 1 | From 388560134b99dc4cc752627d3a7e9f8c8c2a89a7 Mon Sep 17 00:00:00 2001 2 | From: Simon Glass 3 | Date: Thu, 31 Oct 2019 07:43:05 -0600 4 | Subject: [PATCH] binman: Move to use Python 3 5 | 6 | Update this tool to use Python 3 to meet the 2020 deadline. 7 | 8 | Unfortunately this introduces a test failure due to a problem in pylibfdt 9 | on Python 3. I will investigate. 10 | 11 | Upstream-Status: Backport 12 | 13 | Signed-off-by: Simon Glass 14 | --- 15 | tools/binman/binman.py | 2 +- 16 | 1 file changed, 1 insertion(+), 1 deletion(-) 17 | 18 | diff --git a/tools/binman/binman.py b/tools/binman/binman.py 19 | index 8bd5868df2..9e6fd72117 100755 20 | --- a/tools/binman/binman.py 21 | +++ b/tools/binman/binman.py 22 | @@ -1,4 +1,4 @@ 23 | -#!/usr/bin/env python2 24 | +#!/usr/bin/env python3 25 | # SPDX-License-Identifier: GPL-2.0+ 26 | 27 | # Copyright (c) 2016 Google, Inc 28 | -- 29 | 2.24.0 30 | 31 | -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/init-ifupdown/ccimx6ulsbcexpress/interfaces: -------------------------------------------------------------------------------- 1 | # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) 2 | 3 | # The loopback interface 4 | auto lo 5 | iface lo inet loopback 6 | 7 | # Wireless interfaces 8 | 9 | # Client infrastructure mode 10 | auto wlan0 11 | iface wlan0 inet static 12 | address 192.168.8.2 13 | netmask 255.255.255.0 14 | network 192.168.8.0 15 | wireless_mode managed 16 | wireless_essid any 17 | wpa-driver nl80211 18 | wpa-conf /etc/wpa_supplicant.conf 19 | 20 | # SoftAP mode 21 | auto wlan1 22 | iface wlan1 inet static 23 | address 192.168.9.2 24 | netmask 255.255.255.0 25 | network 192.168.9.0 26 | post-up /etc/init.d/hostapd start 27 | pre-down /etc/init.d/hostapd stop 28 | 29 | # Wired interfaces 30 | auto eth0 31 | iface eth0 inet dhcp 32 | 33 | # Ethernet/RNDIS gadget (g_ether) 34 | # ... or on host side, usbnet and random hwaddr 35 | iface usb0 inet static 36 | address 192.168.7.2 37 | netmask 255.255.255.0 38 | network 192.168.7.0 39 | gateway 192.168.7.1 40 | -------------------------------------------------------------------------------- /recipes-core/init-ifupdown/init-ifupdown/ccimx6ulsbcpro/interfaces: -------------------------------------------------------------------------------- 1 | # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) 2 | 3 | # The loopback interface 4 | auto lo 5 | iface lo inet loopback 6 | 7 | # Wireless interfaces 8 | 9 | # Client infrastructure mode 10 | auto wlan0 11 | iface wlan0 inet static 12 | address 192.168.8.2 13 | netmask 255.255.255.0 14 | network 192.168.8.0 15 | wireless_mode managed 16 | wireless_essid any 17 | wpa-driver nl80211 18 | wpa-conf /etc/wpa_supplicant.conf 19 | 20 | # SoftAP mode 21 | auto wlan1 22 | iface wlan1 inet static 23 | address 192.168.9.2 24 | netmask 255.255.255.0 25 | network 192.168.9.0 26 | post-up /etc/init.d/hostapd start 27 | pre-down /etc/init.d/hostapd stop 28 | 29 | # Wired interfaces 30 | auto eth1 31 | iface eth0 inet dhcp 32 | iface eth1 inet dhcp 33 | 34 | # Ethernet/RNDIS gadget (g_ether) 35 | # ... or on host side, usbnet and random hwaddr 36 | iface usb0 inet static 37 | address 192.168.7.2 38 | netmask 255.255.255.0 39 | network 192.168.7.0 40 | gateway 192.168.7.1 41 | -------------------------------------------------------------------------------- /.github/workflows/update-license-file.yml: -------------------------------------------------------------------------------- 1 | name: Update LICENSE file 2 | 3 | on: 4 | push: 5 | paths: 6 | - "**/*.bb" 7 | - "**/*.inc" 8 | schedule: 9 | - cron: "0 0 * * *" # Runs daily at midnight 10 | workflow_dispatch: # Allows manual run 11 | 12 | jobs: 13 | update-license: 14 | runs-on: ubuntu-latest 15 | 16 | steps: 17 | - name: Checkout repository 18 | uses: actions/checkout@v3 19 | 20 | - name: Run license generation script 21 | run: | 22 | ./scripts/generate-license-file 23 | 24 | - name: Commit and push LICENSE file 25 | run: | 26 | git config --local user.name "github-actions[bot]" 27 | git config --local user.email "github-actions[bot]@users.noreply.github.com" 28 | git add LICENSE 29 | if ! git diff-index --quiet HEAD; then 30 | git commit -m "Auto-update LICENSE file with current recipe licenses" 31 | git push 32 | fi 33 | 34 | env: 35 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 36 | -------------------------------------------------------------------------------- /recipes-bsp/libmcc/libmcc/build-Fix-symlink-generation.patch: -------------------------------------------------------------------------------- 1 | From adef7a71a3bd40650685183c8a023000423ec880 Mon Sep 17 00:00:00 2001 2 | From: Otavio Salvador 3 | Date: Tue, 6 Jan 2015 12:03:27 -0200 4 | Subject: [PATCH] build: Fix symlink generation 5 | Organization: O.S. Systems Software LTDA. 6 | 7 | Upstream-Status: Pending 8 | 9 | Signed-off-by: Otavio Salvador 10 | --- 11 | Makefile | 5 ++--- 12 | 1 file changed, 2 insertions(+), 3 deletions(-) 13 | 14 | diff --git a/Makefile b/Makefile 15 | index ac46f5c..248b2eb 100644 16 | --- a/Makefile 17 | +++ b/Makefile 18 | @@ -14,9 +14,8 @@ install: 19 | mkdir -p $(DESTDIR)/usr/include $(DESTDIR)/usr/lib 20 | cp -f build/libmcc.so.* build/libmcc.a $(DESTDIR)/usr/lib 21 | cp -f include/*.h $(DESTDIR)/usr/include 22 | - cd $(DESTDIR)/usr/lib/ 23 | - ln -sf libmcc.so.1.0 libmcc.so.1 24 | - ln -sf libmcc.so.1 libmcc.so 25 | + ln -sf libmcc.so.1.0 $(DESTDIR)/usr/lib/libmcc.so.1 26 | + ln -sf libmcc.so.1 $(DESTDIR)/usr/lib/libmcc.so 27 | 28 | clean: 29 | rm -rf build 30 | -- 31 | 2.1.4 32 | 33 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-kontron_5.10.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2012-2020 O.S. Systems Software LTDA. 2 | # Released under the MIT license (see COPYING.MIT for the terms) 3 | # 4 | # SPDX-License-Identifier: MIT 5 | # 6 | 7 | require recipes-kernel/linux/linux-imx.inc 8 | 9 | SUMMARY = "Kontron Linux mainline based kernel with backported features and fixes" 10 | LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46" 11 | 12 | DEPENDS += "lzop-native bc-native" 13 | 14 | SRC_URI = "git://git.kontron-electronics.de/linux/linux.git;protocol=https;branch=${SRCBRANCH} \ 15 | file://defconfig" 16 | LOCALVERSION = "-ktn" 17 | 18 | 19 | # PV is defined in the base in linux-imx.inc file and uses the LINUX_VERSION definition 20 | # required by kernel-yocto.bbclass. 21 | # 22 | # LINUX_VERSION define should match to the kernel version referenced by SRC_URI and 23 | # should be updated once patchlevel is merged. 24 | LINUX_VERSION = "5.10.95" 25 | 26 | SRCBRANCH = "v5.10-ktn" 27 | SRCREV = "546dec2e2d46f9050f6b5484d909e9d7a1f14747" 28 | 29 | COMPATIBLE_MACHINE = "(imx6ul-kontron)" 30 | -------------------------------------------------------------------------------- /recipes-bsp/libmcc/libmcc_1.05.1.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013 Timesys Corporation 2 | SUMMARY = "Multicore communication Library" 3 | LICENSE = "GPL-2.0-only | BSD" 4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=c49712341497d0b5f2e40c30dff2af9d \ 5 | file://BSD_LICENSE;md5=10695b8f86532e5e44640acf4d92a2ef" 6 | 7 | DEPENDS = "virtual/kernel-module-mcc" 8 | 9 | SRC_URI = "http://repository.timesys.com/buildsources/l/libmcc/libmcc-${PV}/libmcc-${PV}.tar.bz2 \ 10 | file://build-Fix-symlink-generation.patch \ 11 | file://build-with-versioned-soname.patch \ 12 | file://0001-Makefile-use-oe-ldflags.patch \ 13 | " 14 | 15 | SRC_URI[sha256sum] = "5d6d85f2f17ba1016c24e3a1c1c934a9267021edaed67b63879112151f48562c" 16 | 17 | S = "${WORKDIR}/libmcc-${PV}" 18 | 19 | CFLAGS += "-I${STAGING_KERNEL_DIR}/include" 20 | 21 | RDEPENDS:${PN} = "virtual/kernel-module-mcc" 22 | 23 | COMPATIBLE_MACHINE = "(vf-generic-bsp)" 24 | 25 | do_install() { 26 | oe_runmake 'DESTDIR=${D}' install 27 | } 28 | 29 | RDEPENDS:${PN}-dev += "virtual/kernel-module-mcc-dev" 30 | PACKAGE_ARCH = "${MACHINE_ARCH}" 31 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw-lx2160acex7/0006-lx2160a-add-SVR-check-for-a050234-to-apply-only-on-r.patch: -------------------------------------------------------------------------------- 1 | From 2ebdb6a46e6db66cc0b09c51260a90ea8abc4713 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 23 Mar 2020 12:35:04 +0200 4 | Subject: [PATCH 6/8] lx2160a: add SVR check for a050234 to apply only on rev1 5 | 6 | Upstream-Status: Inappropriate [Solid-Run BSP] 7 | 8 | Signed-off-by: Rabeeh Khoury 9 | --- 10 | lx2160asi/a050234.rcw | 6 ++++++ 11 | 1 file changed, 6 insertions(+) 12 | 13 | diff --git a/lx2160asi/a050234.rcw b/lx2160asi/a050234.rcw 14 | index 72a40e4..2130709 100644 15 | --- a/lx2160asi/a050234.rcw 16 | +++ b/lx2160asi/a050234.rcw 17 | @@ -4,6 +4,12 @@ 18 | */ 19 | 20 | .pbi 21 | +/* Load condition SVR register mask major ID */ 22 | +loadc 0x01e000a4,0x000000f0 23 | +/* If it is rev 1, skip the following jump command */ 24 | +jumpc 0x00000014,0x00000010 25 | +/* Skip the following instructions by jumping to the end */ 26 | +jump 0xc8 27 | write 0x1ea1200,0x20081004 28 | write 0x1ea1240,0x20081004 29 | write 0x1ea1280,0x20081004 30 | -- 31 | 2.17.1 32 | 33 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq/0001-Makfefile-linux-5.4-add-warning-cflags-on-LSDK-20.04.patch: -------------------------------------------------------------------------------- 1 | From 6cf92b25d63ff9e2b77ce0fbf62f4d5d040ef5db Mon Sep 17 00:00:00 2001 2 | From: Chunrong Guo 3 | Date: Tue, 12 Mar 2019 03:52:03 +0100 4 | Subject: [PATCH] Makfefile: linux-5.4 add warning cflags on LSDK-20.04 5 | 6 | Upstream-Status: Inappropriate [OE-specific] 7 | Signed-off-by: C.r. Guo 8 | --- 9 | Makefile | 2 +- 10 | 1 file changed, 1 insertion(+), 1 deletion(-) 11 | 12 | diff --git a/Makefile b/Makefile 13 | index 07998b60d56c..7ec8fcb73e17 100644 14 | --- a/Makefile 15 | +++ b/Makefile 16 | @@ -458,7 +458,7 @@ KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE 17 | KBUILD_CFLAGS := -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs \ 18 | -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE \ 19 | -Werror=implicit-function-declaration -Werror=implicit-int \ 20 | - -Wno-format-security \ 21 | + -Wno-address-of-packed-member -Wno-format-security \ 22 | -std=gnu89 23 | KBUILD_CPPFLAGS := -D__KERNEL__ 24 | KBUILD_AFLAGS_KERNEL := 25 | -- 26 | 2.17.1 27 | 28 | -------------------------------------------------------------------------------- /conf/machine/nitrogen7.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen7 3 | #@SOC: i.MX7D 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen7 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx7:mx7d:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | require conf/machine/include/imx-base.inc 12 | require conf/machine/include/arm/armv7a/tune-cortexa7.inc 13 | 14 | KERNEL_DEVICETREE = "imx7d-nitrogen7.dtb" 15 | KERNEL_IMAGETYPE = "zImage" 16 | 17 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 18 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 19 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 20 | PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp ??= "linux-fslc" 21 | 22 | # wic support 23 | WKS_FILE = "sdimage-bootpart.wks" 24 | IMAGE_BOOT_FILES:append = " \ 25 | boot.scr-${MACHINE};boot.scr \ 26 | " 27 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 28 | 29 | UBOOT_MACHINE ?= "nitrogen7_defconfig" 30 | 31 | SERIAL_CONSOLES = "115200;ttymxc0" 32 | 33 | MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-wl12xx" 34 | MACHINE_FEATURES += " pci wifi bluetooth" 35 | -------------------------------------------------------------------------------- /conf/machine/nitrogen6sx.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen6SX 3 | #@SOC: i.MX6SX 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen6SX 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx6sx:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | include conf/machine/include/imx-base.inc 12 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 13 | 14 | KERNEL_DEVICETREE = "imx6sx-nitrogen6sx.dtb" 15 | KERNEL_IMAGETYPE = "zImage" 16 | 17 | IMX_DEFAULT_BOOTLOADER = "u-boot-boundary" 18 | UBOOT_SUFFIX = "imx" 19 | UBOOT_BINARY = "u-boot.${UBOOT_SUFFIX}" 20 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 21 | PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp ??= "linux-fslc" 22 | 23 | # wic support 24 | WKS_FILE = "sdimage-bootpart.wks" 25 | IMAGE_BOOT_FILES:append = " \ 26 | boot.scr-${MACHINE};boot.scr \ 27 | " 28 | WKS_FILE_DEPENDS += " u-boot-script-boundary" 29 | 30 | UBOOT_MACHINE ?= "nitrogen6sx_defconfig" 31 | 32 | SERIAL_CONSOLES = "115200;ttymxc0" 33 | 34 | MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-wl12xx" 35 | MACHINE_FEATURES += " pci wifi bluetooth" 36 | -------------------------------------------------------------------------------- /conf/machine/nitrogen6x-lite.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen6X Lite 3 | #@SOC: i.MX6S 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen6X Lite 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx6dl:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | include conf/machine/include/imx-base.inc 12 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 13 | 14 | KERNEL_DEVICETREE = "imx6dl-nit6xlite.dtb" 15 | KERNEL_IMAGETYPE = "zImage" 16 | 17 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 18 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 19 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 20 | PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp ??= "linux-fslc" 21 | 22 | # wic support 23 | WKS_FILE = "sdimage-bootpart.wks" 24 | IMAGE_BOOT_FILES:append = " \ 25 | boot.scr-${MACHINE};boot.scr \ 26 | " 27 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 28 | 29 | UBOOT_MACHINE ?= "nit6xlite_defconfig" 30 | 31 | SERIAL_CONSOLES = "115200;ttymxc1" 32 | 33 | MACHINE_EXTRA_RRECOMMENDS += " bcm4330-nvram-config" 34 | MACHINE_FEATURES += " pci wifi bluetooth" 35 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw-lx2160acex7/0002-Set-io-pads-as-GPIO.patch: -------------------------------------------------------------------------------- 1 | From b184697cff85d8f98e765014309b97444ff1c5b7 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Wed, 30 Oct 2019 11:43:37 +0200 4 | Subject: [PATCH 2/2] Set io pads as GPIO 5 | 6 | Upstream-Status: Inappropriate [Solid-Run BSP] 7 | 8 | Signed-off-by: Rabeeh Khoury 9 | --- 10 | lx2160acex7/configs/lx2160a_defaults.rcwi | 9 +++++++-- 11 | 1 file changed, 7 insertions(+), 2 deletions(-) 12 | 13 | diff --git a/lx2160acex7/configs/lx2160a_defaults.rcwi b/lx2160acex7/configs/lx2160a_defaults.rcwi 14 | index 6fd65ec..dbc843f 100644 15 | --- a/lx2160acex7/configs/lx2160a_defaults.rcwi 16 | +++ b/lx2160acex7/configs/lx2160a_defaults.rcwi 17 | @@ -9,11 +9,16 @@ HWA_CGA_M1_CLK_SEL=1 18 | HWA_CGB_M1_CLK_SEL=7 19 | BOOT_LOC=26 20 | SYSCLK_FREQ=600 21 | -IIC2_PMUX=6 22 | +IIC2_PMUX=1 23 | IIC3_PMUX=0 24 | IIC4_PMUX=2 25 | USB3_CLK_FSEL=39 26 | SRDS_DIV_PEX_S1=1 27 | SRDS_DIV_PEX_S2=3 28 | SRDS_DIV_PEX_S3=1 29 | - 30 | +SDHC1_DIR_PMUX=1 31 | +IRQ03_00_PMUX=1 32 | +IRQ07_04_PMUX=1 33 | +IRQ11_08_PMUX=1 34 | +EVT20_PMUX=1 35 | +EVT43_PMUX=1 36 | -- 37 | 2.17.1 38 | 39 | -------------------------------------------------------------------------------- /recipes-core/net-persistent-mac/net-persistent-mac/init: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | ### BEGIN INIT INFO 4 | # Provides: net-persistent-mac 5 | # Required-Start: $local_fs 6 | # Required-Stop: 7 | # Default-Start: S 8 | # Default-Stop: 9 | # X-Start-Before: networking 10 | # Short-Description: restore MAC during boot process 11 | ### END INIT INFO 12 | 13 | set -e 14 | 15 | [ -f /etc/default/net-persistent-mac ] && . /etc/default/net-persistent-mac 16 | 17 | MAC_DIR="/var/lib/net-persistent-mac" 18 | 19 | for if in $INTERFACES; do 20 | mkdir -p "$MAC_DIR" 21 | IF_FILE="$MAC_DIR/$if.mac" 22 | IF_MAC="/sys/class/net/$if/address" 23 | 24 | # Store MAC for reuse 25 | if [ ! -r "$IF_FILE" ]; then 26 | if [ -e "$IF_MAC" ]; then 27 | echo "Storing MAC for $if for future use." > /dev/stderr 28 | cat "$IF_MAC" > "$IF_FILE" 29 | else 30 | echo "Failed to read MAC for $if; skiping device." 31 | fi 32 | fi 33 | 34 | if [ -r "$IF_FILE" ]; then 35 | # Restore MAC setting 36 | WANTED_MAC=`cat $IF_FILE` 37 | if [ "$WANTED_MAC" != "`cat $IF_MAC`" ]; then 38 | echo "Setting MAC of $if to $WANTED_MAC." 39 | ifconfig $if hw ether "$WANTED_MAC" 40 | fi 41 | fi 42 | done 43 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0001-arm64-dts-lx2160a-add-lx2160acex7-device-tree-build.patch: -------------------------------------------------------------------------------- 1 | From 9adba7be66753c3d8edce52c2d0afb0d6328ec03 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Thu, 7 Jan 2021 17:03:59 +0200 4 | Subject: [PATCH] arm64: dts: lx2160a: add lx2160acex7 device tree build 5 | 6 | Upstream-Status: Pending 7 | Signed-off-by: Rabeeh Khoury 8 | --- 9 | arch/arm64/boot/dts/freescale/Makefile | 1 + 10 | 1 file changed, 1 insertion(+) 11 | 12 | diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile 13 | index c3880d663..4aed43ff4 100644 14 | --- a/arch/arm64/boot/dts/freescale/Makefile 15 | +++ b/arch/arm64/boot/dts/freescale/Makefile 16 | @@ -49,6 +49,7 @@ dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls2088a-rdb.dtb 17 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-qds.dtb 18 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-rdb.dtb 19 | dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2162a-qds.dtb 20 | +dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-lx2160a-cex7.dtb 21 | 22 | dtb-$(CONFIG_ARCH_MXC) += imx8mm-evk.dtb imx8mm-evk-rpmsg.dtb imx8mm-evk-rm67191.dtb \ 23 | imx8mm-ddr4-evk.dtb imx8mm-evk-root.dtb imx8mm-evk-inmate.dtb \ 24 | -- 25 | 2.25.1 26 | 27 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw_git.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:append:lx2160acex7 := "${THISDIR}/${PN}-lx2160acex7:" 2 | 3 | SRC_URI:append:lx2160acex7 = "\ 4 | file://0001-lx2160acex7-misc-RCW-files.patch \ 5 | file://0002-Set-io-pads-as-GPIO.patch \ 6 | file://0003-S2-enable-gen3-xspi-increase-divisor-to-28.patch \ 7 | file://0004-refactor-a009531-a008851-and-a011270.patch \ 8 | file://0006-lx2160a-add-SVR-check-for-a050234-to-apply-only-on-r.patch \ 9 | file://0007-lx2160acex7-pcie-workarounds-and-fan-full-speed.patch \ 10 | file://0008-lx2160a-add-generic-bootloc-section.patch \ 11 | file://0009-lx2160acex7-remove-all-predefined-RCW-files.patch \ 12 | " 13 | 14 | do_configure:prepend:lx2160acex7 () { 15 | for BT in ${BOARD_TARGETS} 16 | do 17 | mkdir -p ${S}/${BOARD_TARGETS}/${SERDES} 18 | cat <${S}/${BOARD_TARGETS}/README 19 | The RCW directories for lx2160acex7 are created based on existing SERDES 20 | configuration. Currently created automatically - later maybe by building 21 | cross product of serdes & ddr speeds in a final commit. 22 | EOF 23 | cat <${S}/${BOARD_TARGETS}/${SERDES}/${SPEED}.rcw 24 | #include 25 | #include 26 | #include 27 | EOF 28 | done 29 | } 30 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-kontron_2020.01.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2012-2019 O.S. Systems Software LTDA. 2 | # Released under the MIT license (see COPYING.MIT for the terms) 3 | 4 | inherit fsl-u-boot-localversion 5 | 6 | require recipes-bsp/u-boot/u-boot.inc 7 | 8 | SUMMARY = "U-Boot for Kontron based boards" 9 | DEPENDS += "bison-native bc-native dtc-native lzop-native" 10 | 11 | LICENSE = "GPL-2.0-or-later" 12 | LIC_FILES_CHKSUM = "file://Licenses/README;md5=30503fd321432fc713238f582193b78e" 13 | 14 | SRC_URI = "git://git.kontron-electronics.de/linux/u-boot.git;protocol=https;branch=${SRCBRANCH} \ 15 | file://fw_env.config \ 16 | " 17 | SRCREV = "3d58441adf3e633279db6c96acb33a7aef4fd6f9" 18 | SRCBRANCH = "v2020.01-ktn" 19 | LOCALVERSION = "-ktn" 20 | 21 | PROVIDES += "u-boot" 22 | 23 | PV .= "+git${SRCPV}" 24 | 25 | S = "${WORKDIR}/git" 26 | B = "${WORKDIR}/build" 27 | 28 | # FIXME: Allow linking of 'tools' binaries with native libraries 29 | # used for generating the boot logo and other tools used 30 | # during the build process. 31 | EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CPPFLAGS}" \ 32 | HOSTLDFLAGS="${BUILD_LDFLAGS}" \ 33 | HOSTSTRIP=true' 34 | 35 | PACKAGE_ARCH = "${MACHINE_ARCH}" 36 | COMPATIBLE_MACHINE = "(imx6ul-kontron)" 37 | 38 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | OpenEmbedded/Yocto BSP layer for Freescale's ARM based platforms 2 | ================================================================ 3 | 4 | This layer provides support for Freescale's ARM based platforms for 5 | use with OpenEmbedded and/or Yocto Freescale's BSP layer. 6 | 7 | This layer depends on: 8 | 9 | URI: git://git.openembedded.org/openembedded-core 10 | branch: master 11 | revision: HEAD 12 | 13 | URI: git://git.yoctoproject.org/meta-freescale 14 | branch: master 15 | revision: HEAD 16 | 17 | Contributing 18 | ------------ 19 | 20 | Please submit any patches against the `meta-freescale-3rdparty` layer by 21 | using the GitHub pull-request feature. Fork the repo, make a branch, 22 | do the work, rebase from upstream, create the pull request. 23 | 24 | For some useful guidelines to be followed when submitting patches, 25 | please refer to: 26 | http://openembedded.org/wiki/Commit_Patch_Message_Guidelines 27 | 28 | Pull requests will be discussed within the GitHub pull-request 29 | infrastructure. If you want to get informed on new PRs and the 30 | follow-up discussions please use GitHub's notification system. 31 | 32 | Mailing list: 33 | 34 | https://lists.yoctoproject.org/g/meta-freescale 35 | 36 | Source code: 37 | 38 | https://github.com/Freescale/meta-freescale-3rdparty 39 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0009-lx2160a-dwc3-dts-disable-usb3-parkmode.patch: -------------------------------------------------------------------------------- 1 | From 704c3a0a194839782f5faad9a0b9151503b602fd Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 18 Jan 2021 09:32:57 +0200 4 | Subject: [PATCH] lx2160a: dwc3: dts: disable usb3 parkmode 5 | 6 | Upstream-Status: Pending 7 | Signed-off-by: Rabeeh Khoury 8 | --- 9 | arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi | 2 ++ 10 | 1 file changed, 2 insertions(+) 11 | 12 | diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi 13 | index 2fe86aca3..709a1a95a 100644 14 | --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi 15 | +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi 16 | @@ -994,6 +994,7 @@ 17 | snps,dis_rxdet_inp3_quirk; 18 | snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 19 | snps,host-vbus-glitches; 20 | + snps,parkmode-disable-ss-quirk; 21 | dma-coherent; 22 | status = "disabled"; 23 | }; 24 | @@ -1009,6 +1010,7 @@ 25 | snps,dis_rxdet_inp3_quirk; 26 | snps,incr-burst-type-adjustment = <1>, <4>, <8>, <16>; 27 | snps,host-vbus-glitches; 28 | + snps,parkmode-disable-ss-quirk; 29 | dma-coherent; 30 | status = "disabled"; 31 | }; 32 | -- 33 | 2.25.1 34 | 35 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0005-arm64-dts-lx2160a-cex7-add-ltc3882-support.patch: -------------------------------------------------------------------------------- 1 | From cca2439ac83136b9ed85f8519931018d4f5385e6 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Sun, 12 Jan 2020 14:24:47 +0200 4 | Subject: [PATCH] arm64: dts: lx2160a-cex7: add ltc3882 support 5 | 6 | ltc3882 is lx2 cortex-a72 core voltage. 7 | this patch adds it to the device tree support; the driver is in 8 | drivers/hwmon/pmbus/ltc2978.c 9 | 10 | Upstream-Status: Pending 11 | Signed-off-by: Rabeeh Khoury 12 | --- 13 | arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts | 9 +++++++++ 14 | 1 file changed, 9 insertions(+) 15 | 16 | diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 17 | index 872fcf9e724d..1c1a0d47897d 100644 18 | --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 19 | +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 20 | @@ -94,6 +94,15 @@ I2C switch - 21 | #cooling-cells = <2>; 22 | }; 23 | }; 24 | + i2c@2 { 25 | + #address-cells = <1>; 26 | + #size-cells = <0>; 27 | + reg = <0x2>; 28 | + ltc3882@5c { 29 | + compatible = "ltc3882"; 30 | + reg = <0x5c>; 31 | + }; 32 | + }; 33 | i2c@3 { 34 | #address-cells = <1>; 35 | #size-cells = <0>; 36 | -- 37 | 2.17.1 38 | 39 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0011-aarm64-dts-lx2160a-cex7-add-secondary-spi-flash-supp.patch: -------------------------------------------------------------------------------- 1 | From 08ff0cc811d9e4616aad53b39e528544b0979fd7 Mon Sep 17 00:00:00 2001 2 | From: yazan shhady 3 | Date: Sun, 22 Nov 2020 14:44:32 +0200 4 | Subject: [PATCH] aarm64: dts: lx2160a-cex7: add secondary spi flash support 5 | 6 | Upstream-Status: Pending 7 | Signed-off-by: yazan shhady 8 | --- 9 | arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts | 10 ++++++++++ 10 | 1 file changed, 10 insertions(+) 11 | 12 | diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 13 | index 2b8f1118b37a..6f031412400a 100644 14 | --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 15 | +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 16 | @@ -165,6 +165,16 @@ I2C switch - 17 | spi-rx-bus-width = <8>; 18 | spi-tx-bus-width = <1>; 19 | }; 20 | + flash1: w25q32@1 { 21 | + #address-cells = <1>; 22 | + #size-cells = <1>; 23 | + compatible = "st,w25q32"; 24 | + spi-max-frequency = <10000000>; 25 | + reg = <1>; 26 | + spi-rx-bus-width = <1>; 27 | + spi-tx-bus-width = <1>; 28 | + }; 29 | + 30 | }; 31 | 32 | &uart0 { 33 | -- 34 | 2.25.1 35 | 36 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0009-armv8-lx2160acex7-Fix-booting-from-NVMe-drives.patch: -------------------------------------------------------------------------------- 1 | From aeefed55fa39f4fc5acb2bd22fdde4dc97924d22 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 23 Mar 2020 13:32:09 +0200 4 | Subject: [PATCH 09/17] armv8: lx2160acex7: Fix booting from NVMe drives 5 | 6 | Currently NVMe is not initialized so u-boot fails to read kernel from 7 | NVMe drive. This patch modifies default environment so it initializes 8 | NVMe as part of default startup script... 9 | 10 | Credit to Damjan Marion on fixing that on LSDK-19.09. 11 | 12 | Upstream-Status: Inappropriate [Solid-Run BSP] 13 | 14 | Signed-off-by: Rabeeh Khoury 15 | --- 16 | include/configs/lx2160a_common.h | 1 + 17 | 1 file changed, 1 insertion(+) 18 | 19 | diff --git a/include/configs/lx2160a_common.h b/include/configs/lx2160a_common.h 20 | index e31738d3a3..91e9a2470f 100644 21 | --- a/include/configs/lx2160a_common.h 22 | +++ b/include/configs/lx2160a_common.h 23 | @@ -261,6 +261,7 @@ int select_i2c_ch_pca9547_sec(unsigned char ch); 24 | BOOTENV \ 25 | "mcmemsize=0x70000000\0" \ 26 | XSPI_MC_INIT_CMD \ 27 | + "nvme_need_init=true\0" \ 28 | "scan_dev_for_boot_part=" \ 29 | "part list ${devtype} ${devnum} devplist; " \ 30 | "env exists devplist || setenv devplist 1; " \ 31 | -- 32 | 2.17.1 33 | 34 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0015-lx2160a-cex7-set-mmc-dev-to-0-when-attempting-sd_boo.patch: -------------------------------------------------------------------------------- 1 | From 47923a2f4cf159963d20acd1744619b44c9d5b02 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 23 Mar 2020 15:13:11 +0200 4 | Subject: [PATCH 15/17] lx2160a-cex7: set mmc dev to 0 when attempting 5 | sd_bootcmd 6 | 7 | When attempting sd_bootcmd which is the fallback of failed distroboot 8 | then set mmc dev to 0; since distroboot already set that variable to 1. 9 | 10 | Upstream-Status: Inappropriate [Solid-Run BSP] 11 | 12 | Signed-off-by: Rabeeh Khoury 13 | --- 14 | include/configs/lx2160acex7.h | 2 +- 15 | 1 file changed, 1 insertion(+), 1 deletion(-) 16 | 17 | diff --git a/include/configs/lx2160acex7.h b/include/configs/lx2160acex7.h 18 | index 478cd8242f..7116e038a1 100644 19 | --- a/include/configs/lx2160acex7.h 20 | +++ b/include/configs/lx2160acex7.h 21 | @@ -73,7 +73,7 @@ 22 | "$kernelheader_size && esbc_validate ${kernelheader_addr_r}; "\ 23 | " bootm $load_addr#$BOARD\0" \ 24 | "sd_bootcmd=echo Trying load from sd card..;" \ 25 | - "mmcinfo; mmc read $load_addr " \ 26 | + "mmc dev 0; mmcinfo; mmc read $load_addr " \ 27 | "$kernel_addr_sd $kernel_size_sd ;" \ 28 | "env exists secureboot && mmc read $kernelheader_addr_r "\ 29 | "$kernelhdr_addr_sd $kernelhdr_size_sd " \ 30 | -- 31 | 2.17.1 32 | 33 | -------------------------------------------------------------------------------- /conf/machine/imx6ul-pico.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: IMX6UL-PICO 3 | #@SOC: i.MX6UL 4 | #@DESCRIPTION: Machine configuration for IMX6UL-PICO board. 5 | #@MAINTAINER: Daiane Angolini 6 | 7 | MACHINEOVERRIDES =. "mx6ul:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" 14 | 15 | SERIAL_CONSOLES = "115200;ttymxc5" 16 | 17 | KERNEL_DEVICETREE = " \ 18 | imx6ul-pico-dwarf.dtb \ 19 | imx6ul-pico-hobbit.dtb \ 20 | imx6ul-pico-pi.dtb \ 21 | " 22 | 23 | SPL_BINARY = "SPL" 24 | UBOOT_SUFFIX = "img" 25 | UBOOT_MAKE_TARGET = "" 26 | 27 | UBOOT_CONFIG ??= "dwarf hobbit pi generic" 28 | UBOOT_CONFIG[dwarf] = "pico-dwarf-imx6ul_defconfig" 29 | UBOOT_CONFIG[generic] = "pico-imx6ul_defconfig" 30 | UBOOT_CONFIG[hobbit] = "pico-hobbit-imx6ul_defconfig" 31 | UBOOT_CONFIG[pi] = "pico-pi-imx6ul_defconfig" 32 | 33 | UBOOT_EXTLINUX = "1" 34 | UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}" 35 | UBOOT_EXTLINUX_CONSOLE = "console=${console},${baudrate}" 36 | 37 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 38 | kernel-image \ 39 | kernel-devicetree \ 40 | u-boot-fslc \ 41 | " 42 | 43 | MACHINE_FEATURES += "wifi bluetooth" 44 | 45 | WKS_FILES ?= "imx-uboot-spl.wks.in" 46 | WKS_FILE_DEPENDS ?= "" 47 | IMAGE_FSTYPES = "wic.bmap wic.xz ext4.gz" 48 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq_2019.10.bbappend: -------------------------------------------------------------------------------- 1 | FILESEXTRAPATHS:append:lx2160acex7 := "${THISDIR}/${PN}-lx2160acex7:" 2 | 3 | SRC_URI:append:lx2160acex7 = "\ 4 | file://0001-armv8-add-lx2160acex7-build-inclusion.patch \ 5 | file://0002-armv8-lx2160acex-misc-hacks-to-get-the-sources-built.patch \ 6 | file://0003-armv8-lx2160acex7-defconfig-and-main-platform-includ.patch \ 7 | file://0004-armv8-lx2160acex7-common-files-for-platform-support.patch \ 8 | file://0005-armv8-lx2160acex7-lx2160acex-device-tree.patch \ 9 | file://0006-armv8-lx2160acex7-board-support-files.patch \ 10 | file://0007-lx2160a-load-dpl-into-0x80001000-instead-of-0x80d000.patch \ 11 | file://0008-uboot-add-nvme-commands-and-for-distroboot.patch \ 12 | file://0009-armv8-lx2160acex7-Fix-booting-from-NVMe-drives.patch \ 13 | file://0010-nvme-add-accessor-to-namespace-id-and-eui64.patch \ 14 | file://0011-nvme-flush-dcache-on-both-r-w-and-the-prp-list.patch \ 15 | file://0012-nvme-use-page-aligned-buffer-for-identify-command.patch \ 16 | file://0013-lx2160a-cex7-move-from-lsdk-19.06-to-lsdk-19.09.patch \ 17 | file://0014-lx2160acex7-pcie-fixup-and-boot-from-eMMC-print.patch \ 18 | file://0015-lx2160a-cex7-set-mmc-dev-to-0-when-attempting-sd_boo.patch \ 19 | file://0016-lx2160acex7-Misc-fixes-to-support-LSDK-20.04.patch \ 20 | file://0017-lx2160acex7-misc-fixes-to-get-booting-from-eMMC-func.patch \ 21 | " 22 | 23 | -------------------------------------------------------------------------------- /conf/machine/colibri-imx7-emmc.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Colibri iMX7 Dual 1GB (eMMC) 3 | #@SOC: i.MX 7Dual 4 | #@DESCRIPTION: Machine configuration for Toradex Colibri iMX7 SOM (eMMC) 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "mx7:mx7d:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ??= "linux-toradex" 13 | KBUILD_DEFCONFIG:use-nxp-bsp ?= "colibri_imx7_defconfig" 14 | KERNEL_DEVICETREE = " \ 15 | imx7d-colibri-emmc-eval-v3.dtb \ 16 | imx7d-colibri-emmc-aster.dtb \ 17 | " 18 | KERNEL_DEVICETREE:append:use-nxp-bsp = " \ 19 | imx7d-colibri-emmc-iris.dtb \ 20 | imx7d-colibri-emmc-iris-v2.dtb \ 21 | " 22 | 23 | # The kernel lives in a seperate FAT partition, don't deploy it in /boot/ 24 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 25 | 26 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 27 | PREFERRED_RPROVIDER_u-boot-default-script = "u-boot-script-toradex" 28 | 29 | UBOOT_SUFFIX = "imx" 30 | UBOOT_BINARY = "u-boot-dtb.${UBOOT_SUFFIX}" 31 | UBOOT_MACHINE ?= "colibri_imx7_emmc_defconfig" 32 | 33 | IMAGE_FSTYPES += "tar.xz" 34 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 35 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 36 | 37 | MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g" 38 | MACHINE_FIRMWARE:remove = "firmware-imx-epdc" 39 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-script-toradex_2020.07.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Boot script for launching images with U-Boot distro boot" 2 | LICENSE = "MIT" 3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 4 | 5 | INHIBIT_DEFAULT_DEPS = "1" 6 | DEPENDS = "u-boot-mkimage-native" 7 | 8 | SRC_URI = " \ 9 | file://boot.cmd.in \ 10 | " 11 | 12 | KERNEL_BOOTCMD ??= "bootz" 13 | KERNEL_BOOTCMD:aarch64 ?= "booti" 14 | 15 | inherit deploy nopackages 16 | 17 | do_configure[noexec] = "1" 18 | do_compile[noexec] = "1" 19 | 20 | do_mkimage() { 21 | sed -e 's/@@KERNEL_BOOTCMD@@/${KERNEL_BOOTCMD}/' \ 22 | -e 's/@@KERNEL_IMAGETYPE@@/${KERNEL_IMAGETYPE}/' \ 23 | "${UNPACKDIR}/boot.cmd.in" > ${B}/boot.cmd 24 | mkimage -T script -C none -n "Distro boot script" -d ${B}/boot.cmd ${B}/boot.scr 25 | } 26 | 27 | addtask mkimage after do_compile before do_install 28 | 29 | do_install() { 30 | install -Dm 0644 ${B}/boot.scr ${D}/boot.scr 31 | } 32 | 33 | do_deploy() { 34 | install -Dm 0644 ${D}/boot.scr ${DEPLOYDIR}/boot.scr-${MACHINE}-${PV}-${PR} 35 | cd ${DEPLOYDIR} 36 | rm -f boot.scr-${MACHINE} 37 | ln -sf boot.scr-${MACHINE}-${PV}-${PR} boot.scr-${MACHINE} 38 | } 39 | 40 | addtask deploy after do_install before do_build 41 | 42 | PROVIDES += "u-boot-default-script" 43 | 44 | PACKAGE_ARCH = "${MACHINE_ARCH}" 45 | 46 | COMPATIBLE_MACHINE = "(apalis-imx6|colibri-imx6|colibri-imx6ull|colibri-imx7-emmc|colibri-imx7-nand|colibri-vf)" 47 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0008-uboot-add-nvme-commands-and-for-distroboot.patch: -------------------------------------------------------------------------------- 1 | From 8fa576d659e4710eae0b62aadd7717846c64746c Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 11 Nov 2019 23:45:31 +0200 4 | Subject: [PATCH 08/17] uboot - add nvme commands and for distroboot 5 | 6 | Upstream-Status: Inappropriate [Solid-Run BSP] 7 | 8 | Signed-off-by: Rabeeh Khoury 9 | --- 10 | configs/lx2160acex7_tfa_defconfig | 2 ++ 11 | include/configs/lx2160a_common.h | 1 + 12 | 2 files changed, 3 insertions(+) 13 | 14 | diff --git a/configs/lx2160acex7_tfa_defconfig b/configs/lx2160acex7_tfa_defconfig 15 | index d59de7d054..3891d2a7c4 100644 16 | --- a/configs/lx2160acex7_tfa_defconfig 17 | +++ b/configs/lx2160acex7_tfa_defconfig 18 | @@ -25,6 +25,8 @@ CONFIG_CMD_PCI=y 19 | CONFIG_CMD_SF=y 20 | CONFIG_CMD_USB=y 21 | CONFIG_CMD_CACHE=y 22 | +CONFIG_CMD_NVME=y 23 | +CONFIG_NVME=y 24 | CONFIG_MP=y 25 | CONFIG_OF_CONTROL=y 26 | CONFIG_DEFAULT_DEVICE_TREE="fsl-lx2160a-cex7" 27 | diff --git a/include/configs/lx2160a_common.h b/include/configs/lx2160a_common.h 28 | index 5b9808b2ef..e31738d3a3 100644 29 | --- a/include/configs/lx2160a_common.h 30 | +++ b/include/configs/lx2160a_common.h 31 | @@ -316,6 +316,7 @@ int select_i2c_ch_pca9547_sec(unsigned char ch); 32 | func(MMC, mmc, 0) \ 33 | func(MMC, mmc, 1) \ 34 | func(SCSI, scsi, 0) \ 35 | + func(NVME, nvme, 0) \ 36 | func(DHCP, dhcp, na) 37 | #include 38 | 39 | -- 40 | 2.17.1 41 | 42 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0010-arm64-dts-lx2160a-cex7-add-power-button-support.patch: -------------------------------------------------------------------------------- 1 | From b640a74851bf1fdc3abe49860e9efc498e4483a8 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Tue, 8 Dec 2020 13:21:03 +0200 4 | Subject: [PATCH] arm64: dts: lx2160a-cex7: add power button support 5 | 6 | COM express PWRBTN# signal is connected as a GPIO to the LX2 SoC. 7 | Translate that power button click as KEY_POWER event. 8 | 9 | Upstream-Status: Pending 10 | Signed-off-by: Rabeeh Khoury 11 | --- 12 | arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts | 12 ++++++++++++ 13 | 1 file changed, 12 insertions(+) 14 | 15 | diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 16 | index 2b8f1118b..e2dfe4f67 100644 17 | --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 18 | +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 19 | @@ -7,6 +7,7 @@ 20 | /dts-v1/; 21 | 22 | #include "fsl-lx2160a.dtsi" 23 | +#include 24 | 25 | / { 26 | model = "SolidRun LX2160A COM express type 7 module"; 27 | @@ -30,6 +31,17 @@ 28 | regulator-boot-on; 29 | regulator-always-on; 30 | }; 31 | + 32 | + gpio-keys { 33 | + compatible = "gpio-keys"; 34 | + 35 | + key { 36 | + label = "power"; 37 | + linux,can-disable; 38 | + linux,code = ; 39 | + gpios = <&gpio2 6 GPIO_ACTIVE_LOW>; 40 | + }; 41 | + }; 42 | }; 43 | 44 | &crypto { 45 | -- 46 | 2.25.1 47 | 48 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | # License Information 2 | 3 | This file lists all licenses used by recipes in the meta-freescale-3rdparty layer. 4 | 5 | ./recipes-bsp/atf/qoriq-atf_1.5.bb: LICENSE = "BSD" 6 | ./recipes-bsp/broadcom-nvram-config/broadcom-nvram-config.inc: LICENSE = "Proprietary" 7 | ./recipes-bsp/imx-atf/imx-atf-boundary_2.8.bb: LICENSE = "BSD-3-Clause" 8 | ./recipes-bsp/libmcc/libmcc_1.05.1.bb: LICENSE = "GPL-2.0-only | BSD" 9 | ./recipes-bsp/mqxboot/mqxboot_1.0.1.bb: LICENSE = "GPL-2.0-only | BSD" 10 | ./recipes-bsp/u-boot/u-boot-boundary-common_2022.04.inc: LICENSE = "GPL-2.0-or-later" 11 | ./recipes-bsp/u-boot/u-boot-kontron_2020.01.bb: LICENSE = "GPL-2.0-or-later" 12 | ./recipes-bsp/u-boot/u-boot-olimex-common_2024.04.inc: LICENSE = "GPL-2.0-or-later" 13 | ./recipes-bsp/u-boot/u-boot-qoriq_2019.10.bb: LICENSE = "GPL-2.0-only & BSD-3-Clause & BSD-2-Clause & LGPL-2.0-only & LGPL-2.1-only" 14 | ./recipes-bsp/u-boot/u-boot-script-qoriq_2019.10.bb: LICENSE = "MIT" 15 | ./recipes-bsp/u-boot/u-boot-script-toradex_2020.07.bb: LICENSE = "MIT" 16 | ./recipes-bsp/u-boot/u-boot-toradex_2020.07.bb: LICENSE = "GPL-2.0-or-later" 17 | ./recipes-bsp/u-boot/u-boot-variscite_2018.03.bb: LICENSE = "GPL-2.0-or-later" 18 | ./recipes-connectivity/ti-18xx-wlconf/ti-18xx-wlconf_8.7.3.bb: LICENSE = "GPL-2.0-only" 19 | ./recipes-core/net-persistent-mac/net-persistent-mac.bb: LICENSE = "MIT" 20 | ./recipes-kernel/kernel-module-mcc-toradex/kernel-module-mcc-toradex_1.06+toradex2.bb: LICENSE = "GPL-2.0-only" 21 | ./recipes-kernel/linux/linux-boundary_6.1.bb: LICENSE = "GPL-2.0-only" 22 | -------------------------------------------------------------------------------- /conf/machine/imx6qdl-pico.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: IMX6Q/DL-PICO 3 | #@SOC: i.MX6QDL 4 | #@DESCRIPTION: Machine configuration for IMX6QDL-PICO board. 5 | #@MAINTAINER: Otavio Salvador otavio.salvador@ossystems.com.br 6 | 7 | MACHINEOVERRIDES =. "mx6q:mx6dl:" 8 | 9 | require conf/machine/include/imx-base.inc 10 | require conf/machine/include/arm/armv7a/tune-cortexa9.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" 14 | 15 | SERIAL_CONSOLES = "115200;ttymxc0" 16 | 17 | SPL_BINARY = "SPL" 18 | UBOOT_SUFFIX = "img" 19 | UBOOT_MAKE_TARGET = "" 20 | 21 | UBOOT_EXTLINUX = "1" 22 | UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}" 23 | UBOOT_EXTLINUX_CONSOLE = "console=${console},${baudrate}" 24 | 25 | UBOOT_CONFIG ??= "generic" 26 | UBOOT_CONFIG[generic] = "pico-imx6_defconfig" 27 | 28 | KERNEL_DEVICETREE = " \ 29 | imx6dl-pico-dwarf.dtb \ 30 | imx6dl-pico-hobbit.dtb \ 31 | imx6dl-pico-nymph.dtb \ 32 | imx6dl-pico-pi.dtb \ 33 | imx6q-pico-dwarf.dtb \ 34 | imx6q-pico-hobbit.dtb \ 35 | imx6q-pico-nymph.dtb \ 36 | imx6q-pico-pi.dtb \ 37 | " 38 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 39 | kernel-image \ 40 | kernel-devicetree \ 41 | u-boot-fslc \ 42 | " 43 | 44 | MACHINE_EXTRA_RRECOMMENDS += " \ 45 | bcm4339-nvram-config \ 46 | " 47 | 48 | WKS_FILES ?= "imx-uboot-spl.wks.in" 49 | WKS_FILE_DEPENDS ?= "" 50 | IMAGE_FSTYPES = "wic.bmap wic.xz ext4.gz" 51 | 52 | MACHINE_FIRMWARE:append = " linux-firmware-ath10k" 53 | 54 | MACHINE_FEATURES += " pci bluetooth touchscreen wifi" 55 | -------------------------------------------------------------------------------- /conf/machine/imx7d-pico.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: IMX7D-PICO 3 | #@SOC: i.MX7D 4 | #@DESCRIPTION: Machine configuration for IMX7D-PICO board. 5 | #@MAINTAINER: Vanessa Maegima 6 | 7 | MACHINEOVERRIDES =. "mx7:mx7d:" 8 | 9 | require conf/machine/include/imx-base.inc 10 | require conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | IMX_DEFAULT_BOOTLOADER = "u-boot-fslc" 14 | 15 | SERIAL_CONSOLES = "115200;ttymxc4" 16 | 17 | KERNEL_DEVICETREE = " \ 18 | imx7d-pico-dwarf.dtb \ 19 | imx7d-pico-hobbit.dtb \ 20 | imx7d-pico-pi.dtb \ 21 | " 22 | 23 | SPL_BINARY = "SPL" 24 | UBOOT_BINARY = "u-boot-dtb.img" 25 | UBOOT_SUFFIX = "img" 26 | UBOOT_MAKE_TARGET = "" 27 | 28 | UBOOT_CONFIG ??= "dwarf hobbit nymph pi generic" 29 | UBOOT_CONFIG[dwarf] = "pico-dwarf-imx7d_defconfig" 30 | UBOOT_CONFIG[generic] = "pico-imx7d_defconfig" 31 | UBOOT_CONFIG[hobbit] = "pico-hobbit-imx7d_defconfig" 32 | UBOOT_CONFIG[nymph] = "pico-nymph-imx7d_defconfig" 33 | UBOOT_CONFIG[pi] = "pico-pi-imx7d_defconfig" 34 | 35 | UBOOT_EXTLINUX = "1" 36 | UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}" 37 | UBOOT_EXTLINUX_CONSOLE = "console=${console},${baudrate}" 38 | 39 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 40 | kernel-image \ 41 | kernel-devicetree \ 42 | u-boot-fslc \ 43 | " 44 | 45 | MACHINE_EXTRA_RRECOMMENDS += " \ 46 | bcm4339-nvram-config \ 47 | linux-firmware-ath10k \ 48 | " 49 | 50 | WKS_FILES ?= "imx-uboot-spl.wks.in" 51 | WKS_FILE_DEPENDS ?= "" 52 | IMAGE_FSTYPES = "wic.bmap wic.xz ext4.gz" 53 | -------------------------------------------------------------------------------- /conf/machine/cubox-i.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: SolidRun CuBox-i and HummingBoard 3 | #@SOC: i.MX6 Q/DL 4 | #@DESCRIPTION: Machine configuration for SolidRun CuBox-i and HummingBoard machines 5 | #@MAINTAINER: Carlos Rafael Giani 6 | 7 | # Machine config for the SolidRun CuBox-i and HummingBoard machines. 8 | # They all use the same machine config, since the u-boot SPL 9 | # autodetects the machine type upon booting. MACHINEOVERRIDES includes 10 | # all SoCs from all of these machines to let recipes include firmware 11 | # etc. for all of these SoCs. 12 | 13 | MACHINEOVERRIDES =. "mx6q:mx6dl:" 14 | 15 | require conf/machine/include/imx-base.inc 16 | require conf/machine/include/arm/armv7a/tune-cortexa9.inc 17 | 18 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-fslc" 19 | 20 | UBOOT_MAKE_TARGET = "" 21 | UBOOT_SUFFIX = "img" 22 | UBOOT_CONFIG ??= "sd" 23 | UBOOT_CONFIG[sd] = "mx6cuboxi_defconfig,sdcard" 24 | UENV_FILENAME = "uEnv-${MACHINE}.txt" 25 | SPL_BINARY = "SPL" 26 | WKS_FILES = "imx-uboot-spl.wks.in" 27 | 28 | UBOOT_EXTLINUX = "1" 29 | UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}" 30 | 31 | KERNEL_IMAGETYPE = "zImage" 32 | KERNEL_DEVICETREE = "imx6dl-cubox-i.dtb imx6q-cubox-i.dtb imx6dl-hummingboard.dtb imx6q-hummingboard.dtb" 33 | 34 | MACHINE_FEATURES += "pci wifi bluetooth alsa irda serial usbhost" 35 | MACHINE_EXTRA_RRECOMMENDS += "bcm4330-nvram-config bcm4329-nvram-config" 36 | 37 | SERIAL_CONSOLES = "115200;ttymxc0" 38 | 39 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 40 | kernel-image \ 41 | kernel-devicetree \ 42 | u-boot-fslc \ 43 | " 44 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw-lx2160acex7/0003-S2-enable-gen3-xspi-increase-divisor-to-28.patch: -------------------------------------------------------------------------------- 1 | From 3b0e8b6e242549c2ed992d7556d7966a77b6da86 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Tue, 5 Nov 2019 10:35:32 +0200 4 | Subject: [PATCH] S2 - enable gen3, xspi increase divisor to 28 5 | 6 | Serdes group 2 enable PCIe gen 3 7 | XSPI increase divisor to 28 - this fixes UEFI SPI flash detection. 8 | 9 | Upstream-Status: Inappropriate [Solid-Run BSP] 10 | 11 | Signed-off-by: Rabeeh Khoury 12 | --- 13 | lx2160acex7/configs/lx2160a_defaults.rcwi | 2 +- 14 | lx2160acex7/configs/lx2160a_xspiboot.rcwi | 2 +- 15 | 2 files changed, 2 insertions(+), 2 deletions(-) 16 | 17 | diff --git a/lx2160acex7/configs/lx2160a_defaults.rcwi b/lx2160acex7/configs/lx2160a_defaults.rcwi 18 | index dbc843f..3ea7683 100644 19 | --- a/lx2160acex7/configs/lx2160a_defaults.rcwi 20 | +++ b/lx2160acex7/configs/lx2160a_defaults.rcwi 21 | @@ -14,7 +14,7 @@ IIC3_PMUX=0 22 | IIC4_PMUX=2 23 | USB3_CLK_FSEL=39 24 | SRDS_DIV_PEX_S1=1 25 | -SRDS_DIV_PEX_S2=3 26 | +SRDS_DIV_PEX_S2=1 27 | SRDS_DIV_PEX_S3=1 28 | SDHC1_DIR_PMUX=1 29 | IRQ03_00_PMUX=1 30 | diff --git a/lx2160acex7/configs/lx2160a_xspiboot.rcwi b/lx2160acex7/configs/lx2160a_xspiboot.rcwi 31 | index eecc314..28310c9 100644 32 | --- a/lx2160acex7/configs/lx2160a_xspiboot.rcwi 33 | +++ b/lx2160acex7/configs/lx2160a_xspiboot.rcwi 34 | @@ -14,4 +14,4 @@ 35 | #include <../lx2160asi/common.rcw> 36 | 37 | /* Modify FlexSPI Clock Divisor value */ 38 | -#include <../lx2160asi/flexspi_divisor_24.rcw> 39 | +#include <../lx2160asi/flexspi_divisor_28.rcw> 40 | -- 41 | 2.17.1 42 | 43 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/cubox-i/brcmfmac4329-sdio.txt: -------------------------------------------------------------------------------- 1 | # bcm4329 NVRAM 2 | # $Copyright (C) 2008 Broadcom Corporation$ 3 | # $id$ 4 | 5 | sromrev=3 6 | vendid=0x14e4 7 | devid=0x432f 8 | boardtype=0x53e 9 | 10 | boardrev=0x41 11 | 12 | #boardflags=0x1200 13 | boardflags=0x200 14 | 15 | # Specify the xtalfreq if it is otherthan 38.4MHz 16 | xtalfreq=37400 17 | 18 | aa2g=3 19 | aa5g=0 20 | 21 | ag0=255 22 | #tri2g=0x64 23 | 24 | # 11g paparams 25 | pa0b0=5542,5542,5542 26 | pa0b1=64244,64244,64244 27 | pa0b2=65202,65202,65202 28 | 29 | pa0itssit=62 30 | pa0maxpwr=74 31 | opo=0 32 | mcs2gpo0=0x6666 33 | mcs2gpo1=0x6666 34 | 35 | # 11g rssi params 36 | rssismf2g=0xa,0xa,0xa 37 | rssismc2g=0xb,0xb,0xb 38 | rssisav2g=0x3,0x3,0x3 39 | bxa2g=0 40 | 41 | # country code 42 | ccode=ALL 43 | cctl=0x0 44 | cckdigfilttype=0 45 | ofdmdigfilttype=1 46 | 47 | rxpo2g=0 48 | 49 | boardnum=1 50 | macaddr=00:90:4c:c5:00:34 51 | 52 | # xtal pu and pd time control variable 53 | # pu time is driver default (0x1501) 54 | #r13t=0x1501 55 | 56 | ####### 57 | nocrc=1 58 | 59 | #for mfgc 60 | otpimagesize=182 61 | 62 | # sdio extra configs 63 | hwhdr=0x05ffff031030031003100000 64 | 65 | #This generates empty F1, F2 and F3 tuple chains, and may be used if the host SDIO stack does not require the standard tuples. 66 | #RAW1=80 02 fe ff 67 | 68 | #This includes the standard FUNCID and FUNCE tuples in the F1, F2, F3 and common CIS. 69 | RAW1=80 32 fe 21 02 0c 00 22 2a 01 01 00 00 c5 0 e6 00 00 00 00 00 40 00 00 ff ff 80 00 00 00 00 00 00 00 00 00 00 c8 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 20 04 D0 2 29 43 21 02 0c 00 22 04 00 20 00 5A 70 | nvramver=4.218.214.0 71 | -------------------------------------------------------------------------------- /recipes-connectivity/ti-18xx-wlconf/ti-18xx-wlconf_8.7.3.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "Configuration utility for TI wireless drivers" 2 | LICENSE = "GPL-2.0-only" 3 | LIC_FILES_CHKSUM = "file://README;beginline=1;endline=21;md5=adc05a1903d3f107f85c90328e3a9438" 4 | 5 | # Tag: R8.7_SP3 (8.7.3) 6 | SRCREV = "5048b59a444ac59ba7171d6e122d5a84581aebf2" 7 | SRC_URI = "git://git.ti.com/wilink8-wlan/18xx-ti-utils.git;branch=master" 8 | 9 | S = "${WORKDIR}/git/wlconf" 10 | 11 | EXTRA_OEMAKE = "CC="${CC}"" 12 | 13 | do_install() { 14 | install -d ${D}${sbindir} 15 | install -d ${D}${sbindir}/wlconf/ 16 | install -d ${D}${sbindir}/wlconf/official_inis 17 | install -d ${D}${nonarch_base_libdir}/firmware/ti-connectivity 18 | 19 | install -m 0755 wlconf ${D}${sbindir}/wlconf/ 20 | install -m 0755 dictionary.txt ${D}${sbindir}/wlconf/ 21 | install -m 0755 struct.bin ${D}${sbindir}/wlconf/ 22 | install -m 0755 default.conf ${D}${sbindir}/wlconf/ 23 | install -m 0755 wl18xx-conf-default.bin ${D}${sbindir}/wlconf/ 24 | install -m 0755 wl18xx-conf-default.bin ${D}${nonarch_base_libdir}/firmware/ti-connectivity/wl18xx-conf.bin 25 | install -m 0755 README ${D}${sbindir}/wlconf/ 26 | install -m 0755 example.conf ${D}${sbindir}/wlconf/ 27 | install -m 0755 example.ini ${D}${sbindir}/wlconf/ 28 | install -m 0755 configure-device.sh ${D}${sbindir}/wlconf/ 29 | install -m 0755 ${S}/official_inis/* \ 30 | ${D}${sbindir}/wlconf/official_inis/ 31 | } 32 | 33 | FILES:${PN} += " \ 34 | ${sbindir}/wlconf \ 35 | ${sbindir}/wlconf/official_inis \ 36 | ${nonarch_base_libdir}/firmware/ti-connectivity/wl18xx-conf.bin \ 37 | " 38 | 39 | FILES:${PN}-dbg += "${sbindir}/wlconf/.debug" 40 | 41 | -------------------------------------------------------------------------------- /conf/machine/colibri-imx6ull.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Colibri iMX6ULL 3 | #@SOC: i.MX6ULL 4 | #@DESCRIPTION: Machine configuration for Toradex Colibri iMX6 ULL SOM 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "mx6ull:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ?= "linux-toradex" 13 | KBUILD_DEFCONFIG:use-nxp-bsp ?= "colibri-imx6ull_defconfig" 14 | KERNEL_DEVICETREE += " \ 15 | imx6ull-colibri-eval-v3.dtb imx6ull-colibri-wifi-eval-v3.dtb \ 16 | " 17 | KERNEL_DEVICETREE:append:use-nxp-bsp = " \ 18 | imx6ull-colibri-aster.dtb imx6ull-colibri-wifi-aster.dtb \ 19 | imx6ull-colibri-iris.dtb imx6ull-colibri-wifi-iris.dtb \ 20 | imx6ull-colibri-iris-v2.dtb imx6ull-colibri-wifi-iris-v2.dtb \ 21 | " 22 | 23 | KERNEL_IMAGETYPE = "zImage" 24 | # The kernel lives in its own ubi volume. 25 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 26 | 27 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 28 | PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex" 29 | 30 | UBOOT_BINARY = "u-boot-nand.imx" 31 | UBOOT_MAKE_TARGET = "u-boot.imx" 32 | UBOOT_MACHINE ?= "colibri-imx6ull_defconfig" 33 | UBOOT_SUFFIX = "imx" 34 | 35 | IMAGE_FSTYPES += "tar.xz" 36 | # wic support 37 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 38 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 39 | WKS_FILE = "sdimage-bootpart.wks" 40 | 41 | MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g" 42 | MACHINE_FIRMWARE:remove = "firmware-imx-epdc" 43 | -------------------------------------------------------------------------------- /conf/machine/wandboard.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Wandboard i.MX6 Wandboard QuadPlus/Quad/Dual/Solo 3 | #@SOC: i.MX6QP/Q/DL 4 | #@DESCRIPTION: Machine configuration for i.MX6 Wandboard QuadPlus/Quad/Dual/Solo 5 | #@MAINTAINER: Alfonso Tames 6 | 7 | MACHINEOVERRIDES =. "mx6q:mx6dl:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | 14 | UBOOT_MAKE_TARGET = "" 15 | UBOOT_SUFFIX = "img" 16 | SPL_BINARY = "SPL" 17 | UBOOT_MACHINE = "wandboard_config" 18 | 19 | UBOOT_EXTLINUX = "1" 20 | UBOOT_EXTLINUX_ROOT = "root=PARTUUID=${uuid}" 21 | UBOOT_EXTLINUX_CONSOLE = "console=${console},${baudrate}" 22 | 23 | WANDBOARD_DEFAULT_KERNEL = "linux-wandboard" 24 | WANDBOARD_DEFAULT_KERNEL:use-mainline-bsp = "linux-fslc" 25 | PREFERRED_PROVIDER_virtual/kernel ?= "${WANDBOARD_DEFAULT_KERNEL}" 26 | KERNEL_DEVICETREE = " \ 27 | nxp/imx/imx6dl-wandboard.dtb \ 28 | nxp/imx/imx6dl-wandboard-revb1.dtb \ 29 | nxp/imx/imx6dl-wandboard-revd1.dtb \ 30 | nxp/imx/imx6q-wandboard.dtb \ 31 | nxp/imx/imx6q-wandboard-revb1.dtb \ 32 | nxp/imx/imx6q-wandboard-revd1.dtb \ 33 | nxp/imx/imx6qp-wandboard-revd1.dtb \ 34 | " 35 | 36 | KERNEL_IMAGETYPE = "zImage" 37 | 38 | MACHINE_FEATURES += "bluetooth pci wifi touchscreen" 39 | 40 | MACHINE_EXTRA_RRECOMMENDS += " \ 41 | bcm4329-nvram-config \ 42 | bcm4330-nvram-config \ 43 | " 44 | 45 | SERIAL_CONSOLES = "115200;ttymxc0" 46 | 47 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 48 | kernel-image \ 49 | kernel-devicetree \ 50 | u-boot-fslc \ 51 | " 52 | 53 | WKS_FILES = "imx-uboot-spl.wks.in" 54 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/wandboard/brcmfmac4329-sdio.txt: -------------------------------------------------------------------------------- 1 | # bcm4329 NVRAM file for Wandboard Dual 2 | # $Copyright (C) 2008 Broadcom Corporation$ 3 | # $id$ 4 | 5 | sromrev=3 6 | vendid=0x14e4 7 | devid=0x432f 8 | boardtype=0x53e 9 | 10 | boardrev=0x41 11 | 12 | #boardflags=0x1200 13 | boardflags=0x200 14 | 15 | # Specify the xtalfreq if it is otherthan 38.4MHz 16 | xtalfreq=37400 17 | 18 | aa2g=3 19 | aa5g=0 20 | 21 | ag0=255 22 | #tri2g=0x64 23 | 24 | # 11g paparams 25 | pa0b0=5542,5542,5542 26 | pa0b1=64244,64244,64244 27 | pa0b2=65202,65202,65202 28 | 29 | pa0itssit=62 30 | pa0maxpwr=74 31 | opo=0 32 | mcs2gpo0=0x6666 33 | mcs2gpo1=0x6666 34 | 35 | # 11g rssi params 36 | rssismf2g=0xa,0xa,0xa 37 | rssismc2g=0xb,0xb,0xb 38 | rssisav2g=0x3,0x3,0x3 39 | bxa2g=0 40 | 41 | # country code 42 | ccode=ALL 43 | cctl=0x0 44 | cckdigfilttype=0 45 | ofdmdigfilttype=1 46 | 47 | rxpo2g=0 48 | 49 | boardnum=1 50 | macaddr=00:90:4c:c5:00:34 51 | 52 | # xtal pu and pd time control variable 53 | # pu time is driver default (0x1501) 54 | #r13t=0x1501 55 | 56 | ####### 57 | nocrc=1 58 | 59 | #for mfgc 60 | otpimagesize=182 61 | 62 | # sdio extra configs 63 | hwhdr=0x05ffff031030031003100000 64 | 65 | #This generates empty F1, F2 and F3 tuple chains, and may be used if the host SDIO stack does not require the standard tuples. 66 | #RAW1=80 02 fe ff 67 | 68 | #This includes the standard FUNCID and FUNCE tuples in the F1, F2, F3 and common CIS. 69 | RAW1=80 32 fe 21 02 0c 00 22 2a 01 01 00 00 c5 0 e6 00 00 00 00 00 40 00 00 ff ff 80 00 00 00 00 00 00 00 00 00 00 c8 00 00 00 00 00 00 00 00 00 00 00 00 00 ff 20 04 D0 2 29 43 21 02 0c 00 22 04 00 20 00 5A 70 | nvramver=4.218.214.0 71 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-script-boundary_2022.04.bb: -------------------------------------------------------------------------------- 1 | require recipes-bsp/u-boot/u-boot-boundary-common_${PV}.inc 2 | 3 | DEPENDS = "u-boot-mkimage-native" 4 | 5 | inherit deploy 6 | 7 | BOOTSCRIPT ??= "${S}/board/boundary/bootscripts/bootscript-yocto.txt" 8 | BOOTSCRIPT:use-mainline-bsp ??= "${S}/board/boundary/bootscripts/bootscript-mainline.txt" 9 | 10 | UPGRADESCRIPT = "${S}/board/boundary/bootscripts/upgrade.txt" 11 | 12 | do_mkimage () { 13 | uboot-mkimage -A arm -O linux -T script -C none -a 0 -e 0 \ 14 | -n "boot script" -d ${BOOTSCRIPT} ${S}/boot.scr 15 | 16 | uboot-mkimage -A arm -O linux -T script -C none -a 0 -e 0 \ 17 | -n "upgrade script" -d ${UPGRADESCRIPT} ${S}/upgrade.scr 18 | } 19 | 20 | addtask mkimage after do_compile before do_install 21 | 22 | do_compile[noexec] = "1" 23 | 24 | do_install () { 25 | install -D -m 644 ${S}/boot.scr ${D}/boot.scr 26 | install -D -m 644 ${S}/upgrade.scr ${D}/upgrade.scr 27 | } 28 | 29 | do_deploy () { 30 | install -D -m 644 ${D}/boot.scr \ 31 | ${DEPLOYDIR}/boot.scr-${MACHINE}-${PV}-${PR} 32 | install -D -m 644 ${D}/upgrade.scr \ 33 | ${DEPLOYDIR}/upgrade.scr-${MACHINE}-${PV}-${PR} 34 | 35 | cd ${DEPLOYDIR} 36 | rm -f boot.scr-${MACHINE} upgrade.scr-${MACHINE} 37 | ln -sf boot.scr-${MACHINE}-${PV}-${PR} boot.scr-${MACHINE} 38 | ln -sf upgrade.scr-${MACHINE}-${PV}-${PR} upgrade.scr-${MACHINE} 39 | } 40 | 41 | addtask deploy after do_install before do_build 42 | 43 | FILES:${PN} += "/" 44 | 45 | COMPATIBLE_MACHINE = "(nitrogen6x-lite|nitrogen6x|nitrogen6sx|nitrogen7|nitrogen8m|nitrogen8mm|nitrogen8mn|nitrogen8mp)" 46 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0002-armv8-lx2160acex-misc-hacks-to-get-the-sources-built.patch: -------------------------------------------------------------------------------- 1 | From a8a182b435e96a22b01d722a8df3061c1a1b7da6 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Sun, 28 Jul 2019 13:27:46 +0300 4 | Subject: [PATCH 02/17] armv8: lx2160acex: misc hacks to get the sources built 5 | 6 | those hacks will be sorted out nicer in the future and this patch will 7 | not be needed anymore 8 | 9 | Upstream-Status: Inappropriate [Solid-Run BSP] 10 | 11 | Signed-off-by: Rabeeh Khoury 12 | --- 13 | arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 1 - 14 | drivers/mmc/fsl_esdhc.c | 2 +- 15 | 2 files changed, 1 insertion(+), 2 deletions(-) 16 | 17 | diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig 18 | index 42ca990994..efdc31da5d 100644 19 | --- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig 20 | +++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig 21 | @@ -218,7 +218,6 @@ config ARCH_LX2160A 22 | select SYS_FSL_DDR_LE 23 | select SYS_FSL_DDR_VER_50 24 | select SYS_FSL_EC1 25 | - select SYS_FSL_EC2 26 | select SYS_FSL_ERRATUM_A050106 27 | select SYS_FSL_HAS_RGMII 28 | select SYS_FSL_HAS_SEC 29 | diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c 30 | index f8e6ceba06..f4a7698cfd 100644 31 | --- a/drivers/mmc/fsl_esdhc.c 32 | +++ b/drivers/mmc/fsl_esdhc.c 33 | @@ -1020,7 +1020,7 @@ static int fsl_esdhc_probe(struct udevice *dev) 34 | priv->non_removable = 0; 35 | } 36 | 37 | - priv->wp_enable = 1; 38 | + priv->wp_enable = 0; 39 | 40 | if (IS_ENABLED(CONFIG_CLK)) { 41 | /* Assigned clock already set clock */ 42 | -- 43 | 2.17.1 44 | 45 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq/0001-perf-tests-bp_account-Make-global-variable-static.patch: -------------------------------------------------------------------------------- 1 | From cff20b3151ccab690715cb6cf0f5da5cccb32adf Mon Sep 17 00:00:00 2001 2 | From: Arnaldo Carvalho de Melo 3 | Date: Mon, 2 Mar 2020 11:13:19 -0300 4 | Subject: [PATCH] perf tests bp_account: Make global variable static 5 | 6 | To fix the build with newer gccs, that without this patch exit with: 7 | 8 | LD /tmp/build/perf/tests/perf-in.o 9 | ld: /tmp/build/perf/tests/bp_account.o:/git/perf/tools/perf/tests/bp_account.c:22: multiple definition of `the_var'; /tmp/build/perf/tests/bp_signal.o:/git/perf/tools/perf/tests/bp_signal.c:38: first defined here 10 | make[4]: *** [/git/perf/tools/build/Makefile.build:145: /tmp/build/perf/tests/perf-in.o] Error 1 11 | 12 | First noticed in fedora:rawhide/32 with: 13 | 14 | [perfbuilder@a5ff49d6e6e4 ~]$ gcc --version 15 | gcc (GCC) 10.0.1 20200216 (Red Hat 10.0.1-0.8) 16 | 17 | Upstream-Status: Backport 18 | 19 | Reported-by: Jiri Olsa 20 | Cc: Adrian Hunter 21 | Cc: Namhyung Kim 22 | Signed-off-by: Arnaldo Carvalho de Melo 23 | --- 24 | tools/perf/tests/bp_account.c | 2 +- 25 | 1 file changed, 1 insertion(+), 1 deletion(-) 26 | 27 | diff --git a/tools/perf/tests/bp_account.c b/tools/perf/tests/bp_account.c 28 | index d0b935356274..489b50604cf2 100644 29 | --- a/tools/perf/tests/bp_account.c 30 | +++ b/tools/perf/tests/bp_account.c 31 | @@ -19,7 +19,7 @@ 32 | #include "../perf-sys.h" 33 | #include "cloexec.h" 34 | 35 | -volatile long the_var; 36 | +static volatile long the_var; 37 | 38 | static noinline int test_function(void) 39 | { 40 | -- 41 | 2.17.1 42 | 43 | -------------------------------------------------------------------------------- /conf/machine/apalis-imx6.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Apalis iMX6Q/D 3 | #@SOC: i.MX6Q 4 | #@DESCRIPTION: Machine configuration for Toradex Apalis iMX6 SOM 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "mx6q:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ??= "linux-toradex" 13 | KBUILD_DEFCONFIG:use-nxp-bsp ?= "apalis_imx6_defconfig" 14 | KERNEL_DEVICETREE += " \ 15 | imx6q-apalis-eval.dtb imx6q-apalis-ixora.dtb \ 16 | imx6q-apalis-ixora-v1.1.dtb \ 17 | " 18 | KERNEL_DEVICETREE:append:use-nxp-bsp = " imx6q-apalis-ixora-v1.2.dtb" 19 | 20 | KERNEL_IMAGETYPE = "zImage" 21 | # The kernel lives in a seperate FAT partition, don't deploy it in /boot/ 22 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 23 | 24 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 25 | PREFERRED_RPROVIDER_u-boot-default-script = "u-boot-script-toradex" 26 | 27 | UBOOT_SUFFIX = "img" 28 | SPL_BINARY = "SPL" 29 | # The SPL configures the DDR RAM depending on the module it runs on. Thus there 30 | # is no need to distingush between the different module types. 31 | UBOOT_CONFIG ??= "spl" 32 | UBOOT_CONFIG[spl] = "apalis_imx6_defconfig,,u-boot.img" 33 | UBOOT_MAKE_TARGET = "" 34 | UBOOT_ENTRYPOINT:use-mainline-bsp = "0x10008000" 35 | 36 | IMAGE_FSTYPES += "tar.xz" 37 | # wic support 38 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 39 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 40 | WKS_FILE = "sdimage-bootpart.wks" 41 | 42 | MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g pci" 43 | MACHINE_FIRMWARE:remove = "firmware-imx-epdc" 44 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/nitrogen6x-lite/brcmfmac4330-sdio.txt: -------------------------------------------------------------------------------- 1 | # 2 | # Board configuration for Boundary Devices Nitrogen6-Lite 3 | # 4 | manfid=0x2d0 5 | prodid=0x0547 6 | vendid=0x14e4 7 | devid=0x4360 8 | boardtype=0x05e1 9 | boardrev=0x1202 10 | boardflags=0x0080200 11 | nocrc=1 12 | xtalfreq=37400 13 | boardnum=22 14 | ag0=254 15 | aa2g=1 16 | ccode=ALL 17 | pa0itssit=0x20 18 | pa0b0=5367 19 | pa0b1=-633 20 | pa0b2=-158 21 | rssismf2g=0xa 22 | rssismc2g=0x3 23 | rssisav2g=0x7 24 | #rssi params for 5GHz 25 | rssismf5g=0x4 26 | rssismc5g=0x3 27 | rssisav5g=0x7 28 | #PA parameters for lower a-band 29 | pa1lob0=4378 30 | pa1lob1=-596 31 | pa1lob2=-180 32 | #PA parameters for midband 33 | pa1b0=4672 34 | pa1b1=-603 35 | pa1b2=-172 36 | #PA parameters for high band 37 | pa1hib0=4752 38 | pa1hib1=-609 39 | pa1hib2=-173 40 | rxpo5g=0 41 | maxp2ga0=76 42 | maxp5ga0=0x42 43 | maxp5gla0=0x42 44 | maxp5gha0=0x42 45 | # 2.4G Tx Power offsets 46 | cck2gpo=0x4444 47 | ofdm2gpo=0x66666666 48 | mcs2gpo0=0x8888 49 | mcs2gpo1=0x8888 50 | # 5G Tx Power offsets 51 | ofdm5gpo=0x44444444 52 | ofdm5glpo=0x44444444 53 | ofdm5ghpo=0x44444444 54 | mcs5gpo0=0x6666 55 | mcs5gpo1=0x6666 56 | mcs5glpo0=0x6666 57 | mcs5glpo1=0x6666 58 | mcs5ghpo0=0x6666 59 | mcs5ghpo1=0x46666 60 | sromrev=3 61 | # il0macaddr=00:90:4c:c5:12:38 62 | wl0id=0x431b 63 | cckPwrOffset=4 64 | swctrlmap_2g=0x44844484,0x42824282,0x40804484,0x18282,0x1ff 65 | triso5g=0 66 | swctrlmap_5g=0x00100010,0x20202020,0x20202020,0x14202,0x0f0 67 | rfreg033=0x19 68 | rfreg033_cck=0x1f 69 | dacrate2g=160 70 | dacrate5g=160 71 | txalpfbyp2g=1 72 | bphyscale=17 73 | cckPwrIdxCorr=-15 74 | pacalidx2g=50 75 | #pacalidx5g=20 76 | noise_cal_ref_2g=53 77 | noise_cal_po_2g=0 78 | noise_cal_ref_5g=52 79 | noise_cal_po_5g=5,0,0 80 | -------------------------------------------------------------------------------- /conf/machine/lx2160acex7.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Solid-Run LX2160A-CEx7 3 | #@SOC: LSCH3 4 | #@DESCRIPTION: Machine configuration for running LX2160A-CEx7 in 64-bit mode 5 | 6 | require conf/machine/include/qoriq-arm64.inc 7 | require conf/machine/include/arm/arch-arm64.inc 8 | 9 | MACHINEOVERRIDES =. "fsl-lsch3:lx2160a:" 10 | 11 | MACHINE_FEATURES += "optee" 12 | 13 | KERNEL_CLASSES = " kernel-fitimage " 14 | KERNEL_IMAGETYPES = "fitImage" 15 | 16 | DTB_LOAD = "0x90000000" 17 | UBOOT_ENTRYPOINT = "0x80080000" 18 | 19 | UBOOT_CONFIG ??= "tfa" 20 | UBOOT_CONFIG[tfa] = "lx2160acex7_tfa_defconfig,,u-boot-dtb.bin" 21 | 22 | KERNEL_DEVICETREE_BASENAME ?= "fsl-lx2160a-cex7.dtb" 23 | KERNEL_DEVICETREE ?= "freescale/${KERNEL_DEVICETREE_BASENAME}" 24 | KERNEL_DEFCONFIG ?= "defconfig" 25 | 26 | SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyS1 115200;ttyAMA0" 27 | SERIAL_CONSOLES_CHECK ?= "${SERIAL_CONSOLES}" 28 | 29 | #SERDES=8_5_2 # 8x10g 30 | #SERDES=13_5_2 # dual 100g 31 | #SERDES=20_5_2 # dual 40g 32 | SERDES ?= "8_5_2" 33 | SPEED ?= "2000_700_3200" 34 | 35 | RCWAUTO ?= "${SERDES}/${SPEED}" 36 | BOOTTYPE="auto" 37 | 38 | EXTRA_IMAGEDEPENDS += "management-complex mc-utils rcw ls2-phy ddr-phy qoriq-atf inphi" 39 | USE_VT = "0" 40 | 41 | PREFERRED_PROVIDER_u-boot-default-script = "u-boot-script-qoriq" 42 | PREFERRED_PROVIDER_virtual/kernel = "linux-fslc-qoriq" 43 | PREFERRED_VERSION_linux-qoriq = "5.4%" 44 | PREFERRED_VERSION_u-boot-qoriq = "2019.10%" 45 | PREFERRED_VERSION_qoriq-atf = "1.5%" 46 | 47 | IMAGE_FSTYPES += "wic" 48 | WKS_FILE = "lx2160acex7.wks.in" 49 | WKS_FILE_DEPENDS:append = "\ 50 | ${PREFERRED_PROVIDER_u-boot-default-script} \ 51 | " 52 | IMAGE_BOOT_FILES ?= "${KERNEL_IMAGETYPE} ${KERNEL_DEVICETREE_BASENAME} boot.scr-${MACHINE};boot.scr" 53 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-script-qoriq_2019.10.bb: -------------------------------------------------------------------------------- 1 | DESCRIPTION = "Boot script for launching images with U-Boot distro boot" 2 | LICENSE = "MIT" 3 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" 4 | 5 | INHIBIT_DEFAULT_DEPS = "1" 6 | DEPENDS = "u-boot-mkimage-native" 7 | 8 | SRC_URI = "\ 9 | file://boot.cmd.in \ 10 | " 11 | 12 | KERNEL_BOOTCMD ?= "booti" 13 | 14 | inherit deploy 15 | 16 | do_configure[noexec] = "1" 17 | 18 | do_compile() { 19 | kernel_devicetree_spc="" 20 | kernel_devicetree_tmp="" 21 | for kdt in ${KERNEL_DEVICETREE} 22 | do 23 | kernel_devicetree_tmp="${kernel_devicetree_tmp}${kernel_devicetree_spc}$(basename ${kdt})" 24 | kernel_devicetree_spc=" " 25 | done 26 | kernel_devicetree="${kernel_devicetree_tmp}" 27 | sed -e 's/@KERNEL_BOOTCMD[@]/${KERNEL_BOOTCMD}/' -e "s,@KERNEL_IMAGETYPE[@],${KERNEL_IMAGETYPE},g" \ 28 | -e "s,@KERNEL_DEVICETREE[@],${kernel_devicetree},g" \ 29 | "${UNPACKDIR}/boot.cmd.in" > ${B}/boot.cmd 30 | target_arch="${TARGET_ARCH}" 31 | test "${TARGET_ARCH}" = "aarch64" && target_arch="arm64" 32 | mkimage -A ${target_arch} -T script -C none -n "Distro boot script" -d ${B}/boot.cmd ${B}/boot.scr 33 | } 34 | 35 | do_install() { 36 | install -Dm 0644 ${B}/boot.scr ${D}/boot/boot.scr 37 | } 38 | 39 | do_deploy() { 40 | install -Dm 0644 ${D}/boot/boot.scr ${DEPLOYDIR}/boot.scr-${MACHINE}-${PV}-${PR} 41 | cd ${DEPLOYDIR} 42 | rm -f boot.scr-${MACHINE} 43 | ln -sf boot.scr-${MACHINE}-${PV}-${PR} boot.scr-${MACHINE} 44 | } 45 | 46 | addtask deploy after do_install before do_build 47 | 48 | PROVIDES += "u-boot-default-script" 49 | 50 | PACKAGE_ARCH = "${MACHINE_ARCH}" 51 | 52 | COMPATIBLE_MACHINE = "(qoriq)" 53 | 54 | FILES:${PN} = "/boot" 55 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc-qoriq-lx2160acex7/0006-arm64-dts-lx2160a-cex7-add-on-module-eeproms.patch: -------------------------------------------------------------------------------- 1 | From 05acb6ecc8eb7426c4664a1e8fd22ad69256d541 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Sun, 26 Jan 2020 15:36:07 +0200 4 | Subject: [PATCH] arm64: dts: lx2160a-cex7: add on-module eeproms 5 | 6 | This patch adds 4 eeprom support on i2c mux channel #0 - 7 | 1. Bootable 512Kbit eeprom at address 0x50. 8 | 2. Memory SO-DIMMs SPD channels at 0x51 (upper SO-DIMM) and 0x53. 9 | 3. 2Kb eeprom at 0x57 will be used by SolidRun to hold manufacturing 10 | data. 11 | 12 | Upstream-Status: Pending 13 | Signed-off-by: Rabeeh Khoury 14 | --- 15 | .../boot/dts/freescale/fsl-lx2160a-cex7.dts | 22 ++++++++++++++++++- 16 | 1 file changed, 21 insertions(+), 1 deletion(-) 17 | 18 | diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 19 | index 1c1a0d47897d..2b8f1118b37a 100644 20 | --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 21 | +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a-cex7.dts 22 | @@ -81,7 +81,27 @@ I2C switch - 23 | reg = <0x77>; 24 | #address-cells = <1>; 25 | #size-cells = <0>; 26 | - 27 | + i2c@0 { 28 | + #address-cells = <1>; 29 | + #size-cells = <0>; 30 | + reg = <0x0>; 31 | + 24aa512@50 { 32 | + compatible = "atmel,24c512"; 33 | + reg = <0x50>; 34 | + }; 35 | + spd1@51 { 36 | + compatible = "atmel,spd"; 37 | + reg = <0x51>; 38 | + }; 39 | + spd2@53 { 40 | + compatible = "atmel,spd"; 41 | + reg = <0x53>; 42 | + }; 43 | + m24c02@57 { 44 | + compatible = "atmel,24c02"; 45 | + reg = <0x57>; 46 | + }; 47 | + }; 48 | i2c@1 { 49 | #address-cells = <1>; 50 | #size-cells = <0>; 51 | -- 52 | 2.17.1 53 | 54 | -------------------------------------------------------------------------------- /conf/machine/colibri-imx6.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Colibri iMX6DL/S 3 | #@SOC: i.MX6DL 4 | #@DESCRIPTION: Machine configuration for Toradex Colibri iMX6 SOM 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "mx6dl:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ??= "linux-toradex" 13 | KBUILD_DEFCONFIG:use-nxp-bsp ?= "colibri_imx6_defconfig" 14 | KERNEL_DTB_PREFIX = "nxp/imx/" 15 | KERNEL_DEVICETREE += "\ 16 | ${KERNEL_DTB_PREFIX}imx6dl-colibri-eval-v3.dtb \ 17 | ${KERNEL_DTB_PREFIX}imx6dl-colibri-cam-eval-v3.dtb \ 18 | ${KERNEL_DTB_PREFIX}imx6dl-colibri-aster.dtb \ 19 | ${KERNEL_DTB_PREFIX}imx6dl-colibri-iris.dtb \ 20 | ${KERNEL_DTB_PREFIX}imx6dl-colibri-iris-v2.dtb \ 21 | " 22 | KERNEL_DEVICETREE:use-mainline-bsp = "${KERNEL_DTB_PREFIX}imx6dl-colibri-eval-v3.dtb" 23 | KERNEL_IMAGETYPE = "zImage" 24 | # The kernel lives in a seperate FAT partition, don't deploy it in /boot/ 25 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 26 | 27 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 28 | PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex" 29 | 30 | UBOOT_SUFFIX = "img" 31 | SPL_BINARY = "SPL" 32 | UBOOT_CONFIG ??= "spl" 33 | UBOOT_CONFIG[spl] = "colibri_imx6_defconfig,,u-boot.img" 34 | UBOOT_MAKE_TARGET = "" 35 | UBOOT_ENTRYPOINT:use-mainline-bsp = "0x10008000" 36 | 37 | IMAGE_FSTYPES += "tar.xz" 38 | # wic support 39 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 40 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 41 | WKS_FILE = "sdimage-bootpart.wks" 42 | 43 | MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g" 44 | MACHINE_FIRMWARE:remove = "firmware-imx-epdc" 45 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq/0001-libtraceevent-Fix-build-with-binutils-2.35.patch: -------------------------------------------------------------------------------- 1 | From 39efdd94e314336f4acbac4c07e0f37bdc3bef71 Mon Sep 17 00:00:00 2001 2 | From: Ben Hutchings 3 | Date: Sat, 25 Jul 2020 02:06:23 +0100 4 | Subject: [PATCH] libtraceevent: Fix build with binutils 2.35 5 | 6 | In binutils 2.35, 'nm -D' changed to show symbol versions along with 7 | symbol names, with the usual @@ separator. When generating 8 | libtraceevent-dynamic-list we need just the names, so strip off the 9 | version suffix if present. 10 | 11 | Upstream-Status: Backport 12 | 13 | Signed-off-by: Ben Hutchings 14 | Tested-by: Salvatore Bonaccorso 15 | Reviewed-by: Steven Rostedt 16 | Cc: linux-trace-devel@vger.kernel.org 17 | Cc: stable@vger.kernel.org 18 | Signed-off-by: Arnaldo Carvalho de Melo 19 | --- 20 | tools/lib/traceevent/plugins/Makefile | 2 +- 21 | 1 file changed, 1 insertion(+), 1 deletion(-) 22 | 23 | diff --git a/tools/lib/traceevent/plugins/Makefile b/tools/lib/traceevent/plugins/Makefile 24 | index 349bb81482ab..680d883efe05 100644 25 | --- a/tools/lib/traceevent/plugins/Makefile 26 | +++ b/tools/lib/traceevent/plugins/Makefile 27 | @@ -197,7 +197,7 @@ define do_generate_dynamic_list_file 28 | xargs echo "U w W" | tr 'w ' 'W\n' | sort -u | xargs echo`;\ 29 | if [ "$$symbol_type" = "U W" ];then \ 30 | (echo '{'; \ 31 | - $(NM) -u -D $1 | awk 'NF>1 {print "\t"$$2";"}' | sort -u;\ 32 | + $(NM) -u -D $1 | awk 'NF>1 {sub("@.*", "", $$2); print "\t"$$2";"}' | sort -u;\ 33 | echo '};'; \ 34 | ) > $2; \ 35 | else \ 36 | -- 37 | 2.17.1 38 | 39 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq/0001-patman-Update-command.Run-to-handle-failure-better.patch: -------------------------------------------------------------------------------- 1 | From 6eace398072a62e74f10f412ffadfe51b7402395 Mon Sep 17 00:00:00 2001 2 | From: Simon Glass 3 | Date: Sat, 24 Aug 2019 07:22:42 -0600 4 | Subject: [PATCH] patman: Update command.Run() to handle failure better 5 | 6 | At present tools are not expected to fail. If they do an exception is 7 | raised but there is no detail about what went wrong. This makes it hard 8 | to debug if something does actually go wrong. 9 | 10 | Fix this by outputting both stderr and stdout on failure. 11 | 12 | Upstream-Status: Backport 13 | 14 | Signed-off-by: Simon Glass 15 | --- 16 | tools/patman/tools.py | 10 ++++++++-- 17 | 1 file changed, 8 insertions(+), 2 deletions(-) 18 | 19 | diff --git a/tools/patman/tools.py b/tools/patman/tools.py 20 | index 97441ca796..0952681579 100644 21 | --- a/tools/patman/tools.py 22 | +++ b/tools/patman/tools.py 23 | @@ -205,8 +205,14 @@ def Run(name, *args): 24 | if tool_search_paths: 25 | env = dict(os.environ) 26 | env['PATH'] = ':'.join(tool_search_paths) + ':' + env['PATH'] 27 | - return command.Run(name, *args, capture=True, capture_stderr=True, 28 | - env=env) 29 | + all_args = (name,) + args 30 | + result = command.RunPipe([all_args], capture=True, capture_stderr=True, 31 | + env=env, raise_on_error=False) 32 | + if result.return_code: 33 | + raise Exception("Error %d running '%s': %s" % 34 | + (result.return_code,' '.join(all_args), 35 | + result.stderr)) 36 | + return result.stdout 37 | except: 38 | if env and not PathHasFile(env['PATH'], name): 39 | msg = "Please install tool '%s'" % name 40 | -- 41 | 2.24.0 42 | 43 | -------------------------------------------------------------------------------- /classes/image_types_digi.bbclass: -------------------------------------------------------------------------------- 1 | inherit image_types 2 | 3 | do_image_boot_ubifs[depends] += " \ 4 | mtd-utils-native:do_populate_sysroot \ 5 | u-boot:do_deploy \ 6 | virtual/kernel:do_deploy \ 7 | " 8 | 9 | IMAGE_CMD:boot.ubifs() { 10 | BOOTIMG_FILES_SYMLINK="${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin" 11 | if [ -n "${KERNEL_DEVICETREE}" ]; then 12 | for DTB in ${KERNEL_DEVICETREE}; do 13 | # Remove potential sub-folders 14 | DTB="$(basename ${DTB})" 15 | if [ -e "${DEPLOY_DIR_IMAGE}/${DTB}" ]; then 16 | BOOTIMG_FILES_SYMLINK="${BOOTIMG_FILES_SYMLINK} ${DEPLOY_DIR_IMAGE}/${DTB}" 17 | fi 18 | done 19 | fi 20 | 21 | # Create temporary folder 22 | TMP_BOOTDIR="$(mktemp -d ${IMGDEPLOYDIR}/boot.XXXXXX)" 23 | 24 | # Hard-link BOOTIMG_FILES into the temporary folder with the symlink filename 25 | for item in ${BOOTIMG_FILES_SYMLINK}; do 26 | orig="$(readlink -e ${item})" 27 | ln "${orig}" "${TMP_BOOTDIR}/$(basename ${item})" 28 | done 29 | 30 | # Hard-link extlinux.conf file if available 31 | if [ "${UBOOT_EXTLINUX}" = "1" ]; then 32 | mkdir -p ${TMP_BOOTDIR}/${UBOOT_EXTLINUX_INSTALL_DIR} 33 | orig="$(readlink -e ${DEPLOY_DIR_IMAGE}/${UBOOT_EXTLINUX_CONF_NAME})" 34 | ln "${orig}" "${TMP_BOOTDIR}${UBOOT_EXTLINUX_INSTALL_DIR}/${UBOOT_EXTLINUX_CONF_NAME}" 35 | fi 36 | 37 | # Hard-link boot script if available 38 | if [ -n "${UBOOT_BOOTSCRIPT}" ]; then 39 | orig="$(readlink -e ${DEPLOY_DIR_IMAGE}/${UBOOT_BOOTSCRIPT})" 40 | ln "${orig}" "${TMP_BOOTDIR}/${UBOOT_BOOTSCRIPT}" 41 | fi 42 | 43 | # Build UBIFS boot image out of temp folder 44 | mkfs.ubifs -r "${TMP_BOOTDIR}" -o "${IMGDEPLOYDIR}/${IMAGE_NAME}.boot.ubifs" ${MKUBIFS_BOOT_ARGS} 45 | 46 | # Remove the temporary folder 47 | rm -rf ${TMP_BOOTDIR} 48 | } 49 | 50 | # Remove the default ".rootfs." suffix for 'boot.ubifs' images 51 | do_image_boot_ubifs[imgsuffix] = "." 52 | -------------------------------------------------------------------------------- /conf/machine/imx6sl-warp.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: WaRP 3 | #@SOC: i.MX6SL 4 | #@DESCRIPTION: Machine configuration for i.MX6SL WaRP board. 5 | #@MAINTAINER: Otavio Salvador 6 | 7 | #Warp has an eMMC that stores the bootloader, kernel, dtb and rootfs. 8 | #An easy way to flash the generated .sdcard image is 9 | #following these steps: 10 | # 11 | # 1.Connect the serial to USB adapter from Warp to the host PC 12 | # 2.Connect the USB OTG Warp port to the host PC 13 | # (Warp can be powered via USB OTG port). 14 | # 3.In the U-boot prompt type: 15 | # => ums 0 mmc 0 16 | # 4.Then the Warp eMMC will be mounted as a USB gadget in the host PC 17 | # 5.On the host PC, copy the generated .sdcard image into Warp's eMMC: 18 | # $ umount /dev/ 19 | # $ sudo dd if=.sdcard of=/dev/ 20 | # 21 | #WARNING: Double check by running dmesg on the host PC which is the 22 | #correct node that corresponds to the Warp board. Passing an incorrect 23 | #device number may overwrite the host PC file system, causing boot issues there. 24 | 25 | MACHINEOVERRIDES =. "mx6sl:" 26 | 27 | include conf/machine/include/imx-base.inc 28 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 29 | 30 | IMX_DEFAULT_BSP = "mainline" 31 | 32 | # WaRP uses eMMC boot partition by default and the u-boot inside .sdcard image 33 | # does not override it. However, build u-boot binary anyway in order to provide 34 | # a binary to be used if an update is needed 35 | # see how-to override eMMC boot partition on the following link 36 | # http://git.denx.de/?p=u-boot.git;a=blob;f=board/warp/README 37 | EXTRA_IMAGEDEPENDS += "u-boot" 38 | 39 | UBOOT_MACHINE ?= "warp_defconfig" 40 | UBOOT_SUFFIX = "imx" 41 | 42 | KERNEL_DEVICETREE = "imx6sl-warp.dtb" 43 | 44 | SERIAL_CONSOLES = "115200;ttymxc0" 45 | 46 | MACHINE_FEATURES += "wifi bluetooth serial" 47 | MACHINE_EXTRA_RRECOMMENDS += "bcm4330-nvram-config" 48 | -------------------------------------------------------------------------------- /conf/machine/imx6qdl-variscite-som.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Variscite i.MX6Q/DL VAR-SOM-MX6 3 | #@SOC: i.MX6Q/DL 4 | #@DESCRIPTION: Machine configuration for Variscite i.MX6Q/DL VAR-SOM-MX6 5 | #@MAINTAINER: Fabio Berton 6 | 7 | MACHINEOVERRIDES =. "mx6q:mx6dl:" 8 | 9 | DEFAULTTUNE ?= "cortexa9thf-neon" 10 | require conf/machine/include/imx-base.inc 11 | require conf/machine/include/arm/armv7a/tune-cortexa9.inc 12 | 13 | PREFERRED_PROVIDER_virtual/kernel = "linux-variscite" 14 | PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp ??= "linux-fslc" 15 | 16 | KERNEL_DEVICETREE = " \ 17 | imx6dl-var-som-cap.dtb \ 18 | imx6dl-var-som-res.dtb \ 19 | imx6dl-var-som-vsc.dtb \ 20 | imx6dl-var-som-solo-cap.dtb \ 21 | imx6dl-var-som-solo-res.dtb \ 22 | imx6dl-var-som-solo-vsc.dtb \ 23 | imx6q-var-som-cap.dtb \ 24 | imx6q-var-som-res.dtb \ 25 | imx6q-var-som-vsc.dtb \ 26 | " 27 | 28 | KERNEL_DEVICETREE:use-mainline-bsp = " \ 29 | imx6q-var-som-vsc.dtb \ 30 | " 31 | 32 | KERNEL_IMAGETYPE = "uImage" 33 | 34 | UBOOT_SPL_BUILD = "yes" 35 | UBOOT_MAKE_TARGET = "all" 36 | UBOOT_SUFFIX = "img" 37 | WKS_FILE = "imx-uboot-spl-bootpart.wks.in" 38 | 39 | PREFERRED_PROVIDER_virtual/bootloader = "u-boot-variscite" 40 | PREFERRED_PROVIDER_u-boot = "u-boot-variscite" 41 | UBOOT_ENTRYPOINT:use-mainline-bsp = "0x10008000" 42 | 43 | UBOOT_CONFIG ??= "nand sd" 44 | UBOOT_CONFIG[sd] = "mx6var_som_sd_config,sdcard" 45 | UBOOT_CONFIG[nand] = "mx6var_som_nand_config,ubifs" 46 | 47 | SPL_BINARY = "SPL" 48 | 49 | ## NAND 512MB 50 | UBI_ROOT_FS_NAME = "[rootfs]" 51 | UBI_VOLNAME = "rootfs" 52 | MKUBIFS_ARGS = " -m 2048 -e 124KiB -c 3965 -F " 53 | UBINIZE_ARGS = " -m 2048 -p 128KiB -s 2048 -O 2048 " 54 | 55 | SERIAL_CONSOLES = "115200;ttymxc0" 56 | 57 | USE_VT = "0" 58 | 59 | MACHINE_FIRMWARE:append = " linux-firmware-wl12xx linux-firmware-wl18xx ti-18xx-wlconf" 60 | 61 | MACHINE_FEATURES += " pci bluetooth touchscreen wifi" 62 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0007-lx2160a-load-dpl-into-0x80001000-instead-of-0x80d000.patch: -------------------------------------------------------------------------------- 1 | From 422b44970b160ee2e8752552a6232e50106a7bd8 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 4 May 2020 23:09:52 +0300 4 | Subject: [PATCH 07/17] lx2160a: load dpl into 0x80001000 instead of 0x80d00000 5 | 6 | and enlarge the image size to 0x1000 blocks 7 | 8 | Upstream-Status: Inappropriate [Solid-Run BSP] 9 | 10 | Signed-off-by: Rabeeh Khoury 11 | --- 12 | include/configs/lx2160a_common.h | 8 ++++---- 13 | 1 file changed, 4 insertions(+), 4 deletions(-) 14 | 15 | diff --git a/include/configs/lx2160a_common.h b/include/configs/lx2160a_common.h 16 | index c6a6a96ff0..5b9808b2ef 100644 17 | --- a/include/configs/lx2160a_common.h 18 | +++ b/include/configs/lx2160a_common.h 19 | @@ -293,21 +293,21 @@ int select_i2c_ch_pca9547_sec(unsigned char ch); 20 | 21 | #define SD_BOOTCOMMAND \ 22 | "env exists mcinitcmd && mmcinfo; " \ 23 | - "mmc read 0x80d00000 0x6800 0x800; " \ 24 | + "mmc read 0x80001000 0x6800 0x1000; " \ 25 | "env exists mcinitcmd && env exists secureboot " \ 26 | " && mmc read 0x806C0000 0x3600 0x20 " \ 27 | "&& esbc_validate 0x806C0000;env exists mcinitcmd " \ 28 | - "&& fsl_mc lazyapply dpl 0x80d00000;" \ 29 | + "&& fsl_mc lazyapply dpl 0x80001000;" \ 30 | "run distro_bootcmd;run sd_bootcmd;" \ 31 | "env exists secureboot && esbc_halt;" 32 | 33 | #define SD2_BOOTCOMMAND \ 34 | "mmc dev 1; env exists mcinitcmd && mmcinfo; " \ 35 | - "mmc read 0x80d00000 0x6800 0x800; " \ 36 | + "mmc read 0x80001000 0x6800 0x1000; " \ 37 | "env exists mcinitcmd && env exists secureboot " \ 38 | " && mmc read 0x806C0000 0x3600 0x20 " \ 39 | "&& esbc_validate 0x806C0000;env exists mcinitcmd " \ 40 | - "&& fsl_mc lazyapply dpl 0x80d00000;" \ 41 | + "&& fsl_mc lazyapply dpl 0x80001000;" \ 42 | "run distro_bootcmd;run emmc_bootcmd;" \ 43 | "env exists secureboot && esbc_halt;" 44 | 45 | -- 46 | 2.17.1 47 | 48 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-toradex_2020.07.bb: -------------------------------------------------------------------------------- 1 | SUMMARY = "U-Boot bootloader with support for Toradex Computer on Modules" 2 | HOMEPAGE = "http://www.denx.de/wiki/U-Boot/WebHome" 3 | SECTION = "bootloaders" 4 | LICENSE = "GPL-2.0-or-later" 5 | LIC_FILES_CHKSUM = "file://Licenses/README;md5=30503fd321432fc713238f582193b78e" 6 | 7 | require recipes-bsp/u-boot/u-boot.inc 8 | 9 | DEPENDS += "bc-native dtc-native bison-native" 10 | 11 | PV = "2020.07+git${SRCPV}" 12 | SRC_URI = " \ 13 | git://git.toradex.com/u-boot-toradex.git;branch=${SRCBRANCH} \ 14 | file://fw_env.config \ 15 | " 16 | SRCBRANCH = "toradex_2020.07" 17 | SRCREV = "ab862daf5d5a2eebf305c5c125f0463b0ff34161" 18 | 19 | UBOOT_INITIAL_ENV = "u-boot-initial-env" 20 | 21 | PROVIDES += "u-boot" 22 | 23 | B = "${WORKDIR}/build" 24 | S = "${WORKDIR}/git" 25 | do_configure[cleandirs] = "${B}" 26 | 27 | inherit fsl-u-boot-localversion 28 | 29 | nand_padding () { 30 | # pad the end of U-Boot with 0x00 up to the the end of the CSF area 31 | #PAD_END=$(echo -n "0x"; od -X -j 0x24 -N 4 u-boot.imx | sed -e '/................/!d' -e 's/........\(.*\)/\1/') 32 | #PAD_END=$(( $PAD_END - 0x400 )) 33 | #objcopy -I binary -O binary --pad-to $PAD_END u-boot.imx u-boot.imx.zero-padded 34 | # assume that the above never need more than 10k of padding and skip the 35 | # shell magic to get a correct size. 36 | dd bs=10k count=1 if=/dev/zero | cat u-boot.imx - > u-boot.imx.zero-padded 37 | 38 | # U-Boot is flashed 1k into a NAND block, create a binary which prepends 39 | # U-boot with 1k of zeros to ease flashing 40 | dd bs=1024 count=1 if=/dev/zero | cat - u-boot.imx.zero-padded > u-boot-nand.imx 41 | } 42 | 43 | do_compile:append:colibri-imx6ull () { 44 | nand_padding 45 | } 46 | 47 | do_compile:append:colibri-imx7 () { 48 | nand_padding 49 | } 50 | 51 | do_compile:append:colibri-vf () { 52 | nand_padding 53 | } 54 | 55 | PACKAGE_ARCH = "${MACHINE_ARCH}" 56 | 57 | COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|vf-generic-bsp)" 58 | -------------------------------------------------------------------------------- /conf/machine/nitrogen8mn.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen8M Nano 3 | #@SOC: i.MX8 Nano 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen8M Nano 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx8mn:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | require conf/machine/include/imx-base.inc 12 | require conf/machine/include/arm/armv8a/tune-cortexa53.inc 13 | 14 | # Kernel configuration 15 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 16 | KERNEL_DEVICETREE = "freescale/imx8mn-nitrogen8mn.dtb \ 17 | freescale/imx8mn-nitrogen8mn_som.dtb \ 18 | freescale/imx8mn-nitrogen8mn_som-m4.dtb \ 19 | freescale/imx8mn-nitrogen8_nano.dtb \ 20 | freescale/imx8mn-nitrogen8_nano-m4.dtb \ 21 | " 22 | 23 | KERNEL_IMAGETYPE = "Image" 24 | KERNEL_DEFCONFIG = "boundary_defconfig" 25 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 26 | 27 | # U-Boot configuration 28 | IMX_DEFAULT_BOOTLOADER:imx-nxp-bsp = "u-boot-boundary" 29 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 30 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 31 | PREFERRED_PROVIDER_imx-atf ??= "imx-atf-boundary" 32 | SPL_BINARY = "spl/u-boot-spl.bin" 33 | UBOOT_SUFFIX = "bin" 34 | 35 | UBOOT_CONFIG ??= "1g som_1g" 36 | UBOOT_CONFIG[1g] = "${MACHINE}_1g_defconfig,sdcard" 37 | UBOOT_CONFIG[som_1g] = "${MACHINE}_som_1g_defconfig,sdcard" 38 | 39 | ATF_PLATFORM = "imx8mn" 40 | 41 | DDR_FIRMWARE_NAME = "\ 42 | lpddr4_pmu_train_1d_imem.bin \ 43 | lpddr4_pmu_train_1d_dmem.bin \ 44 | lpddr4_pmu_train_2d_imem.bin \ 45 | lpddr4_pmu_train_2d_dmem.bin \ 46 | " 47 | 48 | IMAGE_BOOT_FILES:append = " \ 49 | boot.scr-${MACHINE};boot.scr \ 50 | upgrade.scr-${MACHINE};upgrade.scr \ 51 | flash.bin-${MACHINE}-1g;u-boot.${MACHINE}_1g \ 52 | flash.bin-${MACHINE}-som_1g;u-boot.${MACHINE}_som_1g \ 53 | " 54 | 55 | # wic support 56 | WKS_FILE = "sdimage-bootpart.wks" 57 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 58 | 59 | SERIAL_CONSOLES = "115200;ttymxc1" 60 | 61 | MACHINE_FEATURES += " pci wifi bluetooth" 62 | -------------------------------------------------------------------------------- /recipes-bsp/imx-atf/imx-atf-boundary_2.8.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2017-2023 NXP 2 | 3 | DESCRIPTION = "i.MX ARM Trusted Firmware" 4 | SECTION = "BSP" 5 | LICENSE = "BSD-3-Clause" 6 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9" 7 | 8 | PROVIDES = "imx-atf" 9 | 10 | PV .= "+git${SRCPV}" 11 | 12 | SRCBRANCH = "boundary-lf-6.1.22-2.0.0" 13 | SRC_URI = "git://github.com/boundarydevices/imx-atf.git;branch=${SRCBRANCH};protocol=https \ 14 | " 15 | SRCREV = "7e3484cc10bfc9a53c1e64867b3fb99761f7c375" 16 | 17 | S = "${WORKDIR}/git" 18 | 19 | inherit deploy 20 | 21 | BOOT_TOOLS = "imx-boot-tools" 22 | 23 | ATF_PLATFORM ?= "INVALID" 24 | ATF_PLATFORM:mx8mq-nxp-bsp = "imx8mq" 25 | ATF_PLATFORM:mx8mm-nxp-bsp = "imx8mm" 26 | ATF_PLATFORM:mx8mn-nxp-bsp = "imx8mn" 27 | ATF_PLATFORM:mx8mp-nxp-bsp = "imx8mp" 28 | 29 | EXTRA_OEMAKE += " \ 30 | CROSS_COMPILE="${TARGET_PREFIX}" \ 31 | PLAT=${ATF_PLATFORM} \ 32 | " 33 | 34 | # Let the Makefile handle setting up the CFLAGS and LDFLAGS as it is a standalone application 35 | CFLAGS[unexport] = "1" 36 | LDFLAGS[unexport] = "1" 37 | AS[unexport] = "1" 38 | LD[unexport] = "1" 39 | 40 | BUILD_OPTEE = "${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'true', 'false', d)}" 41 | 42 | do_compile() { 43 | # Clear LDFLAGS to avoid the option -Wl recognize issue 44 | unset LDFLAGS 45 | oe_runmake bl31 46 | if ${BUILD_OPTEE}; then 47 | oe_runmake clean BUILD_BASE=build-optee 48 | oe_runmake BUILD_BASE=build-optee SPD=opteed bl31 49 | fi 50 | } 51 | 52 | do_install[noexec] = "1" 53 | 54 | do_deploy() { 55 | install -Dm 0644 ${S}/build/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin 56 | if ${BUILD_OPTEE}; then 57 | install -m 0644 ${S}/build-optee/${ATF_PLATFORM}/release/bl31.bin ${DEPLOYDIR}/bl31-${ATF_PLATFORM}.bin-optee 58 | fi 59 | } 60 | addtask deploy after do_compile 61 | 62 | PACKAGE_ARCH = "${MACHINE_SOCARCH}" 63 | COMPATIBLE_MACHINE = "(nitrogen8m|nitrogen8mm|nitrogen8mn|nitrogen8mp)" 64 | -------------------------------------------------------------------------------- /conf/machine/colibri-vf.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Colibri VF50/VF61 3 | #@SOC: VF500/VF610 4 | #@DESCRIPTION: Machine configuration for Toradex Colibri VF50/VF61 powered by Freescale Vybrid SoC 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "vf:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa5.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-toradex" 13 | 14 | KERNEL_IMAGETYPE = "zImage" 15 | 16 | KERNEL_DEVICETREE = " \ 17 | vf500-colibri-eval-v3.dtb \ 18 | vf610-colibri-eval-v3.dtb \ 19 | " 20 | 21 | KERNEL_DEVICETREE:append:use-nxp-bsp = " \ 22 | vf500-colibri-aster.dtb \ 23 | vf610-colibri-aster.dtb \ 24 | " 25 | 26 | # U-Boot of our newer release read the Kernel and device tree from static UBI volumes, 27 | # hence no need to deploy the kernel binary in the image itself 28 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 29 | 30 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 31 | PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex" 32 | PREFERRED_PROVIDER_virtual/kernel-module-mcc ?= "kernel-module-mcc-toradex" 33 | PREFERRED_PROVIDER_virtual/kernel-module-mcc-dev ?= "kernel-module-mcc-toradex" 34 | PREFERRED_VERSION_mqxboot ?= "1.%" 35 | PREFERRED_VERSION_weston:use-nxp-bsp = "" 36 | 37 | # U-Boot NAND binary includes 0x400 padding required for NAND boot 38 | UBOOT_BINARY = "u-boot-nand.imx" 39 | UBOOT_MAKE_TARGET = "u-boot.imx" 40 | UBOOT_MACHINE ?= "colibri_vf_defconfig" 41 | UBOOT_SUFFIX = "imx" 42 | 43 | IMAGE_FSTYPES += "tar.xz ubifs" 44 | # wic support 45 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 46 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 47 | WKS_FILE = "sdimage-bootpart.wks" 48 | 49 | # Enable free --space-fixup (-F) by default, this allows DFU updates 50 | MKUBIFS_ARGS = " -c 8112 -e 124KiB -m 2KiB -F" 51 | UBINIZE_ARGS = " -p 128KiB -m 2048 -s 2048" 52 | UBI_VOLNAME = "rootfs" 53 | 54 | SERIAL_CONSOLES = "115200;ttyLP0" 55 | 56 | MACHINE_FEATURES += "usbgadget usbhost vfat alsa touchscreen" 57 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0011-nvme-flush-dcache-on-both-r-w-and-the-prp-list.patch: -------------------------------------------------------------------------------- 1 | From bdc721890d0a68d297959052394da75112080bfe Mon Sep 17 00:00:00 2001 2 | From: Patrick Wildt 3 | Date: Wed, 16 Oct 2019 23:22:50 +0200 4 | Subject: [PATCH 11/17] nvme: flush dcache on both r/w, and the prp list 5 | 6 | It's possible that the data cache for the buffer still holds data 7 | to be flushed to memory, since the buffer was probably used as stack 8 | before. Thus we need to make sure to flush it also on reads, since 9 | it's possible that the cache is automatically flused to memory after 10 | the NVMe DMA transfer happened, thus overwriting the NVMe transfer's 11 | data. Also add a missing dcache flush for the prp list. 12 | 13 | Upstream-Status: Backport [Solid-Run BSP] 14 | 15 | Signed-off-by: Patrick Wildt 16 | Reviewed-by: Bin Meng 17 | (cherry picked from commit 8c403402ca691c967516481b6bc2c879d683a73d) 18 | Signed-off-by: Olof Johansson 19 | --- 20 | drivers/nvme/nvme.c | 8 +++++--- 21 | 1 file changed, 5 insertions(+), 3 deletions(-) 22 | 23 | diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c 24 | index ee6b581d9e..53ff6e89aa 100644 25 | --- a/drivers/nvme/nvme.c 26 | +++ b/drivers/nvme/nvme.c 27 | @@ -123,6 +123,9 @@ static int nvme_setup_prps(struct nvme_dev *dev, u64 *prp2, 28 | } 29 | *prp2 = (ulong)dev->prp_pool; 30 | 31 | + flush_dcache_range((ulong)dev->prp_pool, (ulong)dev->prp_pool + 32 | + dev->prp_entry_num * sizeof(u64)); 33 | + 34 | return 0; 35 | } 36 | 37 | @@ -705,9 +708,8 @@ static ulong nvme_blk_rw(struct udevice *udev, lbaint_t blknr, 38 | u16 lbas = 1 << (dev->max_transfer_shift - ns->lba_shift); 39 | u64 total_lbas = blkcnt; 40 | 41 | - if (!read) 42 | - flush_dcache_range((unsigned long)buffer, 43 | - (unsigned long)buffer + total_len); 44 | + flush_dcache_range((unsigned long)buffer, 45 | + (unsigned long)buffer + total_len); 46 | 47 | c.rw.opcode = read ? nvme_cmd_read : nvme_cmd_write; 48 | c.rw.flags = 0; 49 | -- 50 | 2.17.1 51 | 52 | -------------------------------------------------------------------------------- /conf/machine/colibri-imx7-nand.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Toradex Colibri iMX7D/S (NAND) 3 | #@SOC: i.MX 7Dual / i.MX 7Solo 4 | #@DESCRIPTION: Machine configuration for Toradex Colibri iMX7 SOM (NAND) 5 | #@MAINTAINER: Max Krummenacher 6 | 7 | MACHINEOVERRIDES =. "mx7:mx7d:colibri-imx7:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | PREFERRED_PROVIDER_virtual/kernel:use-nxp-bsp ??= "linux-toradex" 13 | KBUILD_DEFCONFIG:use-nxp-bsp ?= "colibri_imx7_defconfig" 14 | KERNEL_IMAGETYPE = "zImage" 15 | 16 | KERNEL_DEVICETREE = " \ 17 | imx7d-colibri-eval-v3.dtb imx7s-colibri-eval-v3.dtb \ 18 | imx7d-colibri-aster.dtb imx7s-colibri-aster.dtb \ 19 | " 20 | 21 | KERNEL_DEVICETREE:append:use-nxp-bsp = " \ 22 | imx7d-colibri-iris.dtb imx7s-colibri-iris.dtb \ 23 | imx7d-colibri-iris-v2.dtb imx7s-colibri-iris-v2.dtb \ 24 | " 25 | 26 | # U-Boot of our newer release read the Kernel and device tree from static UBI 27 | # volumes, hence no need to deploy the kernel binary in the image itself 28 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 29 | 30 | IMX_DEFAULT_BOOTLOADER = "u-boot-toradex" 31 | PREFERRED_PROVIDER_u-boot-default-script ?= "u-boot-script-toradex" 32 | 33 | # U-Boot NAND binary includes 0x400 padding required for NAND boot 34 | UBOOT_BINARY = "u-boot-nand.imx" 35 | UBOOT_MAKE_TARGET = "u-boot.imx" 36 | UBOOT_MACHINE ?= "colibri_imx7_defconfig" 37 | UBOOT_SUFFIX = "imx" 38 | 39 | IMAGE_FSTYPES += "tar.xz" 40 | # wic support 41 | IMAGE_BOOT_FILES:append = " boot.scr-${MACHINE};boot.scr" 42 | WKS_FILE_DEPENDS:append = " u-boot-default-script" 43 | WKS_FILE = "sdimage-bootpart.wks" 44 | 45 | # Enable free --space-fixup (-F) by default, this allows DFU updates 46 | MKUBIFS_ARGS = " -c 8112 -e 124KiB -m 2KiB -F" 47 | UBINIZE_ARGS = " -p 128KiB -m 2048 -s 2048" 48 | UBI_VOLNAME = "rootfs" 49 | 50 | SERIAL_CONSOLES = "115200;ttymxc0" 51 | 52 | MACHINE_FEATURES += "screen usbgadget usbhost vfat ext2 alsa touchscreen wifi bluetooth 3g" 53 | MACHINE_FIRMWARE:remove = "firmware-imx-epdc" 54 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0005-armv8-lx2160acex7-lx2160acex-device-tree.patch: -------------------------------------------------------------------------------- 1 | From bd96fd21fafd7560dba1d5a6f893e4a7d0b7ee74 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Sun, 28 Jul 2019 13:37:22 +0300 4 | Subject: [PATCH 05/17] armv8: lx2160acex7: lx2160acex device tree 5 | 6 | Based on NXP's LX2160ARDB device tree; it defines - 7 | 1. MX35X based SPI flash 8 | 2. SDHC0 (SD card) and SDHC1 (eMMC) 9 | 3. 4 SATA ports that depending on SERDES configuration they can get 10 | connected to external SATA drives 11 | 12 | Upstream-Status: Inappropriate [Solid-Run BSP] 13 | 14 | Signed-off-by: Rabeeh Khoury 15 | --- 16 | arch/arm/dts/fsl-lx2160a-cex7.dts | 63 +++++++++++++++++++++++++++++++ 17 | 1 file changed, 63 insertions(+) 18 | create mode 100644 arch/arm/dts/fsl-lx2160a-cex7.dts 19 | 20 | diff --git a/arch/arm/dts/fsl-lx2160a-cex7.dts b/arch/arm/dts/fsl-lx2160a-cex7.dts 21 | new file mode 100644 22 | index 0000000000..4fbcaafb0e 23 | --- /dev/null 24 | +++ b/arch/arm/dts/fsl-lx2160a-cex7.dts 25 | @@ -0,0 +1,63 @@ 26 | +// SPDX-License-Identifier: GPL-2.0+ OR X11 27 | +/* 28 | + * SolidRun LX2160ACEX7 device tree source 29 | + * 30 | + * Author: Rabeeh Khoury 31 | + * 32 | + * Copyright 2019 SolidRun ltd. 33 | + * 34 | + */ 35 | + 36 | +/dts-v1/; 37 | + 38 | +#include "fsl-lx2160a.dtsi" 39 | + 40 | +/ { 41 | + model = "SolidRun LX2160ACEX7 COM express type 7 based board"; 42 | + compatible = "fsl,lx2160acex7", "fsl,lx2160a"; 43 | + 44 | + aliases { 45 | + spi0 = &fspi; 46 | + }; 47 | +}; 48 | + 49 | +&fspi { 50 | + bus-num = <0>; 51 | + status = "okay"; 52 | + 53 | + qflash0: MT35XU512ABA1G12@0 { 54 | + #address-cells = <1>; 55 | + #size-cells = <1>; 56 | + compatible = "spi-flash"; 57 | + spi-max-frequency = <50000000>; 58 | + reg = <0>; 59 | + /* The following setting enables 1-1-8 (CMD-ADDR-DATA) mode */ 60 | + fspi-rx-bus-width = <8>; /* 8 FSPI Rx lines */ 61 | + fspi-tx-bus-width = <1>; /* 1 FSPI Tx line */ 62 | + }; 63 | + 64 | +}; 65 | + 66 | +&esdhc0 { 67 | + status = "okay"; 68 | +}; 69 | + 70 | +&esdhc1 { 71 | + status = "okay"; 72 | +}; 73 | + 74 | +&sata0 { 75 | + status = "okay"; 76 | +}; 77 | + 78 | +&sata1 { 79 | + status = "okay"; 80 | +}; 81 | + 82 | +&sata2 { 83 | + status = "okay"; 84 | +}; 85 | + 86 | +&sata3 { 87 | + status = "okay"; 88 | +}; 89 | -- 90 | 2.17.1 91 | 92 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/cubox-i/brcmfmac4330-sdio.txt: -------------------------------------------------------------------------------- 1 | manfid=0x2d0 2 | prodid=0x0532 3 | vendid=0x14e4 4 | devid=0x4360 5 | boardtype=0x0532 6 | boardrev=0x20 7 | boardflags=0x10080201 8 | 9 | nocrc=1 10 | xtalfreq=37400 11 | xtalmode=0x20,0x4,0 12 | boardnum=22 13 | macaddr=00:90:4c:c5:12:38 14 | ag0=252 15 | ag1=252 16 | aa2g=1 17 | aa5g=1 18 | ccode=EU 19 | regrev=5 20 | 21 | #for BT-coexistence 22 | btc_params80=0 23 | btc_params6=10 24 | btc_params8=10000 25 | 26 | sd_gpout=0 27 | # sd_oobonly=1 28 | muxenab=0x10 29 | 30 | # 2G PA param_B42R 110927 31 | pa0b0=0x12E4 32 | pa0b1=0xFE09 33 | pa0b2=0xFF9A 34 | #pa0itssit=62 35 | rssismf2g=0xa 36 | rssismc2g=0x3 37 | rssisav2g=0x7 38 | 39 | # rssi params for 5GHz B42R_110803 40 | #rssismf5g=0x4 41 | rssismf5g=0xa 42 | rssismc5g=0x7 43 | rssisav5g=0x1 44 | #PA parameters for lower band 45 | pa1lob0=0x144F 46 | pa1lob1=0xFD6B 47 | pa1lob2=0xFF3B 48 | #PA parameters for midband 49 | pa1b0=0x139C 50 | pa1b1=0xFD87 51 | pa1b2=0xFF4F 52 | #PA parameters for high band 53 | pa1hib0=0x12CA 54 | pa1hib1=0xFD9A 55 | pa1hib2=0xFF4E 56 | 57 | # 2G PA offset 58 | maxp2ga0=64 59 | sromrev=3 60 | cckpo=0 61 | ofdm2gpo=0x66666666 62 | mcs2gpo0=0xaaaa 63 | mcs2gpo1=0xaaaa 64 | 65 | # 5G PA offset 66 | maxp5ga0=66 67 | maxp5gla0=66 68 | maxp5gha0=66 69 | ofdm5gpo=0x22222222 70 | ofdm5glpo=0x11111111 71 | ofdm5ghpo=0x22222222 72 | mcs5gpo0=0x6666 73 | mcs5gpo1=0x6666 74 | mcs5glpo0=0x5555 75 | mcs5glpo1=0x5555 76 | mcs5ghpo0=0x6666 77 | mcs5ghpo1=0x6666 78 | 79 | cckPwrOffset=4 80 | cckdigfilttype=22 81 | ofdmdigfilttype=2 82 | extpagain5g=2 83 | #wl0id=0x431b 84 | 85 | # For 2GHz Tx EVM/SM 86 | rfreg033=0x19 87 | rfreg033_cck=0x1d 88 | pacalidx2g=65 89 | dacrate2g=160 90 | txalpfbyp2g=1 91 | bphyscale=17 92 | 93 | # 5GHz LOFT and IQ CAL 94 | txgaintbl5g=1 95 | txiqlopapu5g=1 96 | txiqlopag5g=0x10 97 | iqlocalidx5g=24 98 | 99 | # 5GHz Noise CAL parameter 100 | noise_cal_po_5g=5 101 | noise_cal_enable_5g=0 102 | 103 | # 2GHz RxPER at low rates 104 | noise_cal_ref_2g=56 105 | noise_cal_po_bias_2g=-4 106 | noise_cal_enable_2g=1 107 | 108 | # Max input level on a-band 109 | triso5g=9 110 | 111 | # Tx power control, especially temp. 112 | tssitime=1 113 | 114 | #fc+1.7GHz Spur Elimination 115 | loidacmode5g=1 116 | 117 | swctrlmap_2g=0x84048404, 0x82028202, 0x84048404, 0x010202, 0x1ff 118 | swctrlmap_5g=0xC040C040, 0xB030A020, 0xA020C040, 0x010A02, 0x2F8 119 | -------------------------------------------------------------------------------- /conf/machine/imx6ul-kontron.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Kontron N63XX/N64XX SoM based boards 3 | #@SOC: i.MX6UL/i.MX6ULL 4 | #@DESCRIPTION: Machine configuration for Kontron N63XX/N64XX SoM based boards 5 | #@MAINTAINER: Frieder Schrempf 6 | 7 | MACHINEOVERRIDES =. "mx6ul:" 8 | 9 | include conf/machine/include/imx-base.inc 10 | include conf/machine/include/arm/armv7a/tune-cortexa7.inc 11 | 12 | IMX_DEFAULT_BSP = "mainline" 13 | 14 | PREFERRED_PROVIDER_virtual/kernel ?= "linux-kontron" 15 | PREFERRED_PROVIDER_u-boot ?= "u-boot-kontron" 16 | PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-kontron" 17 | 18 | KERNEL_CLASSES ?= " kernel-fitimage " 19 | KERNEL_IMAGETYPES ?= "fitImage" 20 | KERNEL_DEVICETREE = " \ 21 | imx6ul-kontron-n6310-s.dtb \ 22 | imx6ul-kontron-n6310-s-43.dtb \ 23 | imx6ul-kontron-n6311-s.dtb \ 24 | imx6ull-kontron-n6411-s.dtb \ 25 | " 26 | 27 | 28 | SERIAL_CONSOLES = "115200;ttymxc3" 29 | 30 | UBOOT_CONFIG = "kontron-mx6ul" 31 | UBOOT_CONFIG[kontron-mx6ul] = "kontron_mx6ul_defconfig" 32 | 33 | SPL_BINARY = "SPL" 34 | UBOOT_ENTRYPOINT = "0x81000000" 35 | UBOOT_MAKE_TARGET = "u-boot.img SPL" 36 | UBOOT_SUFFIX = "img" 37 | 38 | UBOOT_EXTLINUX ?= "1" 39 | UBOOT_EXTLINUX_LABELS ?= "default" 40 | UBOOT_EXTLINUX_KERNEL_IMAGE ?= "../fitImage" 41 | UBOOT_EXTLINUX_FDTDIR ?= "" 42 | UBOOT_EXTLINUX_KERNEL_ARGS ?= "rootwait" 43 | UBOOT_EXTLINUX_TIMEOUT = "8" 44 | UBOOT_EXTLINUX_LABELS = "kontron-n6310-s kontron-n6311-s kontron-n6310-s-43 kontron-n6411-s" 45 | UBOOT_EXTLINUX_KERNEL_IMAGE_kontron-n6310-s = "../fitImage#conf@imx6ul-kontron-n6310-s.dtb" 46 | UBOOT_EXTLINUX_KERNEL_IMAGE_kontron-n6311-s = "../fitImage#conf@imx6ul-kontron-n6311-s.dtb" 47 | UBOOT_EXTLINUX_KERNEL_IMAGE_kontron-n6310-s-43 = "../fitImage#conf@imx6ul-kontron-n6310-s-43.dtb" 48 | UBOOT_EXTLINUX_KERNEL_IMAGE_kontron-n6411-s = "../fitImage#conf@imx6ull-kontron-n6411-s.dtb" 49 | UBOOT_EXTLINUX_MENU_DESCRIPTION_kontron-n6310-s = "Kontron N6310 S" 50 | UBOOT_EXTLINUX_MENU_DESCRIPTION_kontron-n6311-s = "Kontron N6311 S" 51 | UBOOT_EXTLINUX_MENU_DESCRIPTION_kontron-n6310-s-43 = "Kontron N6310 S 43" 52 | UBOOT_EXTLINUX_MENU_DESCRIPTION_kontron-n6411-s = "Kontron N6411 S" 53 | UBOOT_EXTLINUX_CONSOLE = "console=ttymxc3,115200" 54 | UBOOT_EXTLINUX_ROOT = "root=/dev/mmcblk0p2" 55 | 56 | MACHINE_FEATURES = "usbhost vfat serial ext2 rtc usbgadget" 57 | IMAGE_BOOT_FILES = " \ 58 | extlinux.conf;extlinux/extlinux.conf \ 59 | fitImage \ 60 | " 61 | 62 | WKS_FILES ?= "imx-uboot-spl-bootpart.wks.in" 63 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/imx6sl-warp/brcmfmac4330-sdio.txt: -------------------------------------------------------------------------------- 1 | manfid=0x2d0 2 | prodid=0x0532 3 | vendid=0x14e4 4 | devid=0x4360 5 | boardtype=0x0532 6 | boardrev=0x20 7 | boardflags=0x10080201 8 | 9 | nocrc=1 10 | xtalfreq=37400 11 | xtalmode=0x20,0x4,0 12 | boardnum=22 13 | macaddr=00:90:4c:c5:12:38 14 | ag0=252 15 | ag1=252 16 | aa2g=1 17 | aa5g=1 18 | ccode=EU 19 | regrev=5 20 | 21 | #for BT-coexistence 22 | btc_params80=0 23 | btc_params6=10 24 | btc_params8=10000 25 | 26 | sd_gpout=0 27 | # sd_oobonly=1 28 | muxenab=0x10 29 | 30 | # 2G PA param_B42R 110927 31 | pa0b0=0x12E4 32 | pa0b1=0xFE09 33 | pa0b2=0xFF9A 34 | #pa0itssit=62 35 | rssismf2g=0xa 36 | rssismc2g=0x3 37 | rssisav2g=0x7 38 | 39 | # rssi params for 5GHz B42R_110803 40 | #rssismf5g=0x4 41 | rssismf5g=0xa 42 | rssismc5g=0x7 43 | rssisav5g=0x1 44 | #PA parameters for lower band 45 | pa1lob0=0x144F 46 | pa1lob1=0xFD6B 47 | pa1lob2=0xFF3B 48 | #PA parameters for midband 49 | pa1b0=0x139C 50 | pa1b1=0xFD87 51 | pa1b2=0xFF4F 52 | #PA parameters for high band 53 | pa1hib0=0x12CA 54 | pa1hib1=0xFD9A 55 | pa1hib2=0xFF4E 56 | 57 | # 2G PA offset 58 | maxp2ga0=64 59 | sromrev=3 60 | cckpo=0 61 | ofdm2gpo=0x66666666 62 | mcs2gpo0=0xaaaa 63 | mcs2gpo1=0xaaaa 64 | 65 | # 5G PA offset 66 | maxp5ga0=66 67 | maxp5gla0=66 68 | maxp5gha0=66 69 | ofdm5gpo=0x22222222 70 | ofdm5glpo=0x11111111 71 | ofdm5ghpo=0x22222222 72 | mcs5gpo0=0x6666 73 | mcs5gpo1=0x6666 74 | mcs5glpo0=0x5555 75 | mcs5glpo1=0x5555 76 | mcs5ghpo0=0x6666 77 | mcs5ghpo1=0x6666 78 | 79 | cckPwrOffset=4 80 | cckdigfilttype=22 81 | ofdmdigfilttype=2 82 | extpagain5g=2 83 | #wl0id=0x431b 84 | 85 | # For 2GHz Tx EVM/SM 86 | rfreg033=0x19 87 | rfreg033_cck=0x1d 88 | pacalidx2g=65 89 | dacrate2g=160 90 | txalpfbyp2g=1 91 | bphyscale=17 92 | 93 | # 5GHz LOFT and IQ CAL 94 | txgaintbl5g=1 95 | txiqlopapu5g=1 96 | txiqlopag5g=0x10 97 | iqlocalidx5g=24 98 | 99 | # 5GHz Noise CAL parameter 100 | noise_cal_po_5g=5 101 | noise_cal_enable_5g=0 102 | 103 | # 2GHz RxPER at low rates 104 | noise_cal_ref_2g=56 105 | noise_cal_po_bias_2g=-4 106 | noise_cal_enable_2g=1 107 | 108 | # Max input level on a-band 109 | triso5g=9 110 | 111 | # Tx power control, especially temp. 112 | tssitime=1 113 | 114 | #fc+1.7GHz Spur Elimination 115 | loidacmode5g=1 116 | 117 | swctrlmap_2g=0x84048404, 0x82028202, 0x84048404, 0x010202, 0x1ff 118 | swctrlmap_5g=0xC040C040, 0xB030A020, 0xA020C040, 0x010A02, 0x2F8 119 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/wandboard/brcmfmac4330-sdio.txt: -------------------------------------------------------------------------------- 1 | manfid=0x2d0 2 | prodid=0x0532 3 | vendid=0x14e4 4 | devid=0x4360 5 | boardtype=0x0532 6 | boardrev=0x20 7 | boardflags=0x10080201 8 | 9 | nocrc=1 10 | xtalfreq=37400 11 | xtalmode=0x20,0x4,0 12 | boardnum=22 13 | macaddr=00:90:4c:c5:12:38 14 | ag0=252 15 | ag1=252 16 | aa2g=1 17 | aa5g=1 18 | ccode=EU 19 | regrev=5 20 | 21 | #for BT-coexistence 22 | btc_params80=0 23 | btc_params6=10 24 | btc_params8=10000 25 | 26 | sd_gpout=0 27 | # sd_oobonly=1 28 | muxenab=0x10 29 | 30 | # 2G PA param_B42R 110927 31 | pa0b0=0x12E4 32 | pa0b1=0xFE09 33 | pa0b2=0xFF9A 34 | #pa0itssit=62 35 | rssismf2g=0xa 36 | rssismc2g=0x3 37 | rssisav2g=0x7 38 | 39 | # rssi params for 5GHz B42R_110803 40 | #rssismf5g=0x4 41 | rssismf5g=0xa 42 | rssismc5g=0x7 43 | rssisav5g=0x1 44 | #PA parameters for lower band 45 | pa1lob0=0x144F 46 | pa1lob1=0xFD6B 47 | pa1lob2=0xFF3B 48 | #PA parameters for midband 49 | pa1b0=0x139C 50 | pa1b1=0xFD87 51 | pa1b2=0xFF4F 52 | #PA parameters for high band 53 | pa1hib0=0x12CA 54 | pa1hib1=0xFD9A 55 | pa1hib2=0xFF4E 56 | 57 | # 2G PA offset 58 | maxp2ga0=64 59 | sromrev=3 60 | cckpo=0 61 | ofdm2gpo=0x66666666 62 | mcs2gpo0=0xaaaa 63 | mcs2gpo1=0xaaaa 64 | 65 | # 5G PA offset 66 | maxp5ga0=66 67 | maxp5gla0=66 68 | maxp5gha0=66 69 | ofdm5gpo=0x22222222 70 | ofdm5glpo=0x11111111 71 | ofdm5ghpo=0x22222222 72 | mcs5gpo0=0x6666 73 | mcs5gpo1=0x6666 74 | mcs5glpo0=0x5555 75 | mcs5glpo1=0x5555 76 | mcs5ghpo0=0x6666 77 | mcs5ghpo1=0x6666 78 | 79 | cckPwrOffset=4 80 | cckdigfilttype=22 81 | ofdmdigfilttype=2 82 | extpagain5g=2 83 | #wl0id=0x431b 84 | 85 | # For 2GHz Tx EVM/SM 86 | rfreg033=0x19 87 | rfreg033_cck=0x1d 88 | pacalidx2g=65 89 | dacrate2g=160 90 | txalpfbyp2g=1 91 | bphyscale=17 92 | 93 | # 5GHz LOFT and IQ CAL 94 | txgaintbl5g=1 95 | txiqlopapu5g=1 96 | txiqlopag5g=0x10 97 | iqlocalidx5g=24 98 | 99 | # 5GHz Noise CAL parameter 100 | noise_cal_po_5g=5 101 | noise_cal_enable_5g=0 102 | 103 | # 2GHz RxPER at low rates 104 | noise_cal_ref_2g=56 105 | noise_cal_po_bias_2g=-4 106 | noise_cal_enable_2g=1 107 | 108 | # Max input level on a-band 109 | triso5g=9 110 | 111 | # Tx power control, especially temp. 112 | tssitime=1 113 | 114 | #fc+1.7GHz Spur Elimination 115 | loidacmode5g=1 116 | 117 | swctrlmap_2g=0x84048404, 0x82028202, 0x84048404, 0x010202, 0x1ff 118 | swctrlmap_5g=0xC040C040, 0xB030A020, 0xA020C040, 0x010A02, 0x2F8 119 | -------------------------------------------------------------------------------- /conf/machine/nitrogen6x.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen6X 3 | #@SOC: i.MX6 Q/DL 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen6X 5 | #@MAINTAINER: Chris Dimich 6 | # 7 | # Note that this machine configuration also supports the SABRE Lite 8 | # reference design and the Nitrogen6X-SOM. 9 | # 10 | # By default, this machine will build for the standard Quad-Core, 1GB 11 | # option. 12 | # 13 | # To build U-Boot for other CPU or memory combinations, you can set 14 | # the UBOOT_MACHINE variable in your local.conf according to the 15 | # following table: 16 | # 17 | # Processor Memory Configuration 18 | # -------------- ------ -------------------- 19 | # i.MX6Quad/Dual 1GB nitrogen6q_config 20 | # i.MX6Quad/Dual 2GB nitrogen6q2g_config 21 | # i.MX6Quad/Dual 4GB nitrogen6_max_config 22 | # i.MX6Dual-Lite 1GB nitrogen6dl_config 23 | # i.MX6Dual-Lite 2GB nitrogen6dl2g_config 24 | # i.MX6Solo 512MB nitrogen6s_config 25 | # i.MX6Solo 1GB nitrogen6s1g_config 26 | # 27 | # See this blog post for details: 28 | # http://boundarydevices.com/u-boot-updates-for-i-mx6-single 29 | # 30 | # 31 | 32 | MACHINEOVERRIDES =. "mx6q:mx6dl:" 33 | 34 | IMX_DEFAULT_BSP ?= "nxp" 35 | 36 | include conf/machine/include/imx-base.inc 37 | include conf/machine/include/arm/armv7a/tune-cortexa9.inc 38 | 39 | KERNEL_DEVICETREE = "imx6q-sabrelite.dtb \ 40 | imx6q-nitrogen6_max.dtb imx6qp-nitrogen6_max.dtb \ 41 | imx6q-nitrogen6x.dtb imx6dl-nitrogen6x.dtb \ 42 | imx6q-nitrogen6_som2.dtb imx6qp-nitrogen6_som2.dtb \ 43 | imx6dl-nitrogen6_vm.dtb imx6dl-nitrogen6_vm-magstripe.dtb \ 44 | " 45 | 46 | # Not yet supported by Linux mainline 47 | KERNEL_DEVICETREE:remove:use-mainline-bsp = "imx6dl-nitrogen6_vm.dtb imx6dl-nitrogen6_vm-magstripe.dtb" 48 | 49 | KERNEL_IMAGETYPE = "zImage" 50 | 51 | IMX_DEFAULT_BOOTLOADER = "u-boot-boundary" 52 | UBOOT_SUFFIX = "imx" 53 | UBOOT_BINARY = "u-boot-dtb.${UBOOT_SUFFIX}" 54 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 55 | PREFERRED_PROVIDER_virtual/kernel:use-mainline-bsp ??= "linux-fslc" 56 | 57 | # wic support 58 | WKS_FILE = "sdimage-bootpart.wks" 59 | IMAGE_BOOT_FILES:append = " \ 60 | boot.scr-${MACHINE};boot.scr \ 61 | " 62 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 63 | 64 | UBOOT_MACHINE ?= "nitrogen6q_defconfig" 65 | 66 | SERIAL_CONSOLES = "115200;ttymxc1" 67 | 68 | MACHINE_EXTRA_RRECOMMENDS += "linux-firmware-wl12xx" 69 | MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " \ 70 | kernel-image \ 71 | kernel-devicetree \ 72 | " 73 | 74 | MACHINE_FEATURES += " pci wifi bluetooth" 75 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-qoriq/0001-perf-cs-etm-Move-definition-of-traceid_list-global-v.patch: -------------------------------------------------------------------------------- 1 | From 168200b6d6ea0cb5765943ec5da5b8149701f36a Mon Sep 17 00:00:00 2001 2 | From: Leo Yan 3 | Date: Tue, 5 May 2020 21:36:42 +0800 4 | Subject: [PATCH] perf cs-etm: Move definition of 'traceid_list' global 5 | variable from header file 6 | 7 | The variable 'traceid_list' is defined in the header file cs-etm.h, 8 | if multiple C files include cs-etm.h the compiler might complaint for 9 | multiple definition of 'traceid_list'. 10 | 11 | To fix multiple definition error, move the definition of 'traceid_list' 12 | into cs-etm.c. 13 | 14 | Upstream-Status: Backport 15 | 16 | Fixes: cd8bfd8c973e ("perf tools: Add processing of coresight metadata") 17 | Reported-by: Thomas Backlund 18 | Signed-off-by: Leo Yan 19 | Reviewed-by: Mathieu Poirier 20 | Reviewed-by: Mike Leach 21 | Tested-by: Mike Leach 22 | Tested-by: Thomas Backlund 23 | Cc: Alexander Shishkin 24 | Cc: Jiri Olsa 25 | Cc: Mark Rutland 26 | Cc: Namhyung Kim 27 | Cc: Peter Zijlstra 28 | Cc: Suzuki Poulouse 29 | Cc: Tor Jeremiassen 30 | Cc: linux-arm-kernel@lists.infradead.org 31 | Link: http://lore.kernel.org/lkml/20200505133642.4756-1-leo.yan@linaro.org 32 | Signed-off-by: Arnaldo Carvalho de Melo 33 | --- 34 | tools/perf/util/cs-etm.c | 3 +++ 35 | tools/perf/util/cs-etm.h | 3 --- 36 | 2 files changed, 3 insertions(+), 3 deletions(-) 37 | 38 | diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c 39 | index 3c802fde4954..c283223fb31f 100644 40 | --- a/tools/perf/util/cs-etm.c 41 | +++ b/tools/perf/util/cs-etm.c 42 | @@ -94,6 +94,9 @@ struct cs_etm_queue { 43 | struct cs_etm_traceid_queue **traceid_queues; 44 | }; 45 | 46 | +/* RB tree for quick conversion between traceID and metadata pointers */ 47 | +static struct intlist *traceid_list; 48 | + 49 | static int cs_etm__update_queues(struct cs_etm_auxtrace *etm); 50 | static int cs_etm__process_queues(struct cs_etm_auxtrace *etm); 51 | static int cs_etm__process_timeless_queues(struct cs_etm_auxtrace *etm, 52 | diff --git a/tools/perf/util/cs-etm.h b/tools/perf/util/cs-etm.h 53 | index 650ecc2a6349..4ad925d6d799 100644 54 | --- a/tools/perf/util/cs-etm.h 55 | +++ b/tools/perf/util/cs-etm.h 56 | @@ -114,9 +114,6 @@ enum cs_etm_isa { 57 | CS_ETM_ISA_T32, 58 | }; 59 | 60 | -/* RB tree for quick conversion between traceID and metadata pointers */ 61 | -struct intlist *traceid_list; 62 | - 63 | struct cs_etm_queue; 64 | 65 | struct cs_etm_packet { 66 | -- 67 | 2.17.1 68 | 69 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0017-lx2160acex7-misc-fixes-to-get-booting-from-eMMC-func.patch: -------------------------------------------------------------------------------- 1 | From ce6a26cf0aa2af3a93b1183bd3543a9913e0656e Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Tue, 5 May 2020 01:01:01 +0300 4 | Subject: [PATCH 17/17] lx2160acex7: misc fixes to get booting from eMMC 5 | functional 6 | 7 | Upstream-Status: Inappropriate [Solid-Run BSP] 8 | 9 | Signed-off-by: Rabeeh Khoury 10 | --- 11 | include/configs/lx2160a_common.h | 10 ++++++++++ 12 | include/configs/lx2160acex7.h | 14 ++++++++------ 13 | 2 files changed, 18 insertions(+), 6 deletions(-) 14 | 15 | diff --git a/include/configs/lx2160a_common.h b/include/configs/lx2160a_common.h 16 | index 91e9a2470f..f0c44a2368 100644 17 | --- a/include/configs/lx2160a_common.h 18 | +++ b/include/configs/lx2160a_common.h 19 | @@ -235,6 +235,16 @@ int select_i2c_ch_pca9547_sec(unsigned char ch); 20 | "esbc_validate 0x80680000 ;" \ 21 | "fsl_mc start mc 0x80a00000 0x80e00000\0" 22 | 23 | +#define SD2_MC_INIT_CMD \ 24 | + "mmc dev 1; mmc read 0x80a00000 0x5000 0x1200;" \ 25 | + "mmc read 0x80e00000 0x7000 0x800;" \ 26 | + "env exists secureboot && " \ 27 | + "mmc read 0x80640000 0x3200 0x20 && " \ 28 | + "mmc read 0x80680000 0x3400 0x20 && " \ 29 | + "esbc_validate 0x80640000 && " \ 30 | + "esbc_validate 0x80680000 ;" \ 31 | + "fsl_mc start mc 0x80a00000 0x80e00000\0" 32 | + 33 | #define EXTRA_ENV_SETTINGS \ 34 | "hwconfig=fsl_ddr:bank_intlv=auto\0" \ 35 | "ramdisk_addr=0x800000\0" \ 36 | diff --git a/include/configs/lx2160acex7.h b/include/configs/lx2160acex7.h 37 | index 7116e038a1..310168db47 100644 38 | --- a/include/configs/lx2160acex7.h 39 | +++ b/include/configs/lx2160acex7.h 40 | @@ -46,11 +46,6 @@ 41 | 42 | #endif 43 | 44 | -/* EMC2301 */ 45 | -#define I2C_MUX_CH_EMC2301 0x01 46 | -#define I2C_EMC2301_ADDR 0x2f 47 | -#define I2C_EMC2301_CMD 0x40 48 | -#define I2C_EMC2301_PWM 0x80 49 | 50 | /* EEPROM */ 51 | #undef CONFIG_ID_EEPROM /* Fixme */ 52 | @@ -73,7 +68,14 @@ 53 | "$kernelheader_size && esbc_validate ${kernelheader_addr_r}; "\ 54 | " bootm $load_addr#$BOARD\0" \ 55 | "sd_bootcmd=echo Trying load from sd card..;" \ 56 | - "mmc dev 0; mmcinfo; mmc read $load_addr " \ 57 | + "mmcinfo; mmc read $load_addr " \ 58 | + "$kernel_addr_sd $kernel_size_sd ;" \ 59 | + "env exists secureboot && mmc read $kernelheader_addr_r "\ 60 | + "$kernelhdr_addr_sd $kernelhdr_size_sd " \ 61 | + " && esbc_validate ${kernelheader_addr_r};" \ 62 | + "bootm $load_addr#$BOARD\0" \ 63 | + "emmc_bootcmd=echo Trying load from emmc card..;" \ 64 | + "mmc dev 1; mmcinfo; mmc read $load_addr " \ 65 | "$kernel_addr_sd $kernel_size_sd ;" \ 66 | "env exists secureboot && mmc read $kernelheader_addr_r "\ 67 | "$kernelhdr_addr_sd $kernelhdr_size_sd " \ 68 | -- 69 | 2.17.1 70 | 71 | -------------------------------------------------------------------------------- /conf/machine/nitrogen8m.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen8M 3 | #@SOC: i.MX8 MQ 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen8M 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx8mq:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | require conf/machine/include/imx-base.inc 12 | require conf/machine/include/arm/armv8a/tune-cortexa53.inc 13 | 14 | # Kernel configuration 15 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 16 | KERNEL_DEVICETREE = "freescale/imx8mq-nitrogen8m.dtb \ 17 | freescale/imx8mq-nitrogen8m-m4.dtb \ 18 | freescale/imx8mq-nitrogen8m_som.dtb \ 19 | freescale/imx8mq-nitrogen8m_som-m4.dtb \ 20 | freescale/imx8mq-nitrogen8m-tc358743.dtb \ 21 | freescale/imx8mq-nitrogen8m-edp.dtb \ 22 | " 23 | KERNEL_IMAGETYPE = "Image" 24 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 25 | 26 | # U-Boot configuration 27 | IMX_DEFAULT_BOOTLOADER:imx-nxp-bsp = "u-boot-boundary" 28 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 29 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 30 | PREFERRED_PROVIDER_imx-atf ??= "imx-atf-boundary" 31 | SPL_BINARY = "spl/u-boot-spl.bin" 32 | UBOOT_SUFFIX = "bin" 33 | 34 | UBOOT_CONFIG ??= "2g 2gr0 4g som_2g som_2gr0 som_4g som_sd_2g som_sd_4g" 35 | UBOOT_CONFIG[2g] = "${MACHINE}_2g_defconfig,sdcard" 36 | UBOOT_CONFIG[2gr0] = "${MACHINE}_2gr0_defconfig,sdcard" 37 | UBOOT_CONFIG[4g] = "${MACHINE}_4g_defconfig,sdcard" 38 | UBOOT_CONFIG[som_2g] = "${MACHINE}_som_2g_defconfig,sdcard" 39 | UBOOT_CONFIG[som_2gr0] = "${MACHINE}_som_2gr0_defconfig,sdcard" 40 | UBOOT_CONFIG[som_4g] = "${MACHINE}_som_4g_defconfig,sdcard" 41 | UBOOT_CONFIG[som_sd_2g] = "${MACHINE}_som_sd_2g_defconfig,sdcard" 42 | UBOOT_CONFIG[som_sd_4g] = "${MACHINE}_som_sd_4g_defconfig,sdcard" 43 | 44 | ATF_PLATFORM = "imx8mq" 45 | 46 | DDR_FIRMWARE_NAME = "\ 47 | lpddr4_pmu_train_1d_imem.bin \ 48 | lpddr4_pmu_train_1d_dmem.bin \ 49 | lpddr4_pmu_train_2d_imem.bin \ 50 | lpddr4_pmu_train_2d_dmem.bin \ 51 | " 52 | 53 | IMAGE_BOOT_FILES:append = " \ 54 | boot.scr-${MACHINE};boot.scr \ 55 | upgrade.scr-${MACHINE};upgrade.scr \ 56 | flash.bin-${MACHINE}-2g;u-boot.${MACHINE}_2g \ 57 | flash.bin-${MACHINE}-2gr0;u-boot.${MACHINE}_2gr0 \ 58 | flash.bin-${MACHINE}-4g;u-boot.${MACHINE}_4g \ 59 | flash.bin-${MACHINE}-som_2g;u-boot.${MACHINE}_som_2g \ 60 | flash.bin-${MACHINE}-som_2gr0;u-boot.${MACHINE}_som_2gr0 \ 61 | flash.bin-${MACHINE}-som_4g;u-boot.${MACHINE}_som_4g \ 62 | flash.bin-${MACHINE}-som_sd_2g;u-boot.${MACHINE}_som_sd_2g \ 63 | flash.bin-${MACHINE}-som_sd_4g;u-boot.${MACHINE}_som_sd_4g \ 64 | " 65 | 66 | # wic support 67 | WKS_FILE = "sdimage-bootpart.wks" 68 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 69 | 70 | SERIAL_CONSOLES ?= "115200;ttymxc0" 71 | 72 | MACHINE_FEATURES += " pci wifi bluetooth" 73 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/imx7d-pico/brcmfmac4339-sdio.txt: -------------------------------------------------------------------------------- 1 | #AP6335_NVRAM_V1.5_03112014 2 | NVRAMRev=$Rev: 410316 $ 3 | sromrev=11 4 | boardrev=0x1203 5 | boardtype=0x06c5 6 | boardflags=0x00000c01 7 | boardflags2=0x00002000 8 | boardflags3=0x101188 9 | macaddr=00:90:4c:c5:12:38 10 | ccode=0 11 | regrev=0 12 | antswitch=0 13 | pdgain2g=7 14 | pdgain5g=7 15 | tworangetssi2g=0 16 | tworangetssi5g=0 17 | femctrl=7 18 | pcieingress_war=15 19 | vendid=0x14e4 20 | devid=0x43ae 21 | manfid=0x2d0 22 | nocrc=1 23 | otpimagesize=502 24 | xtalfreq=37400 25 | extpagain2g=2 26 | pdetrange2g=2 27 | extpagain5g=2 28 | pdetrange5g=2 29 | rxgains2gelnagaina0=0 30 | rxgains2gtrisoa0=7 31 | rxgains2gtrelnabypa0=0 32 | rxgains5gelnagaina0=0 33 | rxgains5gtrisoa0=11 34 | rxgains5gtrelnabypa0=0 35 | rxchain=1 36 | txchain=1 37 | aa2g=1 38 | aa5g=1 39 | tssipos5g=0 40 | tssipos2g=0 41 | pa2ga0=-161,6269,-723 42 | pa2gccka0=-116,7568,-852 43 | pa5ga0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 44 | pa5gbw40a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 45 | pa5gbw80a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 46 | pdoffset40ma0=0 47 | pdoffset80ma0=0 48 | pdoffsetcckma0=0 49 | maxp2ga0=75 50 | maxp5ga0=64,64,72,72 51 | cckbw202gpo=0x0000 52 | cckbw20ul2gpo=0x0 53 | mcsbw202gpo=0x99445533 54 | mcsbw402gpo=0x99775533 55 | dot11agofdmhrbw202gpo=0x2233 56 | ofdmlrbw202gpo=0x0000 57 | tssifloor2g=500 58 | mcsbw205glpo=0x66333330 59 | mcsbw405glpo=0x66665530 60 | mcsbw805glpo=0xAA555530 61 | mcsbw1605glpo=0x99555530 62 | mcsbw205gmpo=0x99BB5530 63 | mcsbw405gmpo=0x99BB5530 64 | mcsbw805gmpo=0xEE555530 65 | mcsbw1605gmpo=0x99555530 66 | mcsbw205ghpo=0x99995530 67 | mcsbw405ghpo=0x99BB5530 68 | mcsbw805ghpo=0xEE555530 69 | mcsbw1605ghpo=0x99555530 70 | mcslr5glpo=0x0000 71 | mcslr5gmpo=0x0000 72 | mcslr5ghpo=0x0000 73 | sb20in40hrrpo=0x0 74 | sb20in80and160hr5glpo=0x0 75 | sb40and80hr5glpo=0x0 76 | sb20in80and160hr5gmpo=0x0 77 | sb40and80hr5gmpo=0x0 78 | sb20in80and160hr5ghpo=0x0 79 | sb40and80hr5ghpo=0x0 80 | sb20in40lrpo=0x0 81 | sb20in80and160lr5glpo=0x0 82 | sb40and80lr5glpo=0x0 83 | sb20in80and160lr5gmpo=0x0 84 | sb40and80lr5gmpo=0x0 85 | sb20in80and160lr5ghpo=0x0 86 | sb40and80lr5ghpo=0x0 87 | dot11agduphrpo=0x0 88 | dot11agduplrpo=0x0 89 | phycal_tempdelta=25 90 | cckdigfilttype=2 91 | pacalidx2g=65 92 | dacrate2g=160 93 | swctrlmap_5g=0x00000008,0x00000010,0x00000008,0x000000,0x038 94 | swctrlmap_2g=0x00000001,0x00000002,0x00000001,0x040002,0x0ff 95 | swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x000 96 | swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x000 97 | rssicorrnorm_c0=3,3 98 | rssicorrnorm5g_c0=2,3,4,2,3,3,0,1,2,0,1,2 99 | muxenab=0x10 100 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/imx6qdl-pico/brcmfmac4339-sdio.txt: -------------------------------------------------------------------------------- 1 | #AP6335_NVRAM_V1.5_03112014 2 | NVRAMRev=$Rev: 410316 $ 3 | sromrev=11 4 | boardrev=0x1203 5 | boardtype=0x06c5 6 | boardflags=0x00000c01 7 | boardflags2=0x00002000 8 | boardflags3=0x101188 9 | macaddr=00:90:4c:c5:12:38 10 | ccode=0 11 | regrev=0 12 | antswitch=0 13 | pdgain2g=7 14 | pdgain5g=7 15 | tworangetssi2g=0 16 | tworangetssi5g=0 17 | femctrl=7 18 | pcieingress_war=15 19 | vendid=0x14e4 20 | devid=0x43ae 21 | manfid=0x2d0 22 | nocrc=1 23 | otpimagesize=502 24 | xtalfreq=37400 25 | extpagain2g=2 26 | pdetrange2g=2 27 | extpagain5g=2 28 | pdetrange5g=2 29 | rxgains2gelnagaina0=0 30 | rxgains2gtrisoa0=7 31 | rxgains2gtrelnabypa0=0 32 | rxgains5gelnagaina0=0 33 | rxgains5gtrisoa0=11 34 | rxgains5gtrelnabypa0=0 35 | rxchain=1 36 | txchain=1 37 | aa2g=1 38 | aa5g=1 39 | tssipos5g=0 40 | tssipos2g=0 41 | pa2ga0=-161,6269,-723 42 | pa2gccka0=-116,7568,-852 43 | pa5ga0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 44 | pa5gbw40a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 45 | pa5gbw80a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 46 | pdoffset40ma0=0 47 | pdoffset80ma0=0 48 | pdoffsetcckma0=0 49 | maxp2ga0=75 50 | maxp5ga0=64,64,72,72 51 | cckbw202gpo=0x0000 52 | cckbw20ul2gpo=0x0 53 | mcsbw202gpo=0x99445533 54 | mcsbw402gpo=0x99775533 55 | dot11agofdmhrbw202gpo=0x2233 56 | ofdmlrbw202gpo=0x0000 57 | tssifloor2g=500 58 | mcsbw205glpo=0x66333330 59 | mcsbw405glpo=0x66665530 60 | mcsbw805glpo=0xAA555530 61 | mcsbw1605glpo=0x99555530 62 | mcsbw205gmpo=0x99BB5530 63 | mcsbw405gmpo=0x99BB5530 64 | mcsbw805gmpo=0xEE555530 65 | mcsbw1605gmpo=0x99555530 66 | mcsbw205ghpo=0x99995530 67 | mcsbw405ghpo=0x99BB5530 68 | mcsbw805ghpo=0xEE555530 69 | mcsbw1605ghpo=0x99555530 70 | mcslr5glpo=0x0000 71 | mcslr5gmpo=0x0000 72 | mcslr5ghpo=0x0000 73 | sb20in40hrrpo=0x0 74 | sb20in80and160hr5glpo=0x0 75 | sb40and80hr5glpo=0x0 76 | sb20in80and160hr5gmpo=0x0 77 | sb40and80hr5gmpo=0x0 78 | sb20in80and160hr5ghpo=0x0 79 | sb40and80hr5ghpo=0x0 80 | sb20in40lrpo=0x0 81 | sb20in80and160lr5glpo=0x0 82 | sb40and80lr5glpo=0x0 83 | sb20in80and160lr5gmpo=0x0 84 | sb40and80lr5gmpo=0x0 85 | sb20in80and160lr5ghpo=0x0 86 | sb40and80lr5ghpo=0x0 87 | dot11agduphrpo=0x0 88 | dot11agduplrpo=0x0 89 | phycal_tempdelta=25 90 | cckdigfilttype=2 91 | pacalidx2g=65 92 | dacrate2g=160 93 | swctrlmap_5g=0x00000008,0x00000010,0x00000008,0x000000,0x038 94 | swctrlmap_2g=0x00000001,0x00000002,0x00000001,0x040002,0x0ff 95 | swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x000 96 | swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x000 97 | rssicorrnorm_c0=3,3 98 | rssicorrnorm5g_c0=2,3,4,2,3,3,0,1,2,0,1,2 99 | muxenab=0x10 100 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/imx6ul-pico/brcmfmac4339-sdio.txt: -------------------------------------------------------------------------------- 1 | #AP6335_NVRAM_V1.5_03112014 2 | NVRAMRev=$Rev: 410316 $ 3 | sromrev=11 4 | boardrev=0x1203 5 | boardtype=0x06c5 6 | boardflags=0x00000c01 7 | boardflags2=0x00002000 8 | boardflags3=0x101188 9 | macaddr=00:90:4c:c5:12:38 10 | ccode=0 11 | regrev=0 12 | antswitch=0 13 | pdgain2g=7 14 | pdgain5g=7 15 | tworangetssi2g=0 16 | tworangetssi5g=0 17 | femctrl=7 18 | pcieingress_war=15 19 | vendid=0x14e4 20 | devid=0x43ae 21 | manfid=0x2d0 22 | nocrc=1 23 | otpimagesize=502 24 | xtalfreq=37400 25 | extpagain2g=2 26 | pdetrange2g=2 27 | extpagain5g=2 28 | pdetrange5g=2 29 | rxgains2gelnagaina0=0 30 | rxgains2gtrisoa0=7 31 | rxgains2gtrelnabypa0=0 32 | rxgains5gelnagaina0=0 33 | rxgains5gtrisoa0=11 34 | rxgains5gtrelnabypa0=0 35 | rxchain=1 36 | txchain=1 37 | aa2g=1 38 | aa5g=1 39 | tssipos5g=0 40 | tssipos2g=0 41 | pa2ga0=-161,6269,-723 42 | pa2gccka0=-116,7568,-852 43 | pa5ga0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 44 | pa5gbw40a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 45 | pa5gbw80a0=0xFF61,0x163C,0xFD55,0xFF5D,0x1671,0xFD4F,0xFF5F,0x16CA,0xFD45,0xFF60,0x1676,0xFD4D 46 | pdoffset40ma0=0 47 | pdoffset80ma0=0 48 | pdoffsetcckma0=0 49 | maxp2ga0=75 50 | maxp5ga0=64,64,72,72 51 | cckbw202gpo=0x0000 52 | cckbw20ul2gpo=0x0 53 | mcsbw202gpo=0x99445533 54 | mcsbw402gpo=0x99775533 55 | dot11agofdmhrbw202gpo=0x2233 56 | ofdmlrbw202gpo=0x0000 57 | tssifloor2g=500 58 | mcsbw205glpo=0x66333330 59 | mcsbw405glpo=0x66665530 60 | mcsbw805glpo=0xAA555530 61 | mcsbw1605glpo=0x99555530 62 | mcsbw205gmpo=0x99BB5530 63 | mcsbw405gmpo=0x99BB5530 64 | mcsbw805gmpo=0xEE555530 65 | mcsbw1605gmpo=0x99555530 66 | mcsbw205ghpo=0x99995530 67 | mcsbw405ghpo=0x99BB5530 68 | mcsbw805ghpo=0xEE555530 69 | mcsbw1605ghpo=0x99555530 70 | mcslr5glpo=0x0000 71 | mcslr5gmpo=0x0000 72 | mcslr5ghpo=0x0000 73 | sb20in40hrrpo=0x0 74 | sb20in80and160hr5glpo=0x0 75 | sb40and80hr5glpo=0x0 76 | sb20in80and160hr5gmpo=0x0 77 | sb40and80hr5gmpo=0x0 78 | sb20in80and160hr5ghpo=0x0 79 | sb40and80hr5ghpo=0x0 80 | sb20in40lrpo=0x0 81 | sb20in80and160lr5glpo=0x0 82 | sb40and80lr5glpo=0x0 83 | sb20in80and160lr5gmpo=0x0 84 | sb40and80lr5gmpo=0x0 85 | sb20in80and160lr5ghpo=0x0 86 | sb40and80lr5ghpo=0x0 87 | dot11agduphrpo=0x0 88 | dot11agduplrpo=0x0 89 | phycal_tempdelta=25 90 | cckdigfilttype=2 91 | pacalidx2g=65 92 | dacrate2g=160 93 | swctrlmap_5g=0x00000008,0x00000010,0x00000008,0x000000,0x038 94 | swctrlmap_2g=0x00000001,0x00000002,0x00000001,0x040002,0x0ff 95 | swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x000 96 | swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x000 97 | rssicorrnorm_c0=3,3 98 | rssicorrnorm5g_c0=2,3,4,2,3,3,0,1,2,0,1,2 99 | muxenab=0x10 100 | -------------------------------------------------------------------------------- /wic/lx2160acex7.wks.in: -------------------------------------------------------------------------------- 1 | # short-description: Create eMMC/SD card image with a boot partition 2 | # long-description: 3 | # Create an image that can be written onto an eMMC or a SD card using 4 | # dd for use with QorIQ SoC CEX7 family. 5 | # It uses ... 6 | # 7 | # Offsets: 8 | # * RCW+PBI+BL2 at block 8 9 | # * PFE firmware at block 0x100 10 | # * FIP (BL31+BL32+BL33) at 0x800 11 | # * Env variables at 0x2800 12 | # * Secureboot headers at 0x3000 13 | # * DDR PHY FIP at 0x4000 14 | # * DPAA1 FMAN ucode at 0x4800 15 | # * DPAA2-MC at 0x5000 16 | # * DPAA2 DPL at 0x6800 17 | # * DPAA2 DPC at 0x7000 18 | # * Device tree (UEFI) at 0x7800 19 | # * Kernel at 0x8000 20 | # * Ramdisk at 0x10000 21 | # 22 | # The disk layout (in blocks) used is: 23 | # blocks KiB 24 | # 0x0 +-----------------------+ 0x0 25 | # | MBR / GPT ... | 26 | # 0x8 +-----------------------+ 0x4 27 | # | RCW + PBI + BL2 | 28 | # 0x100 +-----------------------+ 0x80 29 | # | PFE firmware | 30 | # 0x800 +-----------------------+ 0x400 31 | # | FIP (BL31+BL32+BL33) | 32 | # 0x2800 +-----------------------+ 0x1400 33 | # | U-Boot Env variables | 34 | # 0x3000 +-----------------------+ 0x1800 35 | # | Secureboot headers | 36 | # 0x4000 +-----------------------+ 0x2000 37 | # | DDR PHY FIP | 38 | # 0x4800 +-----------------------+ 0x2400 39 | # | DPAA1 FMAN ucode | 40 | # 0x5000 +-----------------------+ 0x2800 41 | # | DPAA2-MC | 42 | # 0x6800 +-----------------------+ 0x3400 43 | # | DPAA2 DPL | 44 | # 0x7000 +-----------------------+ 0x3800 45 | # | DPAA2 DPC | 46 | # 0x7800 +-----------------------+ 0x3c00 47 | # | Device tree (UEFI) | 48 | # 0x8000 +-----------------------+ 0x4000 49 | # | Kernel | 50 | # 0x10000 +-----------------------+ 0x8000 51 | # | Ramdisk | 52 | # +-----------------------+ 53 | # 54 | 55 | part RCW --source rawcopy --sourceparams="file=atf/bl2_auto.pbl" --ondisk mmcblk --no-table --align 4 56 | part FIP --source rawcopy --sourceparams="file=atf/fip_uboot.bin" --ondisk mmcblk --no-table --align 1024 57 | part DDR --source rawcopy --sourceparams="file=ddr-phy/fip_ddr_all.bin" --ondisk mmcblk --no-table --align 8192 58 | part MCFW --source rawcopy --sourceparams="file=mc_app/mc.itb" --ondisk mmcblk --no-table --align 10240 59 | part DPL --source rawcopy --sourceparams="file=mc-utils/dpl-eth.8x10g.19.dtb" --ondisk mmcblk --no-table --align 13312 60 | part DPC --source rawcopy --sourceparams="file=mc-utils/dpc-8_x_usxgmii.dtb" --ondisk mmcblk --no-table --align 14336 61 | 62 | part /boot --source bootimg-partition --ondisk mmcblk --fstype=ext4 --label boot --active --align 4096 --extra-space 0 63 | part / --source rootfs --ondisk mmcblk --fstype=ext4 --label rootfs --align 4096 --extra-space 32 64 | 65 | bootloader --ptable msdos 66 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0001-armv8-add-lx2160acex7-build-inclusion.patch: -------------------------------------------------------------------------------- 1 | From c24c3ec7d9591cf359ac12f656bd59a5440532f4 Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Sun, 28 Jul 2019 13:26:45 +0300 4 | Subject: [PATCH 01/17] armv8: add lx2160acex7 build inclusion 5 | 6 | Upstream-Status: Inappropriate [Solid-Run BSP] 7 | 8 | Signed-off-by: Rabeeh Khoury 9 | --- 10 | arch/arm/Kconfig | 13 +++++++++++++ 11 | arch/arm/cpu/armv8/Kconfig | 2 +- 12 | arch/arm/dts/Makefile | 3 ++- 13 | 3 files changed, 16 insertions(+), 2 deletions(-) 14 | 15 | diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig 16 | index 5d33526ae9..8615e1673f 100644 17 | --- a/arch/arm/Kconfig 18 | +++ b/arch/arm/Kconfig 19 | @@ -1189,6 +1189,18 @@ config TARGET_LX2160ARDB 20 | is a high-performance development platform that supports the 21 | QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor. 22 | 23 | +config TARGET_LX2160ACEX7 24 | + bool "Support lx2160acex7" 25 | + select ARCH_LX2160A 26 | + select ARCH_MISC_INIT 27 | + select ARM64 28 | + select ARMV8_MULTIENTRY 29 | + select BOARD_LATE_INIT 30 | + help 31 | + Support for SolidRun LX2160A based com express type 7 module and 32 | + platform. The lx2160acex7 high-performance platform that supports the 33 | + QorIQ LX2160A/LX2120A/LX2080A Layerscape Architecture processor. 34 | + 35 | config TARGET_LX2160AQDS 36 | bool "Support lx2160aqds" 37 | select ARCH_LX2160A 38 | @@ -1796,6 +1808,7 @@ source "board/freescale/ls1012aqds/Kconfig" 39 | source "board/freescale/ls1012ardb/Kconfig" 40 | source "board/freescale/ls1012afrdm/Kconfig" 41 | source "board/freescale/lx2160a/Kconfig" 42 | +source "board/solidrun/lx2160a/Kconfig" 43 | source "board/freescale/mx35pdk/Kconfig" 44 | source "board/freescale/s32v234evb/Kconfig" 45 | source "board/grinn/chiliboard/Kconfig" 46 | diff --git a/arch/arm/cpu/armv8/Kconfig b/arch/arm/cpu/armv8/Kconfig 47 | index 92a2b58ed4..9df6ebdc1b 100644 48 | --- a/arch/arm/cpu/armv8/Kconfig 49 | +++ b/arch/arm/cpu/armv8/Kconfig 50 | @@ -109,7 +109,7 @@ config PSCI_RESET 51 | !TARGET_LS1046ARDB && !TARGET_LS1046AQDS && \ 52 | !TARGET_LS1046AFRWY && \ 53 | !TARGET_LS2081ARDB && !TARGET_LX2160ARDB && \ 54 | - !TARGET_LX2160AQDS && \ 55 | + !TARGET_LX2160AQDS && !TARGET_LX2160ACEX7 && \ 56 | !ARCH_UNIPHIER && !TARGET_S32V234EVB 57 | help 58 | Most armv8 systems have PSCI support enabled in EL3, either through 59 | diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile 60 | index 8d7d5bee45..6d8d7fa09e 100644 61 | --- a/arch/arm/dts/Makefile 62 | +++ b/arch/arm/dts/Makefile 63 | @@ -348,7 +348,8 @@ dtb-$(CONFIG_FSL_LSCH3) += fsl-ls2080a-qds.dtb \ 64 | fsl-ls1028a-qds-duart.dtb \ 65 | fsl-ls1028a-qds-lpuart.dtb \ 66 | fsl-lx2160a-rdb.dtb \ 67 | - fsl-lx2160a-qds.dtb 68 | + fsl-lx2160a-qds.dtb \ 69 | + fsl-lx2160a-cex7.dtb 70 | dtb-$(CONFIG_FSL_LSCH2) += fsl-ls1043a-qds-duart.dtb \ 71 | fsl-ls1043a-qds-lpuart.dtb \ 72 | fsl-ls1043a-rdb.dtb \ 73 | -- 74 | 2.17.1 75 | 76 | -------------------------------------------------------------------------------- /conf/machine/olimex-imx8mp-evb.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Olimex iMX8MP-SOM evaluation board 3 | #@SOC: i.MX8MP 4 | #@DESCRIPTION: Machine configuration for Olimex iMX8MP-SOM evaluation board with LPDDR4 5 | #@MAINTAINER: Leon Anavi 6 | 7 | require conf/machine/include/imx8mp-evk.inc 8 | 9 | KERNEL_DEVICETREE_BASENAME = "imx8mp-olimex" 10 | 11 | # NXP kernel has additional DTB files for various board configuration and 12 | # derivates. Include them here for NXP BSP only 13 | KERNEL_DEVICETREE:append:use-nxp-bsp = " \ 14 | freescale/imx8mp-ab2.dtb \ 15 | freescale/imx8mp-evk-basler.dtb \ 16 | freescale/imx8mp-evk-basler-ov2775.dtb \ 17 | freescale/imx8mp-evk-basler-ov5640.dtb \ 18 | freescale/imx8mp-evk-dpdk.dtb \ 19 | freescale/imx8mp-evk-dsp.dtb \ 20 | freescale/imx8mp-evk-dual-basler.dtb \ 21 | freescale/imx8mp-evk-dual-os08a20.dtb \ 22 | freescale/imx8mp-evk-dual-ov2775.dtb \ 23 | freescale/imx8mp-evk-ecspi-slave.dtb \ 24 | freescale/imx8mp-evk-flexcan2.dtb \ 25 | freescale/imx8mp-evk-hifiberry-dacplus.dtb \ 26 | freescale/imx8mp-evk-inmate.dtb \ 27 | freescale/imx8mp-evk-iqaudio-dacplus.dtb \ 28 | freescale/imx8mp-evk-iqaudio-dacpro.dtb \ 29 | freescale/imx8mp-evk-it6263-lvds-dual-channel.dtb \ 30 | freescale/imx8mp-evk-jdi-wuxga-lvds-panel.dtb \ 31 | freescale/imx8mp-evk-ndm.dtb \ 32 | freescale/imx8mp-evk-os08a20.dtb \ 33 | freescale/imx8mp-evk-os08a20-ov5640.dtb \ 34 | freescale/imx8mp-evk-ov2775.dtb \ 35 | freescale/imx8mp-evk-ov2775-ov5640.dtb \ 36 | freescale/imx8mp-evk-pcie-ep.dtb \ 37 | freescale/imx8mp-evk-revA3-8mic-revE.dtb \ 38 | freescale/imx8mp-evk-rm67191.dtb \ 39 | freescale/imx8mp-evk-rm67199.dtb \ 40 | freescale/imx8mp-evk-root.dtb \ 41 | freescale/imx8mp-evk-rpmsg.dtb \ 42 | freescale/imx8mp-evk-rpmsg-lpv.dtb \ 43 | freescale/imx8mp-evk-sof-wm8960.dtb \ 44 | freescale/imx8mp-evk-spdif-lb.dtb \ 45 | freescale/imx8mp-evk-usdhc1-m2.dtb \ 46 | freescale/imx8mp-evk-8mic-swpdm.dtb \ 47 | freescale/imx8mp-olimex.dtb \ 48 | " 49 | 50 | IMX_DEFAULT_BOOTLOADER:use-nxp-bsp = "u-boot-olimex" 51 | IMX_DEFAULT_KERNEL:use-nxp-bsp = "linux-fslc" 52 | 53 | UBOOT_CONFIG_BASENAME = "imx8mp_olimex" 54 | UBOOT_CONFIG[fspi] = "${UBOOT_CONFIG_BASENAME}_defconfig" 55 | UBOOT_CONFIG[ndm] = "${UBOOT_CONFIG_BASENAME}_ndm_defconfig" 56 | UBOOT_DTB_NAME = "imx8mp-evk.dtb" 57 | 58 | # Set DDR FIRMWARE 59 | DDR_FIRMWARE_VERSION = "202006" 60 | DDR_FIRMWARE_NAME = " \ 61 | lpddr4_pmu_train_1d_dmem_${DDR_FIRMWARE_VERSION}.bin \ 62 | lpddr4_pmu_train_1d_imem_${DDR_FIRMWARE_VERSION}.bin \ 63 | lpddr4_pmu_train_2d_dmem_${DDR_FIRMWARE_VERSION}.bin \ 64 | lpddr4_pmu_train_2d_imem_${DDR_FIRMWARE_VERSION}.bin \ 65 | " 66 | 67 | IMXBOOT_TARGETS_BASENAME = "flash_evk" 68 | 69 | # Mainline BSP doesn't support LPDDR4 so it must be set to nxp. 70 | # Also this machine isn't supported by u-boot-fslc but imx8mn-evk.inc already 71 | # set the bootloader to u-boot-imx instead when NXP BSP is used. 72 | IMX_DEFAULT_BSP = "nxp" 73 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-olimex_2024.04.bb: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2013-2016 Freescale Semiconductor 2 | # Copyright 2018 (C) O.S. Systems Software LTDA. 3 | # Copyright 2017-2024 NXP 4 | 5 | require recipes-bsp/u-boot/u-boot.inc 6 | require u-boot-olimex-common_${PV}.inc 7 | 8 | PROVIDES += "u-boot u-boot-mfgtool" 9 | 10 | SRC_URI:append:olimex-imx8mp-evb = " file://0001-Add-Olimex-iMX8MP-SOM-EVB-IND.patch" 11 | 12 | inherit uuu_bootloader_tag 13 | 14 | # The UUU tag goes on the boot partition. For 8+, the boot partition image 15 | # is imx-boot, so disable UUU-tagging here 16 | UUU_BOOTLOADER:mx8-generic-bsp = "" 17 | UUU_BOOTLOADER:mx9-generic-bsp = "" 18 | 19 | TOOLCHAIN_OPTIONS:append = " -Wno-error=implicit-function-declaration" 20 | 21 | do_deploy:append:mx8m-generic-bsp() { 22 | # Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary 23 | if [ -n "${UBOOT_CONFIG}" ] 24 | then 25 | for config in ${UBOOT_MACHINE}; do 26 | i=$(expr $i + 1); 27 | for type in ${UBOOT_CONFIG}; do 28 | j=$(expr $j + 1); 29 | if [ $j -eq $i ] 30 | then 31 | install -d ${DEPLOYDIR}/${BOOT_TOOLS} 32 | install -m 0644 ${B}/${config}/u-boot-nodtb.bin ${DEPLOYDIR}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${type} 33 | UBOOT_DTB_NAME_FLAGS="${type}:${UBOOT_DTB_NAME}" 34 | for key_value in ${UBOOT_DTB_NAME_FLAGS}; do 35 | local type_key="${key_value%%:*}" 36 | local dtb_name="${key_value#*:}" 37 | if [ "$type_key" = "$type" ] 38 | then 39 | bbnote "UBOOT_CONFIG = $type, UBOOT_DTB_NAME = $dtb_name" 40 | # There is only one ${dtb_name}, the first one. All the other are with the type appended 41 | if [ ! -f "${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}" ]; then 42 | install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name} 43 | else 44 | bbwarn "Use custom wks.in for $dtb_name = $type" 45 | fi 46 | install -m 0644 ${B}/${config}/arch/arm/dts/${dtb_name} ${DEPLOYDIR}/${BOOT_TOOLS}/${dtb_name}-${type} 47 | fi 48 | unset type_key 49 | unset dtb_name 50 | done 51 | 52 | unset UBOOT_DTB_NAME_FLAGS 53 | fi 54 | done 55 | unset j 56 | done 57 | unset i 58 | fi 59 | 60 | # Deploy CRT.* from u-boot for stmm 61 | install -m 0644 ${S}/CRT.* ${DEPLOYDIR} 62 | } 63 | 64 | do_deploy:append:mx93-generic-bsp() { 65 | # Deploy CRT.* from u-boot for stmm 66 | install -m 0644 ${S}/CRT.* ${DEPLOYDIR} 67 | } 68 | 69 | PACKAGE_ARCH = "${MACHINE_ARCH}" 70 | COMPATIBLE_MACHINE = "(mx6-generic-bsp|mx7-generic-bsp|mx8-generic-bsp|mx9-generic-bsp)" 71 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0010-nvme-add-accessor-to-namespace-id-and-eui64.patch: -------------------------------------------------------------------------------- 1 | From 89dbced60971ec1d01386b0457c20e045cbfe5ad Mon Sep 17 00:00:00 2001 2 | From: Patrick Wildt 3 | Date: Thu, 3 Oct 2019 13:48:47 +0200 4 | Subject: [PATCH 10/17] nvme: add accessor to namespace id and eui64 5 | 6 | This adds a function which can be used by e.g. EFI to retrieve 7 | the namespace identifier and EUI64. For that it adds the EUI64 8 | to its driver internal namespace structure and copies the EUI64 9 | during namespace identification. 10 | 11 | Upstream-Status: Backport [Solid-Run BSP] 12 | 13 | Signed-off-by: Patrick Wildt 14 | Tested-by: Heinrich Schuchardt 15 | Reviewed-by: Bin Meng 16 | (cherry picked from commit c50b2883dfc1ce355dc37238741ef97cd2c5d000) 17 | Signed-off-by: Olof Johansson 18 | --- 19 | drivers/nvme/nvme.c | 13 +++++++++++++ 20 | drivers/nvme/nvme.h | 1 + 21 | include/nvme.h | 12 ++++++++++++ 22 | 3 files changed, 26 insertions(+) 23 | 24 | diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c 25 | index 47f101e280..ee6b581d9e 100644 26 | --- a/drivers/nvme/nvme.c 27 | +++ b/drivers/nvme/nvme.c 28 | @@ -621,6 +621,18 @@ static int nvme_get_info_from_identify(struct nvme_dev *dev) 29 | return 0; 30 | } 31 | 32 | +int nvme_get_namespace_id(struct udevice *udev, u32 *ns_id, u8 *eui64) 33 | +{ 34 | + struct nvme_ns *ns = dev_get_priv(udev); 35 | + 36 | + if (ns_id) 37 | + *ns_id = ns->ns_id; 38 | + if (eui64) 39 | + memcpy(eui64, ns->eui64, sizeof(ns->eui64)); 40 | + 41 | + return 0; 42 | +} 43 | + 44 | int nvme_scan_namespace(void) 45 | { 46 | struct uclass *uc; 47 | @@ -657,6 +669,7 @@ static int nvme_blk_probe(struct udevice *udev) 48 | if (nvme_identify(ndev, ns->ns_id, 0, (dma_addr_t)(long)id)) 49 | return -EIO; 50 | 51 | + memcpy(&ns->eui64, &id->eui64, sizeof(id->eui64)); 52 | flbas = id->flbas & NVME_NS_FLBAS_LBA_MASK; 53 | ns->flbas = flbas; 54 | ns->lba_shift = id->lbaf[flbas].ds; 55 | diff --git a/drivers/nvme/nvme.h b/drivers/nvme/nvme.h 56 | index 922f7abfe8..0e8cb221a7 100644 57 | --- a/drivers/nvme/nvme.h 58 | +++ b/drivers/nvme/nvme.h 59 | @@ -637,6 +637,7 @@ struct nvme_ns { 60 | struct list_head list; 61 | struct nvme_dev *dev; 62 | unsigned ns_id; 63 | + u8 eui64[8]; 64 | int devnum; 65 | int lba_shift; 66 | u8 flbas; 67 | diff --git a/include/nvme.h b/include/nvme.h 68 | index 2c3d14d241..2cdf8ce320 100644 69 | --- a/include/nvme.h 70 | +++ b/include/nvme.h 71 | @@ -78,4 +78,16 @@ int nvme_scan_namespace(void); 72 | */ 73 | int nvme_print_info(struct udevice *udev); 74 | 75 | +/** 76 | + * nvme_get_namespace_id - return namespace identifier 77 | + * 78 | + * This returns the namespace identifier. 79 | + * 80 | + * @udev: NVMe controller device 81 | + * @ns_id: Place where to put the name space identifier 82 | + * @eui64: Place where to put the IEEE Extended Unique Identifier 83 | + * @return: 0 on success, -ve on error 84 | + */ 85 | +int nvme_get_namespace_id(struct udevice *udev, u32 *ns_id, u8 *eui64); 86 | + 87 | #endif /* __NVME_H__ */ 88 | -- 89 | 2.17.1 90 | 91 | -------------------------------------------------------------------------------- /recipes-kernel/linux/linux-fslc/imx6q-var-som-vsc.dts: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 | /* 3 | * Support for Variscite VAR-SOM-MX6 Starter Kit 4 | * 5 | * Copyright 2018 6 | * Author: Andreas Müller 7 | */ 8 | 9 | /dts-v1/; 10 | 11 | #include "imx6q.dtsi" 12 | #include "imx6qdl-var-som.dtsi" 13 | #include 14 | 15 | / { 16 | model = "Variscite i.MX6 VAR-SOM-MX6"; 17 | compatible = "variscite,var-som", "fsl,imx6q"; 18 | 19 | gpio-keys { /* OK */ 20 | compatible = "gpio-keys"; 21 | autorepeat; 22 | 23 | back { 24 | gpios = <&gpio5 20 GPIO_ACTIVE_LOW>; 25 | linux,code = ; 26 | label = "Key Back"; 27 | linux,input-type = <1>; 28 | debounce-interval = <100>; 29 | wakeup-source; 30 | }; 31 | }; 32 | 33 | 34 | sound { 35 | compatible = "simple-audio-card"; 36 | simple-audio-card,name = "tlv320aic3106-audio"; 37 | simple-audio-card,format = "i2s"; 38 | simple-audio-card,bitclock-master = <&sound_codec>; 39 | simple-audio-card,frame-master = <&sound_codec>; 40 | simple-audio-card,widgets = "Headphone", "Headphone Jack", 41 | "Line", "Line In"; 42 | simple-audio-card,routing = "Headphone Jack", "HPLOUT", 43 | "Headphone Jack", "HPROUT", 44 | "LINE1L", "Line In", 45 | "LINE1R", "Line In"; 46 | 47 | sound_cpu: simple-audio-card,cpu { 48 | sound-dai = <&ssi2>; 49 | }; 50 | 51 | sound_codec: simple-audio-card,codec { 52 | sound-dai = <&tlv320aic3106>; 53 | clocks = <&clks IMX6QDL_CLK_CKO>; 54 | }; 55 | }; 56 | }; 57 | 58 | &can1 { 59 | status = "okay"; 60 | }; 61 | 62 | &ecspi1 { 63 | cs-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>, 64 | <&gpio4 10 GPIO_ACTIVE_HIGH>; 65 | status = "okay"; 66 | }; 67 | 68 | &fec { /* OK */ 69 | status = "okay"; 70 | }; 71 | 72 | &hdmi { 73 | status = "okay"; 74 | }; 75 | 76 | &i2c3 { /* OK */ 77 | status = "okay"; 78 | rtc@0x68 { 79 | compatible = "dallas,ds1337"; 80 | reg = <0x68>; 81 | }; 82 | }; 83 | 84 | /*&ldb { 85 | status = "okay"; 86 | 87 | lvds-channel@1 { 88 | status = "okay"; 89 | 90 | port@4 { 91 | reg = <4>; 92 | 93 | lvds1_out: endpoint { 94 | remote-endpoint = <&panel_in>; 95 | }; 96 | }; 97 | }; 98 | };*/ 99 | 100 | &pwm2 { 101 | status = "okay"; 102 | }; 103 | 104 | &uart1 { 105 | status = "okay"; 106 | }; 107 | 108 | &uart3 { 109 | status = "okay"; 110 | }; 111 | 112 | &usbh1 { 113 | status = "okay"; 114 | }; 115 | 116 | &usbotg { 117 | status = "okay"; 118 | }; 119 | 120 | &usdhc2 { /* OK */ 121 | pinctrl-1 = <&pinctrl_usdhc2cdwp>; 122 | cd-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>; 123 | wp-gpios = <&gpio4 15 GPIO_ACTIVE_HIGH>; 124 | status = "okay"; 125 | }; 126 | 127 | &iomuxc { 128 | pinctrl_gpio_keys: gpio_keysgrp { 129 | fsl,pins = < 130 | /* user button */ 131 | MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x17059 132 | >; 133 | }; 134 | 135 | pinctrl_usdhc2cdwp: usdhc2cdwpgrp { 136 | fsl,pins = < 137 | /* SDMMC2 CD/WP */ 138 | MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x80000000 139 | MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 140 | >; 141 | }; 142 | }; 143 | 144 | 145 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw-lx2160acex7/0007-lx2160acex7-pcie-workarounds-and-fan-full-speed.patch: -------------------------------------------------------------------------------- 1 | From 6d634d64528e5ba510c369a2ae19c337ae7d692e Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Mon, 23 Mar 2020 12:36:20 +0200 4 | Subject: [PATCH 7/8] lx2160acex7 - pcie workarounds and fan full speed 5 | 6 | 1. Moves calling the workarounds to the _defaults.rcwi 7 | 2. Toggle fan-full-speed GPIO. The fan controller starts throttling when 8 | a driver exists (i.e. kernel); in order to avoid overheating until then 9 | enable full speed. 10 | 3. Run a050234.rcw on rev1 - fixes some issues observed when using Mellanox 11 | ConnectX-5 NICs 12 | 4. Run a009531 and a00885 on rev2. 13 | 14 | Upstream-Status: Inappropriate [Solid-Run BSP] 15 | 16 | Signed-off-by: Rabeeh Khoury 17 | --- 18 | lx2160acex7/configs/lx2160a_defaults.rcwi | 21 +++++++++++++++++---- 19 | lx2160acex7/configs/lx2160a_sdboot.rcwi | 6 ------ 20 | lx2160acex7/configs/lx2160a_xspiboot.rcwi | 6 ------ 21 | 3 files changed, 17 insertions(+), 16 deletions(-) 22 | 23 | diff --git a/lx2160acex7/configs/lx2160a_defaults.rcwi b/lx2160acex7/configs/lx2160a_defaults.rcwi 24 | index 3ea7683..7af1f5b 100644 25 | --- a/lx2160acex7/configs/lx2160a_defaults.rcwi 26 | +++ b/lx2160acex7/configs/lx2160a_defaults.rcwi 27 | @@ -1,10 +1,6 @@ 28 | #include <../lx2160asi/lx2160a.rcwi> 29 | MEM_PLL_CFG=3 30 | MEM2_PLL_CFG=3 31 | -C5_PLL_SEL=0 32 | -C6_PLL_SEL=0 33 | -C7_PLL_SEL=0 34 | -C8_PLL_SEL=0 35 | HWA_CGA_M1_CLK_SEL=1 36 | HWA_CGB_M1_CLK_SEL=7 37 | BOOT_LOC=26 38 | @@ -22,3 +18,20 @@ IRQ07_04_PMUX=1 39 | IRQ11_08_PMUX=1 40 | EVT20_PMUX=1 41 | EVT43_PMUX=1 42 | + 43 | +/* Drive the fan full speed pin */ 44 | +.pbi 45 | +write 0x2320000,0x20000000 46 | +.end 47 | + 48 | +/* Errata for SATA controller */ 49 | +#include <../lx2160asi/a010554.rcw> 50 | + 51 | +/* Errata for rev 1 PCIe controller */ 52 | +#include <../lx2160asi/a011270.rcw> 53 | + 54 | +/* Errata a050234 - fix elastic buffer threshold in rev 1 */ 55 | +#include <../lx2160asi/a050234.rcw> 56 | + 57 | +/* LX2 rev 2 PCIe Errata A-009531 and A-008851*/ 58 | +#include <../lx2160asi/a009531_a008851.rcw> 59 | diff --git a/lx2160acex7/configs/lx2160a_sdboot.rcwi b/lx2160acex7/configs/lx2160a_sdboot.rcwi 60 | index d537ea5..9086ffc 100644 61 | --- a/lx2160acex7/configs/lx2160a_sdboot.rcwi 62 | +++ b/lx2160acex7/configs/lx2160a_sdboot.rcwi 63 | @@ -9,12 +9,6 @@ blockcopy 0x08,0x00100000,0x1800a000,0x00020000 64 | /* Boot Location Pointer */ 65 | #include <../lx2160asi/bootlocptr_sd.rcw> 66 | 67 | -/* Errata for SATA controller */ 68 | -#include <../lx2160asi/a010554.rcw> 69 | - 70 | -/* Errata for PCIe controller */ 71 | -#include <../lx2160asi/a011270.rcw> 72 | - 73 | /* common PBI commands */ 74 | #include <../lx2160asi/common.rcw> 75 | 76 | diff --git a/lx2160acex7/configs/lx2160a_xspiboot.rcwi b/lx2160acex7/configs/lx2160a_xspiboot.rcwi 77 | index 28310c9..fa092c9 100644 78 | --- a/lx2160acex7/configs/lx2160a_xspiboot.rcwi 79 | +++ b/lx2160acex7/configs/lx2160a_xspiboot.rcwi 80 | @@ -4,12 +4,6 @@ 81 | /* Boot Location Pointer */ 82 | #include <../lx2160asi/bootlocptr_nor.rcw> 83 | 84 | -/* Errata for SATA controller */ 85 | -#include <../lx2160asi/a010554.rcw> 86 | - 87 | -/* Errata for PCIe controller */ 88 | -#include <../lx2160asi/a011270.rcw> 89 | - 90 | /* common PBI commands */ 91 | #include <../lx2160asi/common.rcw> 92 | 93 | -- 94 | 2.17.1 95 | 96 | -------------------------------------------------------------------------------- /conf/machine/nitrogen8mp.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen8MP 3 | #@SOC: i.MX8 MP 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen8MP 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx8mp:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | require conf/machine/include/imx-base.inc 12 | require conf/machine/include/arm/armv8a/tune-cortexa53.inc 13 | 14 | # Kernel configuration 15 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 16 | KERNEL_DEVICETREE = "freescale/imx8mp-nitrogen8mp.dtb \ 17 | freescale/imx8mp-nitrogen_smarc.dtb \ 18 | freescale/imx8mp-nitrogen8mp-m4.dtb \ 19 | freescale/imx8mp-nitrogen_smarc-rpmsg.dtb \ 20 | freescale/imx8mp-nitrogen8mp-basler3840-4200.dtb \ 21 | freescale/imx8mp-nitrogen8mp-enc.dtb \ 22 | freescale/imx8mp-nitrogen8mp-enc-m4.dtb \ 23 | freescale/imx8mp-nitrogen8mp-enc-ar.dtb \ 24 | freescale/imx8mp-nitrogen8mp-enc-basler4200-ov5640.dtb \ 25 | freescale/imx8mp-nitrogen8mp-enc-tc358743.dtb \ 26 | freescale/imx8mp-nitrogen8mp_r20.dtb \ 27 | freescale/imx8mp-nitrogen8mp_r20-m4.dtb \ 28 | freescale/imx8mp-nitrogen8mp_r20-basler3840-4200.dtb \ 29 | freescale/imx8mp-nitrogen8mp_r20-enc.dtb \ 30 | freescale/imx8mp-nitrogen8mp_r20-enc-m4.dtb \ 31 | freescale/imx8mp-nitrogen8mp_r20-enc-ar.dtb \ 32 | freescale/imx8mp-nitrogen8mp_r20-enc-basler4200-ov5640.dtb \ 33 | freescale/imx8mp-nitrogen8mp_r20-enc-tc358743.dtb \ 34 | freescale/imx8mp-nitrogen8mp_vm.dtb \ 35 | " 36 | 37 | KERNEL_IMAGETYPE = "Image" 38 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 39 | 40 | # U-Boot configuration 41 | IMX_DEFAULT_BOOTLOADER:imx-nxp-bsp = "u-boot-boundary" 42 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 43 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 44 | PREFERRED_PROVIDER_imx-atf ??= "imx-atf-boundary" 45 | SPL_BINARY = "spl/u-boot-spl.bin" 46 | UBOOT_SUFFIX = "bin" 47 | 48 | UBOOT_CONFIG ??= "2g 2gr0 4g 8g smarc_2gr0 smarc_4g smarc_8g" 49 | UBOOT_CONFIG[2g] = "${MACHINE}_2g_defconfig,sdcard" 50 | UBOOT_CONFIG[2gr0] = "${MACHINE}_2gr0_defconfig,sdcard" 51 | UBOOT_CONFIG[4g] = "${MACHINE}_4g_defconfig,sdcard" 52 | UBOOT_CONFIG[8g] = "${MACHINE}_8g_defconfig,sdcard" 53 | UBOOT_CONFIG[smarc_2gr0] = "imx8mp_nitrogen_smarc_2gr0_defconfig,sdcard" 54 | UBOOT_CONFIG[smarc_4g] = "imx8mp_nitrogen_smarc_4g_defconfig,sdcard" 55 | UBOOT_CONFIG[smarc_8g] = "imx8mp_nitrogen_smarc_8g_defconfig,sdcard" 56 | 57 | ATF_PLATFORM = "imx8mp" 58 | 59 | DDR_FIRMWARE_NAME = "\ 60 | lpddr4_pmu_train_1d_imem_202006.bin \ 61 | lpddr4_pmu_train_1d_dmem_202006.bin \ 62 | lpddr4_pmu_train_2d_imem_202006.bin \ 63 | lpddr4_pmu_train_2d_dmem_202006.bin \ 64 | " 65 | 66 | IMAGE_BOOT_FILES:append = " \ 67 | boot.scr-${MACHINE};boot.scr \ 68 | upgrade.scr-${MACHINE};upgrade.scr \ 69 | flash.bin-${MACHINE}-2g;u-boot.${MACHINE}_2g \ 70 | flash.bin-${MACHINE}-2gr0;u-boot.${MACHINE}_2gr0 \ 71 | flash.bin-${MACHINE}-4g;u-boot.${MACHINE}_4g \ 72 | flash.bin-${MACHINE}-8g;u-boot.${MACHINE}_8g \ 73 | flash.bin-${MACHINE}-smarc_2gr0;u-boot.imx8mp_nitrogen_smarc_2gr0 \ 74 | flash.bin-${MACHINE}-smarc_4g;u-boot.imx8mp_nitrogen_smarc_4g \ 75 | flash.bin-${MACHINE}-smarc_8g;u-boot.imx8mp_nitrogen_smarc_8g \ 76 | " 77 | 78 | # wic support 79 | WKS_FILE = "sdimage-bootpart.wks" 80 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 81 | 82 | OPTEE_BIN_EXT = "8mp" 83 | 84 | SERIAL_CONSOLES = "115200;ttymxc1" 85 | 86 | MACHINE_FEATURES += " pci wifi bluetooth" 87 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq-lx2160acex7/0012-nvme-use-page-aligned-buffer-for-identify-command.patch: -------------------------------------------------------------------------------- 1 | From f6b1bf35c4423eb1f038eca80df4f7d6862f338a Mon Sep 17 00:00:00 2001 2 | From: Patrick Wildt 3 | Date: Wed, 16 Oct 2019 08:42:04 +0200 4 | Subject: [PATCH 12/17] nvme: use page-aligned buffer for identify command 5 | 6 | Change the stack-allocated buffer for the identification command 7 | to explicitly allocate page-aligned buffers. Even though the spec 8 | seems to allow having admin queue commands on non page-aligned 9 | buffers, it seems to not be possible on my i.MX8MQ board with a 10 | a Silicon Power P34A80. Since all of the NVMe drivers I have seen 11 | always do admin commands on a page-aligned buffer, which does work 12 | on my system, it makes sense for us to do that as well. 13 | 14 | Upstream-Status: Backport [Solid-Run BSP] 15 | 16 | Signed-off-by: Patrick Wildt 17 | Reviewed-by: Bin Meng 18 | (cherry picked from commit 2f83481dff9c4f253a6ac341911d78d4984ca07b) 19 | Signed-off-by: Olof Johansson 20 | --- 21 | drivers/nvme/nvme.c | 24 ++++++++++++++++++------ 22 | 1 file changed, 18 insertions(+), 6 deletions(-) 23 | 24 | diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c 25 | index 53ff6e89aa..f915817aaa 100644 26 | --- a/drivers/nvme/nvme.c 27 | +++ b/drivers/nvme/nvme.c 28 | @@ -583,14 +583,19 @@ static int nvme_setup_io_queues(struct nvme_dev *dev) 29 | 30 | static int nvme_get_info_from_identify(struct nvme_dev *dev) 31 | { 32 | - ALLOC_CACHE_ALIGN_BUFFER(char, buf, sizeof(struct nvme_id_ctrl)); 33 | - struct nvme_id_ctrl *ctrl = (struct nvme_id_ctrl *)buf; 34 | + struct nvme_id_ctrl *ctrl; 35 | int ret; 36 | int shift = NVME_CAP_MPSMIN(dev->cap) + 12; 37 | 38 | + ctrl = memalign(dev->page_size, sizeof(struct nvme_id_ctrl)); 39 | + if (!ctrl) 40 | + return -ENOMEM; 41 | + 42 | ret = nvme_identify(dev, 0, 1, (dma_addr_t)(long)ctrl); 43 | - if (ret) 44 | + if (ret) { 45 | + free(ctrl); 46 | return -EIO; 47 | + } 48 | 49 | dev->nn = le32_to_cpu(ctrl->nn); 50 | dev->vwc = ctrl->vwc; 51 | @@ -621,6 +626,7 @@ static int nvme_get_info_from_identify(struct nvme_dev *dev) 52 | dev->max_transfer_shift = 20; 53 | } 54 | 55 | + free(ctrl); 56 | return 0; 57 | } 58 | 59 | @@ -661,16 +667,21 @@ static int nvme_blk_probe(struct udevice *udev) 60 | struct blk_desc *desc = dev_get_uclass_platdata(udev); 61 | struct nvme_ns *ns = dev_get_priv(udev); 62 | u8 flbas; 63 | - ALLOC_CACHE_ALIGN_BUFFER(char, buf, sizeof(struct nvme_id_ns)); 64 | - struct nvme_id_ns *id = (struct nvme_id_ns *)buf; 65 | struct pci_child_platdata *pplat; 66 | + struct nvme_id_ns *id; 67 | + 68 | + id = memalign(ndev->page_size, sizeof(struct nvme_id_ns)); 69 | + if (!id) 70 | + return -ENOMEM; 71 | 72 | memset(ns, 0, sizeof(*ns)); 73 | ns->dev = ndev; 74 | /* extract the namespace id from the block device name */ 75 | ns->ns_id = trailing_strtol(udev->name) + 1; 76 | - if (nvme_identify(ndev, ns->ns_id, 0, (dma_addr_t)(long)id)) 77 | + if (nvme_identify(ndev, ns->ns_id, 0, (dma_addr_t)(long)id)) { 78 | + free(id); 79 | return -EIO; 80 | + } 81 | 82 | memcpy(&ns->eui64, &id->eui64, sizeof(id->eui64)); 83 | flbas = id->flbas & NVME_NS_FLBAS_LBA_MASK; 84 | @@ -689,6 +700,7 @@ static int nvme_blk_probe(struct udevice *udev) 85 | memcpy(desc->product, ndev->serial, sizeof(ndev->serial)); 86 | memcpy(desc->revision, ndev->firmware_rev, sizeof(ndev->firmware_rev)); 87 | 88 | + free(id); 89 | return 0; 90 | } 91 | 92 | -- 93 | 2.17.1 94 | 95 | -------------------------------------------------------------------------------- /conf/machine/nitrogen8mm.conf: -------------------------------------------------------------------------------- 1 | #@TYPE: Machine 2 | #@NAME: Boundary Devices Nitrogen8MM 3 | #@SOC: i.MX8MM 4 | #@DESCRIPTION: Machine configuration for Boundary Devices Nitrogen8MM 5 | #@MAINTAINER: Chris Dimich 6 | 7 | MACHINEOVERRIDES =. "mx8mm:" 8 | 9 | IMX_DEFAULT_BSP ?= "nxp" 10 | 11 | require conf/machine/include/imx-base.inc 12 | require conf/machine/include/arm/armv8a/tune-cortexa53.inc 13 | 14 | # Kernel configuration 15 | PREFERRED_PROVIDER_virtual/kernel ??= "linux-boundary" 16 | KERNEL_DEVICETREE = "\ 17 | freescale/imx8mm-nitrogen8mm.dtb \ 18 | freescale/imx8mm-nitrogen8mm-m4.dtb \ 19 | freescale/imx8mm-nitrogen8mm-tc358743.dtb \ 20 | freescale/imx8mm-nitrogen8mm_rev2.dtb \ 21 | freescale/imx8mm-nitrogen8mm_rev2-m4.dtb \ 22 | freescale/imx8mm-nitrogen8mm_rev2-tc358743.dtb \ 23 | freescale/imx8mm-nitrogen8mm_som.dtb \ 24 | freescale/imx8mm-nitrogen8mm_som-m4.dtb \ 25 | freescale/imx8mm-nitrogen8mm_som-mcp2518fd.dtb \ 26 | freescale/imx8mm-nitrogen8mm_som-mcp25625.dtb \ 27 | freescale/imx8mm-nitrogen8mm_som-tc358743.dtb \ 28 | freescale/imx8mm-nitrogen8mm_tab.dtb \ 29 | freescale/imx8mm-nitrogen_smarc.dtb \ 30 | " 31 | KERNEL_IMAGETYPE = "Image" 32 | RRECOMMENDS:${KERNEL_PACKAGE_NAME}-base = "" 33 | 34 | # U-Boot configuration 35 | IMX_DEFAULT_BOOTLOADER:imx-nxp-bsp = "u-boot-boundary" 36 | PREFERRED_PROVIDER_u-boot ??= "u-boot-boundary" 37 | PREFERRED_PROVIDER_virtual/bootloader ??= "u-boot-boundary" 38 | PREFERRED_PROVIDER_imx-atf ??= "imx-atf-boundary" 39 | SPL_BINARY = "spl/u-boot-spl.bin" 40 | UBOOT_SUFFIX = "bin" 41 | 42 | UBOOT_CONFIG ??= "2g 2gr0 4g rev2_2g rev2_2gr0 rev2_4g som_1gr0 som_2g som_2gr0 som_4g smarc_2gr0 smarc_1gch1r0" 43 | UBOOT_CONFIG[2g] = "${MACHINE}_2g_defconfig,sdcard" 44 | UBOOT_CONFIG[2gr0] = "${MACHINE}_2gr0_defconfig,sdcard" 45 | UBOOT_CONFIG[4g] = "${MACHINE}_4g_defconfig,sdcard" 46 | UBOOT_CONFIG[rev2_2g] = "${MACHINE}_rev2_2g_defconfig,sdcard" 47 | UBOOT_CONFIG[rev2_2gr0] = "${MACHINE}_rev2_4g_defconfig,sdcard" 48 | UBOOT_CONFIG[rev2_4g] = "${MACHINE}_2gr0_defconfig,sdcard" 49 | UBOOT_CONFIG[som_1gr0] = "${MACHINE}_som_1gr0_defconfig,sdcard" 50 | UBOOT_CONFIG[som_2g] = "${MACHINE}_som_2g_defconfig,sdcard" 51 | UBOOT_CONFIG[som_2gr0] = "${MACHINE}_som_2g_defconfig,sdcard" 52 | UBOOT_CONFIG[som_4g] = "${MACHINE}_som_4g_defconfig,sdcard" 53 | UBOOT_CONFIG[smarc_2gr0] = "imx8mm_nitrogen_smarc_2gr0_defconfig,sdcard" 54 | UBOOT_CONFIG[smarc_1gch1r0] = "imx8mm_nitrogen_smarc_1gch1r0_defconfig,sdcard" 55 | 56 | ATF_PLATFORM = "imx8mm" 57 | 58 | # Set DDR FIRMWARE 59 | DDR_FIRMWARE_NAME = "\ 60 | lpddr4_pmu_train_1d_imem.bin \ 61 | lpddr4_pmu_train_1d_dmem.bin \ 62 | lpddr4_pmu_train_2d_imem.bin \ 63 | lpddr4_pmu_train_2d_dmem.bin \ 64 | " 65 | 66 | IMAGE_BOOT_FILES:append = " \ 67 | boot.scr-${MACHINE};boot.scr \ 68 | upgrade.scr-${MACHINE};upgrade.scr \ 69 | flash.bin-${MACHINE}-2g;u-boot.${MACHINE}_2g \ 70 | flash.bin-${MACHINE}-2gr0;u-boot.${MACHINE}_2gr0 \ 71 | flash.bin-${MACHINE}-4g;u-boot.${MACHINE}_4g \ 72 | flash.bin-${MACHINE}-rev2_2g;u-boot.${MACHINE}_rev2_2g \ 73 | flash.bin-${MACHINE}-rev2_2gr0;u-boot.${MACHINE}_rev2_2gr0 \ 74 | flash.bin-${MACHINE}-rev2_4g;u-boot.${MACHINE}_rev2_4g \ 75 | flash.bin-${MACHINE}-som_1gr0;u-boot.${MACHINE}_som_1gr0 \ 76 | flash.bin-${MACHINE}-som_2g;u-boot.${MACHINE}_som_2g \ 77 | flash.bin-${MACHINE}-som_2gr0;u-boot.${MACHINE}_som_2gr0 \ 78 | flash.bin-${MACHINE}-som_4g;u-boot.${MACHINE}_som_4g \ 79 | flash.bin-${MACHINE}-smarc_2gr0;u-boot.imx8mm_nitrogen_smarc_2gr0 \ 80 | flash.bin-${MACHINE}-smarc_1gch1r0;u-boot.imx8mm_nitrogen_smarc_1gch1r0 \ 81 | " 82 | 83 | # wic support 84 | WKS_FILE = "sdimage-bootpart.wks" 85 | WKS_FILE_DEPENDS += "u-boot-script-boundary" 86 | 87 | SERIAL_CONSOLES = "115200;ttymxc1" 88 | 89 | MACHINE_FEATURES += " pci wifi bluetooth" 90 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq/0001-binman-Convert-a-few-tests-to-Python-3.patch: -------------------------------------------------------------------------------- 1 | From b6ee0cf89f9405094cbb6047076a13e14ebc030b Mon Sep 17 00:00:00 2001 2 | From: Simon Glass 3 | Date: Thu, 31 Oct 2019 07:43:03 -0600 4 | Subject: [PATCH] binman: Convert a few tests to Python 3 5 | 6 | Some tests have crept in with Python 2 strings and constructs. Convert 7 | then. 8 | 9 | Upstream-Status: Backport 10 | 11 | Signed-off-by: Simon Glass 12 | --- 13 | tools/binman/ftest.py | 14 +++++++------- 14 | 1 file changed, 7 insertions(+), 7 deletions(-) 15 | 16 | diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py 17 | index 93507993a0..80df0e3ca9 100644 18 | --- a/tools/binman/ftest.py 19 | +++ b/tools/binman/ftest.py 20 | @@ -2113,7 +2113,7 @@ class TestFunctional(unittest.TestCase): 21 | data = self.data = self._DoReadFileRealDtb('115_fdtmap.dts') 22 | fdtmap_data = data[len(U_BOOT_DATA):] 23 | magic = fdtmap_data[:8] 24 | - self.assertEqual('_FDTMAP_', magic) 25 | + self.assertEqual(b'_FDTMAP_', magic) 26 | self.assertEqual(tools.GetBytes(0, 8), fdtmap_data[8:16]) 27 | 28 | fdt_data = fdtmap_data[16:] 29 | @@ -2156,7 +2156,7 @@ class TestFunctional(unittest.TestCase): 30 | dtb = fdt.Fdt.FromData(fdt_data) 31 | fdt_size = dtb.GetFdtObj().totalsize() 32 | hdr_data = data[-8:] 33 | - self.assertEqual('BinM', hdr_data[:4]) 34 | + self.assertEqual(b'BinM', hdr_data[:4]) 35 | offset = struct.unpack(' 3 | Date: Mon, 4 May 2020 22:52:02 +0300 4 | Subject: [PATCH 16/17] lx2160acex7: Misc fixes to support LSDK-20.04 5 | 6 | Upstream-Status: Inappropriate [Solid-Run BSP] 7 | 8 | Signed-off-by: Rabeeh Khoury 9 | --- 10 | arch/arm/Kconfig | 1 + 11 | board/solidrun/lx2160a/lx2160a.c | 4 +++- 12 | configs/lx2160acex7_tfa_defconfig | 24 ++++++++++++------------ 13 | 3 files changed, 16 insertions(+), 13 deletions(-) 14 | 15 | diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig 16 | index 8615e1673f..c78e17a0ed 100644 17 | --- a/arch/arm/Kconfig 18 | +++ b/arch/arm/Kconfig 19 | @@ -1195,6 +1195,7 @@ config TARGET_LX2160ACEX7 20 | select ARCH_MISC_INIT 21 | select ARM64 22 | select ARMV8_MULTIENTRY 23 | + select ARCH_SUPPORT_TFABOOT 24 | select BOARD_LATE_INIT 25 | help 26 | Support for SolidRun LX2160A based com express type 7 module and 27 | diff --git a/board/solidrun/lx2160a/lx2160a.c b/board/solidrun/lx2160a/lx2160a.c 28 | index b7211a2d5c..975431fd53 100644 29 | --- a/board/solidrun/lx2160a/lx2160a.c 30 | +++ b/board/solidrun/lx2160a/lx2160a.c 31 | @@ -16,7 +16,7 @@ 32 | #include 33 | #include 34 | #include 35 | -#include 36 | +#include 37 | #include 38 | #include 39 | #include 40 | @@ -26,6 +26,8 @@ 41 | #include 42 | #include "../../freescale/common/vid.h" 43 | #include 44 | +#include 45 | +#include 46 | 47 | #ifdef CONFIG_EMC2301 48 | #include "../common/emc2301.h" 49 | diff --git a/configs/lx2160acex7_tfa_defconfig b/configs/lx2160acex7_tfa_defconfig 50 | index 2a3441d263..d2e62a6e91 100644 51 | --- a/configs/lx2160acex7_tfa_defconfig 52 | +++ b/configs/lx2160acex7_tfa_defconfig 53 | @@ -1,16 +1,15 @@ 54 | CONFIG_ARM=y 55 | CONFIG_TARGET_LX2160ACEX7=y 56 | +CONFIG_TFABOOT=y 57 | CONFIG_SYS_TEXT_BASE=0x82000000 58 | CONFIG_SYS_MALLOC_F_LEN=0x6000 59 | CONFIG_FSPI_AHB_EN_4BYTE=y 60 | -CONFIG_TFABOOT=y 61 | +CONFIG_NR_DRAM_BANKS=3 62 | CONFIG_ARMV8_SEC_FIRMWARE_SUPPORT=y 63 | CONFIG_SEC_FIRMWARE_ARMV8_PSCI=y 64 | CONFIG_AHCI=y 65 | -CONFIG_NR_DRAM_BANKS=3 66 | CONFIG_FIT_VERBOSE=y 67 | CONFIG_OF_BOARD_SETUP=y 68 | -CONFIG_OF_BOARD_FIXUP=y 69 | CONFIG_OF_STDOUT_VIA_ALIAS=y 70 | CONFIG_BOOTDELAY=10 71 | CONFIG_USE_BOOTARGS=y 72 | @@ -29,6 +28,7 @@ CONFIG_CMD_NVME=y 73 | CONFIG_NVME=y 74 | CONFIG_MP=y 75 | CONFIG_OF_CONTROL=y 76 | +CONFIG_OF_BOARD_FIXUP=y 77 | CONFIG_DEFAULT_DEVICE_TREE="fsl-lx2160a-cex7" 78 | CONFIG_ENV_IS_IN_MMC=y 79 | CONFIG_ENV_IS_IN_SPI_FLASH=y 80 | @@ -36,6 +36,10 @@ CONFIG_NET_RANDOM_ETHADDR=y 81 | CONFIG_DM=y 82 | CONFIG_SATA_CEVA=y 83 | CONFIG_FSL_CAAM=y 84 | +CONFIG_DM_GPIO=y 85 | +CONFIG_DM_I2C=y 86 | +CONFIG_I2C_SET_DEFAULT_BUS_NUM=y 87 | +CONFIG_I2C_DEFAULT_BUS_NUMBER=0 88 | CONFIG_DM_MMC=y 89 | CONFIG_FSL_ESDHC=y 90 | CONFIG_DM_SPI_FLASH=y 91 | @@ -55,28 +59,24 @@ CONFIG_CMD_MII=y 92 | CONFIG_CMD_DHCP=y 93 | CONFIG_CMD_FAT=y 94 | CONFIG_CMD_EXT2=y 95 | +CONFIG_E1000=y 96 | CONFIG_PCI=y 97 | CONFIG_DM_PCI=y 98 | CONFIG_DM_PCI_COMPAT=y 99 | CONFIG_PCIE_LAYERSCAPE_GEN4=y 100 | CONFIG_PCIE_LAYERSCAPE=y 101 | -CONFIG_E1000=y 102 | +CONFIG_DM_RTC=y 103 | +CONFIG_RTC_PCF2127=y 104 | + 105 | CONFIG_DM_SCSI=y 106 | CONFIG_DM_SERIAL=y 107 | -CONFIG_SERIAL_PROBE_ALL=y 108 | CONFIG_SPI=y 109 | CONFIG_DM_SPI=y 110 | CONFIG_NXP_FSPI=y 111 | -# CONFIG_SYS_NXP_FSPI_AHB=y 112 | CONFIG_USB=y 113 | CONFIG_DM_USB=y 114 | CONFIG_USB_XHCI_HCD=y 115 | CONFIG_USB_XHCI_DWC3=y 116 | CONFIG_EFI_LOADER_BOUNCE_BUFFER=y 117 | -CONFIG_DM_I2C=y 118 | -CONFIG_I2C_SET_DEFAULT_BUS_NUM=y 119 | -CONFIG_I2C_DEFAULT_BUS_NUMBER=0 120 | -CONFIG_DM_RTC=y 121 | -CONFIG_DM_GPIO=y 122 | CONFIG_CMD_DATE=y 123 | -CONFIG_RTC_PCF2127=y 124 | +CONFIG_GIC_V3_ITS=y 125 | -- 126 | 2.17.1 127 | 128 | -------------------------------------------------------------------------------- /recipes-bsp/rcw/rcw-lx2160acex7/0008-lx2160a-add-generic-bootloc-section.patch: -------------------------------------------------------------------------------- 1 | From f7f0ad5e568862f7dc70fbd0f790845ee576734d Mon Sep 17 00:00:00 2001 2 | From: Rabeeh Khoury 3 | Date: Tue, 24 Mar 2020 03:42:14 +0200 4 | Subject: [PATCH 8/8] lx2160a: add generic bootloc section 5 | 6 | The generic bootloc section does conditional blockcopy from SD/eMMC and 7 | SPI with some predefined addresses. 8 | Later on if ATF is used; those addresses are modified with ATF's 9 | create_pbl.c 10 | 11 | With this method a single boot image is unified for all the 3 different 12 | boot methods. 13 | 14 | Upstream-Status: Inappropriate [Solid-Run BSP] 15 | 16 | Signed-off-by: Rabeeh Khoury 17 | --- 18 | lx2160acex7/configs/lx2160a_defaults.rcwi | 12 +++++ 19 | lx2160asi/bootlocptr.rcw | 62 +++++++++++++++++++++++ 20 | 2 files changed, 74 insertions(+) 21 | create mode 100644 lx2160asi/bootlocptr.rcw 22 | 23 | diff --git a/lx2160acex7/configs/lx2160a_defaults.rcwi b/lx2160acex7/configs/lx2160a_defaults.rcwi 24 | index 7af1f5b..7997d49 100644 25 | --- a/lx2160acex7/configs/lx2160a_defaults.rcwi 26 | +++ b/lx2160acex7/configs/lx2160a_defaults.rcwi 27 | @@ -35,3 +35,15 @@ write 0x2320000,0x20000000 28 | 29 | /* LX2 rev 2 PCIe Errata A-009531 and A-008851*/ 30 | #include <../lx2160asi/a009531_a008851.rcw> 31 | + 32 | +/* Unified boot location copy */ 33 | +#include <../lx2160asi/bootlocptr.rcw> 34 | + 35 | +/* Errata to write on scratch reg for validation */ 36 | +#include <../lx2160asi/scratchrw1.rcw> 37 | + 38 | +/* common PBI commands */ 39 | +#include <../lx2160asi/common.rcw> 40 | + 41 | +/* Modify FlexSPI Clock Divisor value - for now keep it fixed value but using loadc/jumpc/jump it can be calculated on the fly */ 42 | +#include <../lx2160asi/flexspi_divisor_28.rcw> 43 | diff --git a/lx2160asi/bootlocptr.rcw b/lx2160asi/bootlocptr.rcw 44 | new file mode 100644 45 | index 0000000..645182f 46 | --- /dev/null 47 | +++ b/lx2160asi/bootlocptr.rcw 48 | @@ -0,0 +1,62 @@ 49 | +/* 50 | + * Generic code for auto booting. 51 | + * For each section blockcopy followed by write to bootlocl then bootloch must 52 | + * be followed in each section since when using ATF with create_pbl script in 53 | + * auto mode; it counts on the sequence of to be in that order. 54 | + */ 55 | + 56 | +/* Boot from SD - copy SPL Uboot to Ocram */ 57 | +.pbi 58 | +/* Load condition PORSR1 and mask RCW_SRC */ 59 | +loadc 0x01e00000,0x07800000 60 | + 61 | +/* If it is 0x8 << 23 then skip the following jump command */ 62 | +jumpc 0x00000014,0x04000000 63 | + 64 | +/* Jump all the below instructions */ 65 | +jump 0x28 /* All instruction below including the jump are 40 bytes */ 66 | + 67 | +/* blockcopy must be followed by two writes to bootlocl and bootloch */ 68 | +blockcopy 0x08,0x00100000,0x1800a000,0x00020000 69 | +write 0x01e00400,0x1800a000 70 | +write 0x01e00404,0x00000000 71 | +.end 72 | + 73 | +/* Boot from eMMC - copy SPL Uboot to Ocram */ 74 | +.pbi 75 | +/* Load condition PORSR1 and mask RCW_SRC */ 76 | +loadc 0x01e00000,0x07800000 77 | + 78 | +/* If it is 0x9 << 23 then skip the following jump command */ 79 | +jumpc 0x00000014,0x04800000 80 | + 81 | +/* Jump all the below instructions */ 82 | +jump 0x28 /* All instruction below including the jump are 40 bytes */ 83 | + 84 | +/* blockcopy must be followed by two writes to bootlocl and bootloch */ 85 | +blockcopy 0x09,0x00100000,0x1800a000,0x00020000 86 | +write 0x01e00400,0x1800a000 87 | +write 0x01e00404,0x00000000 88 | +.end 89 | + 90 | +/* XSPI boot Location Pointer */ 91 | +/* 92 | + * Set the boot location pointer to the NOR flash boot area. 93 | + */ 94 | + 95 | +.pbi 96 | +/* Load condition PORSR1 and mask RCW_SRC */ 97 | +loadc 0x01e00000,0x07800000 98 | + 99 | +/* If it is 0xf << 23 then skip the following jump command */ 100 | +jumpc 0x00000014,0x07800000 101 | + 102 | +/* Jump all the below instructions */ 103 | +jump 0x28 /* All instruction below including the jump are 0x190 bytes */ 104 | + 105 | +/* blockcopy must be followed by two writes to bootlocl and bootloch */ 106 | +blockcopy 0x0f,0x00100000,0x1800a000,0x00020000 107 | +write 0x01e00400,0x20100000 108 | +write 0x01e00404,0x00000000 109 | +.end 110 | + 111 | -- 112 | 2.17.1 113 | 114 | -------------------------------------------------------------------------------- /recipes-bsp/broadcom-nvram-config/files/LICENCE.broadcom_bcm43xx: -------------------------------------------------------------------------------- 1 | SOFTWARE LICENSE AGREEMENT 2 | 3 | The accompanying software in binary code form (“Software”), is licensed to you, 4 | or, if you are accepting on behalf of an entity, the entity and its affiliates 5 | exercising rights hereunder (“Licensee”) subject to the terms of this software 6 | license agreement (“Agreement”), unless Licensee and Broadcom Corporation 7 | (“Broadcom”) execute a separate written software license agreement governing 8 | use of the Software. ANY USE, REPRODUCTION, OR DISTRIBUTION OF THE SOFTWARE 9 | CONSTITUTES LICENSEE’S ACCEPTANCE OF THIS AGREEMENT. 10 | 11 | 1. License. Subject to the terms and conditions of this Agreement, 12 | Broadcom hereby grants to Licensee a limited, non-exclusive, non-transferable, 13 | royalty-free license: (i) to use and integrate the Software with any other 14 | software; and (ii) to reproduce and distribute the Software complete, 15 | unmodified, and as provided by Broadcom, solely for use with Broadcom 16 | proprietary integrated circuit product(s) sold by Broadcom with which the 17 | Software was designed to be used, or their successors. 18 | 19 | 2. Restrictions. Licensee shall distribute Software with a copy of this 20 | Agreement. Licensee shall not remove, efface or obscure any copyright or 21 | trademark notices from the Software. Reproductions of the Broadcom copyright 22 | notice shall be included with each copy of the Software, except where such 23 | Software is embedded in a manner not readily accessible to the end user. 24 | Licensee shall not: (i) use, license, sell or otherwise distribute the Software 25 | except as provided in this Agreement; (ii) attempt to modify in any way, 26 | reverse engineer, decompile or disassemble any portion of the Software; or 27 | (iii) use the Software or other material in violation of any applicable law or 28 | regulation, including but not limited to any regulatory agency. This Agreement 29 | shall automatically terminate upon Licensee’s failure to comply with any of the 30 | terms of this Agreement. In such event, Licensee will destroy all copies of the 31 | Software and its component parts. 32 | 33 | 3. Ownership. The Software is licensed and not sold. Title to and 34 | ownership of the Software, including all intellectual property rights thereto, 35 | and any portion thereof remain with Broadcom or its licensors. Licensee hereby 36 | covenants that it will not assert any claim that the Software created by or for 37 | Broadcom infringe any intellectual property right owned or controlled by 38 | Licensee. 39 | 40 | 4. Disclaimer. THE SOFTWARE IS OFFERED “AS IS,” AND BROADCOM PROVIDES AND 41 | GRANTS AND LICENSEE RECEIVES NO SUPPORT AND NO WARRANTIES OF ANY KIND, EXPRESS 42 | OR IMPLIED, BY STATUTE, COMMUNICATION OR CONDUCT WITH LICENSEE, OR OTHERWISE. 43 | BROADCOM SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, 44 | FITNESS FOR A SPECIFIC PURPOSE, OR NONINFRINGEMENT CONCERNING THE SOFTWARE OR 45 | ANY UPGRADES TO OR DOCUMENTATION FOR THE SOFTWARE. WITHOUT LIMITATION OF THE 46 | ABOVE, BROADCOM GRANTS NO WARRANTY THAT THE SOFTWARE IS ERROR-FREE OR WILL 47 | OPERATE WITHOUT INTERRUPTION, AND GRANTS NO WARRANTY REGARDING ITS USE OR THE 48 | RESULTS THEREFROM INCLUDING, WITHOUT LIMITATION, ITS CORRECTNESS, ACCURACY, OR 49 | RELIABILITY. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM 50 | OR ANY OF ITS LICENSORS HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, 51 | INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES, HOWEVER CAUSED AND ON ANY THEORY 52 | OF LIABILITY, WHETHER FOR BREACH OF CONTRACT, TORT (INCLUDING NEGLIGENCE) OR 53 | OTHERWISE, ARISING OUT OF THIS AGREEMENT OR USE, REPRODUCTION, OR DISTRIBUTION 54 | OF THE SOFTWARE, INCLUDING BUT NOT LIMITED TO LOSS OF DATA AND LOSS OF PROFITS, 55 | EVEN IF SUCH PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. THESE 56 | LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF ANY 57 | LIMITED REMEDY. 58 | 59 | 5. Export Laws. LICENSEE UNDERSTANDS AND AGREES THAT THE SOFTWARE IS 60 | SUBJECT TO UNITED STATES AND OTHER APPLICABLE EXPORT-RELATED LAWS AND 61 | REGULATIONS AND THAT LICENSEE MAY NOT EXPORT, RE-EXPORT OR TRANSFER THE 62 | SOFTWARE OR ANY DIRECT PRODUCT OF THE SOFTWARE EXCEPT AS PERMITTED UNDER THOSE 63 | LAWS. WITHOUT LIMITING THE FOREGOING, EXPORT, RE-EXPORT, OR TRANSFER OF THE 64 | SOFTWARE TO CUBA, IRAN, NORTH KOREA, SUDAN, AND SYRIA IS PROHIBITED. 65 | 66 | -------------------------------------------------------------------------------- /recipes-bsp/u-boot/u-boot-qoriq/0001-patman-Drop-binary-parameter.patch: -------------------------------------------------------------------------------- 1 | From 3b1c0b09c99bfd30355a6ba87a15e9d408a51109 Mon Sep 17 00:00:00 2001 2 | From: Simon Glass 3 | Date: Sat, 24 Aug 2019 07:22:41 -0600 4 | Subject: [PATCH] patman: Drop binary parameter 5 | 6 | Since cros_subprocess use bytestrings now, this feature not needed. Drop 7 | it. 8 | 9 | Upstream-Status: Backport 10 | 11 | Signed-off-by: Simon Glass 12 | --- 13 | tools/patman/cros_subprocess.py | 3 +-- 14 | tools/patman/tools.py | 15 +++++++-------- 15 | 2 files changed, 8 insertions(+), 10 deletions(-) 16 | 17 | diff --git a/tools/patman/cros_subprocess.py b/tools/patman/cros_subprocess.py 18 | index 06be64cc2c..0f0d60dfb7 100644 19 | --- a/tools/patman/cros_subprocess.py 20 | +++ b/tools/patman/cros_subprocess.py 21 | @@ -54,7 +54,7 @@ class Popen(subprocess.Popen): 22 | """ 23 | 24 | def __init__(self, args, stdin=None, stdout=PIPE_PTY, stderr=PIPE_PTY, 25 | - shell=False, cwd=None, env=None, binary=False, **kwargs): 26 | + shell=False, cwd=None, env=None, **kwargs): 27 | """Cut-down constructor 28 | 29 | Args: 30 | @@ -72,7 +72,6 @@ class Popen(subprocess.Popen): 31 | """ 32 | stdout_pty = None 33 | stderr_pty = None 34 | - self.binary = binary 35 | 36 | if stdout == PIPE_PTY: 37 | stdout_pty = pty.openpty() 38 | diff --git a/tools/patman/tools.py b/tools/patman/tools.py 39 | index 0d4705db76..97441ca796 100644 40 | --- a/tools/patman/tools.py 41 | +++ b/tools/patman/tools.py 42 | @@ -186,7 +186,7 @@ def PathHasFile(path_spec, fname): 43 | return True 44 | return False 45 | 46 | -def Run(name, *args, **kwargs): 47 | +def Run(name, *args): 48 | """Run a tool with some arguments 49 | 50 | This runs a 'tool', which is a program used by binman to process files and 51 | @@ -196,7 +196,6 @@ def Run(name, *args, **kwargs): 52 | Args: 53 | name: Command name to run 54 | args: Arguments to the tool 55 | - kwargs: Options to pass to command.run() 56 | 57 | Returns: 58 | CommandResult object 59 | @@ -206,8 +205,8 @@ def Run(name, *args, **kwargs): 60 | if tool_search_paths: 61 | env = dict(os.environ) 62 | env['PATH'] = ':'.join(tool_search_paths) + ':' + env['PATH'] 63 | - return command.Run(name, *args, capture=True, 64 | - capture_stderr=True, env=env, **kwargs) 65 | + return command.Run(name, *args, capture=True, capture_stderr=True, 66 | + env=env) 67 | except: 68 | if env and not PathHasFile(env['PATH'], name): 69 | msg = "Please install tool '%s'" % name 70 | @@ -401,14 +400,14 @@ def Compress(indata, algo, with_header=True): 71 | fname = GetOutputFilename('%s.comp.tmp' % algo) 72 | WriteFile(fname, indata) 73 | if algo == 'lz4': 74 | - data = Run('lz4', '--no-frame-crc', '-c', fname, binary=True) 75 | + data = Run('lz4', '--no-frame-crc', '-c', fname) 76 | # cbfstool uses a very old version of lzma 77 | elif algo == 'lzma': 78 | outfname = GetOutputFilename('%s.comp.otmp' % algo) 79 | Run('lzma_alone', 'e', fname, outfname, '-lc1', '-lp0', '-pb0', '-d8') 80 | data = ReadFile(outfname) 81 | elif algo == 'gzip': 82 | - data = Run('gzip', '-c', fname, binary=True) 83 | + data = Run('gzip', '-c', fname) 84 | else: 85 | raise ValueError("Unknown algorithm '%s'" % algo) 86 | if with_header: 87 | @@ -441,13 +440,13 @@ def Decompress(indata, algo, with_header=True): 88 | with open(fname, 'wb') as fd: 89 | fd.write(indata) 90 | if algo == 'lz4': 91 | - data = Run('lz4', '-dc', fname, binary=True) 92 | + data = Run('lz4', '-dc', fname) 93 | elif algo == 'lzma': 94 | outfname = GetOutputFilename('%s.decomp.otmp' % algo) 95 | Run('lzma_alone', 'd', fname, outfname) 96 | data = ReadFile(outfname) 97 | elif algo == 'gzip': 98 | - data = Run('gzip', '-cd', fname, binary=True) 99 | + data = Run('gzip', '-cd', fname) 100 | else: 101 | raise ValueError("Unknown algorithm '%s'" % algo) 102 | return data 103 | -- 104 | 2.24.0 105 | 106 | --------------------------------------------------------------------------------