aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-12-13dpdk: set DPAA_VER = "dpaa"Chunrong Guo
* dpdk do not support 32bit target Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-12-13openssl-qoriq: enable -DHAVE_CRYPTODEV optionChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-12-13p1020rdb: update uboot config * default link nor uboot typesChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-12-13p2020rdb: update uboot config * default link nor uboot typesChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-12-05qe-ucode: Fix python indentation as per OE-Core style guidelinesKhem Raj
Fixes parsing warnings e.g. qe-ucode_git.bb: python should use 4 spaces indentation, but found tabs in qe-ucode_git.bb, line 14 Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-12-03u-boot-fslc: Bump to 6e25ce6f3c revisionOtavio Salvador
This includes following fixes: 6e25ce6f3c pico-imx7d: Increase the CONFIG_ENV_OFFSET size Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-30u-boot-fslc-mxsboot: When building target recipe, limit it to fsl machinesKhem Raj
The latest updates observed that the target recipe is building for qemu machines as well, which is not useful. see http://errors.yoctoproject.org/Errors/Details/202502/ Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-29linux-fslc: Bump revision to 093a10401c15Otavio Salvador
This applies following changes: 093a10401c15 ARM: dts: imx7d-pico: Describe the Wifi clock Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-28linux-fslc: Upgrade to 4.19-based forkOtavio Salvador
This upgrades the Linux FSLC to a 4.19-based fork. It is currently based on 4.19.5 stable release. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-27u-boot-fslc: Upgrade to 2018.11-based forkOtavio Salvador
This upgrade our fork to the current stable release. It got most of our patches merged and now it has a very small set which are basically Yocto Project specific stuff. Still applied patches are: 1f39b911b7 mx25pdk: Change root to use a single partition layout a0f8bec9d3 mx6sabre_common: Dynamically change the video output 7847536319 mx6sabresd: Enable video interfaces in bootargs 994d8e0733 mx6sabresd: Use LDO dtb file until LDO bypass support is added c6c87fb39b mx6slevk: Use LDO dtb file until LDO bypass support is added Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-21qtbase: Do not modify QT_CONFIG_FLAGSAndreas Müller
* For distros enabling x11 and wayland it breaks X11 images (xfce/lxqt) for ALL machines * It is a setting which can be done at runtime. E.g KDE plasma does so. * Settings like these do NOT belong into BSP layers Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
2018-11-19dce: add recipesChunrong Guo
*include the following changes: 8d6dd32 - .gitmodules: use codeaurora url 492eecd - dpdcei: Affine thread for FQDAN setup b2a48e8 - dce: Support LX2160 SOCs 62af9fe - dce: Userspace dce support for DPAA2 devices 51d907a - Initial Commit Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-19cst: update to 3285e1d23a6abe3db6bChunrong Guo
*include the following changes: 3285e1d - Merge pull request #98 in SDK/cst from ~NXA27423/cst-sg-table:master to master abc448f - Correct OEM_UID and FSL_UID flag ac8c66c - LX2 - Add uni_pbi input file bea5298 - Merge pull request #101 in SDK/cst from ~NXA06956/cst-jaypee:master to master 2698da2 - ISBC and ESBC cst changes for LX2160 e9ccaa9 - IMA EVM:LS1012A: adds input file to support image signing c8f77f1 - Changes the initramfs image address in input file. 05be800 - Merge pull request #94 in SDK/cst from ~NXA27427/cst:master to master 44d610c - Ls2088/1088: Fuse provisioning: Adds input file. a1a2f5f - IMA-EVM Feature: Adds input files for signing images. 85c227b - Fix OTPMK generation issue *remove patch Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-19ppa-optee: support ls2088aChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-19dpdk: add '-fPIC' to CPU_CFLAGSChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08fmc: set EXTRA_OEMAKE_PLATFORM for p* targetsChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08udev-rules-qoriq: remove rule for t1024Chunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08linux-imx-headers: Reduce visibility to imx host aloneKhem Raj
It uses variables that are specific to meta-fsl layer and when using in multi-BSP env this fails to expand those variables Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08rcw: renamed ls1088ardb_pb -> ls1088ardb-pbChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08ls1088ardb-pb : renamed ls1088ardb_pb.conf -> ls1088ardb-pb.confChunrong Guo
Signed-off-by: Chunrong Guo <chunrong.guo@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08gstreamer1.0-plugins-good.imx: Add missing libdrm dependencyCarlos Rafael Giani
Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08libsdl2: Add CFLAGS for non-X11 builds with Vivante EGL headersCarlos Rafael Giani
Without these, the Vivante EGL headers will try to include X11 headers, causing the build to break. Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-08weston: Avoid parsing for non-i.MX machinesOtavio Salvador
Fixes: ,---- | meta-freescale/recipes-graphics/wayland/weston_4.0.0.imx.bb: Unable to | get checksum for weston SRC_URI entry weston.ini: file could not be | found `---- Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2018-11-06qtbase: Refactor configurationTom Hochstein
Replace QT_CONFIG_FLAGS with PACKAGECONFIG Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-06qtbase: Drop redundant configuration flag -no-eglfsTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-06qtbase: Fix QT_CONFIG_FLAGS for non-mainline-bspTom Hochstein
- Enable eglfs only for 3D parts and framebuffer backend - Disable opengl and enable linuxfb for 2D parts with no 3D Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-06qtbase: Set the default platform correctlyTom Hochstein
Set the correct Qt platform for the graphics backend so the user isn't required to set it manually. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-06qtbase: Fix SRC_URI whitespaceTom Hochstein
- Fix a missing space in an append. - Re-format to reduce leading whitespace. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-05xserver-xorg: Disable glamor for i.MX 8Tom Hochstein
Like i.MX 6 and 7, need to disable glamor for i.MX 8 to avoid a build break: In file included from /home/r60874/upstream/fsl-xwayland/tmp/work/aarch64-mx8mm-fsl-linux/xserver-xorg/2_1.20.1-r0/recipe-sysroot/usr/include/EGL/eglplatform.h:179, from /home/r60874/upstream/fsl-xwayland/tmp/work/aarch64-mx8mm-fsl-linux/xserver-xorg/2_1.20.1-r0/recipe-sysroot/usr/include/epoxy/egl_generated.h:11, from /home/r60874/upstream/fsl-xwayland/tmp/work/aarch64-mx8mm-fsl-linux/xserver-xorg/2_1.20.1-r0/recipe-sysroot/usr/include/epoxy/egl.h:46, from ../../xorg-server-1.20.1/glamor/glamor_priv.h:43, from ../../xorg-server-1.20.1/glamor/glamor_composite_glyphs.c:25: /home/r60874/upstream/fsl-xwayland/tmp/work/aarch64-mx8mm-fsl-linux/xserver-xorg/2_1.20.1-r0/recipe-sysroot/usr/include/EGL/eglvivante.h:267:1: error: conflicting types for 'fbCreateWindow' fbCreateWindow( ^~~~~~~~~~~~~~ In file included from ../../xorg-server-1.20.1/glamor/glamor.h:36, from ../../xorg-server-1.20.1/glamor/glamor_priv.h:32, from ../../xorg-server-1.20.1/glamor/glamor_composite_glyphs.c:25: ../../xorg-server-1.20.1/fb/fb.h:1115:2: note: previous declaration of 'fbCreateWindow' was here fbCreateWindow(WindowPtr pWin); ^~~~~~~~~~~~~~ Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02libdrm: Remove xf86drm.h patch in all casesTom Hochstein
The xf86drm.h patch is in the i.MX fork. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02imx-gpu-viv: Cleanup redundant opencl PROVIDES settingsTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02xf86-video-imx-vivante: Upgrade to 6.2.4.p1.8Tom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02kernel-module-imx-gpu-viv: Upgrade to 6.2.4.p1.8Tom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02imx-gpu-g2d: Upgrade to 6.2.4.p1.8Tom Hochstein
Adds support for aarch64. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02imx-dpu-g2d: Upgrade to 1.4.8Tom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-02imx-gpu-viv: Upgrade to 6.2.4.p1.8Tom Hochstein
Key Features of the Vivante 6.x Driver Series - Full support for Khronos OpenGL ES 3.2 API. The new OpenGL ES 3.2 and OpenGL ES Shading Language 3.20 specifications bring AEP, plus additional functionality, into core OpenGL ES. Vivante OpenGL ES 3.2 implementation has passed Khronos OpenGL ES 3.2 Conformance Test. And Vivante GC7000XS* GPU core has been certified by Khronos as an OpenGL ES 3.2 compliant product. - Backward Compatible with 5.x and 4.x Drivers. Existing OpenGL ES 3.x/2.0 applications can run on these drivers without any changes. 6.2.4P1 GPU Release (8MQ GA) ======================================== Key Features ============ - OpenCL improvements - Wayland-weston DRM Support - Wayland-weston with 2D accelerated renderer - Wayland-Weston EGL DRM Modifier support - Wayland-Weston EGL Framebuffer compression - Wayland-Weston DMABUF support - OpenCV tests with OpenCL - Add GPU DRM support - GLES CTS version 3.2.4 6.2.4p1-4.9.123- Improvements ============================= OCL: MGS-3255-41 fix opencl test_buffer failures OCL: MGS-3255-39 fix opencl cache issue OCL: MGS-3891 [QNX] - OpenCL CTS bruteforce fails with commitworker OCL: MA-11932 Enable openCL flag CL_MEM_USE_UNCACHED_HOST_MEMORY_VIV OCL: MGS-3827 OpenCL C, even and odd operator of vector have wrong behavior. OCL: MGS-3976 clblast_sample_cache_c, segmentation fault. crash in CL compiler G2D: MGS-4135 Weston crash when run two videos with g2d compositor G2D: MGS-4128 Fix g2d_multiblit_test case segmentation fault. G2D: MGS-4091-2 fix g2d YUY2 scaling issue G2D: MGS-4091 fix g2d YUY2 output issue G2D : MGS-3943-3 add global alpha test G2D : MGS-3814-2 fix g2d API back compatibility G2D : MGS-3847 [QNX][Blitter] Remove redundant g2d open and close in QNX blitter G2D : MGS-3940 webgl basemark test met segmentation fault using g2d compositor G2D : MGS-4048 Display change to be blank when use g2d compositor EGL: MGS-4285 gl compositor stress test failed with out of memory EGL: MA-12481 Enable direct renderintile status on android 845s EGL: MGS-4104 Enable direct rendering on wayland EGL: MGS-4080 HelloworldX stress test met segmentation fault and core dump EGL: MGS-3399-8 fix imx6 weston crash with ESCTS 3.2.4.0 EGL: MGS-3901 Wayland Client deadlock in libGAL when dispatching swap_queue EGL: MGS-3901-1 Wayland Client deadlock in libGAL when dispatching swap_queue EGL: MGS-3868 Align the struct wl_egl_window with wayland-egl EGL: MGS-4049 FPS wrong when weston-simple-egl run in full screen mode EGL: MGS-4058 weston will be closed after executing weston-info EGL: MGS-3906 galcore cannot be unload after stop weston service EGL: MGS-4058 weston will be closed after executing weston-info GLES: MGS-3953 ES11 segmentation fault on 8MM board GLES: MGS-3255-40 fix es31 cts crash with multiple thread test GLES: MGS-3473 ES31 random fail on Mscale. Related to BETA RC2 DDR setting. Android: MA-12227 Add framebuffer compression support on android. Refine dma-buf metadata setting Android: MA-11974-5 Fix video playback crash issue Android: MA-11974-4 Support FSL YUV format in gralloc helper Android: MA-11974-6 Fix gralloc helper build back compatible issue OpenVX: MGS-3630 openvx api return failure error if VXCreateContext() is called after eglInitialize() in GLES2 and GLES3 application General: MGS-3995 Can't remove galcore when VIVANTE_ENABLE_DRM was enabled General: MGS-3969 Fix reading HW counters values using old profiling method for GC7000 General: MGS-3956 Fix build break for libgpuperfcnt General: MGS-3485 QNX - OVG conformance test crashes on QXP General: MA-11957 Rename fence to dma_fence General: MA-12411 Enable in-fence function for DRM driver on IMX8 platform. General: MGS-3730 [QNX] - add gcoOS_MemoryBarrier to QNX HAL General: MGS-3856-3 skip disable openvg2d on android build General: MGS-3856 Avoid build openvg2d for MX8 General: MGS-3255 flush commit worker to fix QM cts crash General: MGS-4197 fix suspend failure with ctrl-C General: MGS-4162 fix suspend stuck with false negative General: MGS-4125 fix 6sx suspend/resume stuck issue General: MGS-4103 fix gpu axi bus error on 6sx General: MGS-4095 fix m845s system hang with suspend/resume General: MGS-4130 Cannot pass the stress test of low bus suspend/resume. 6.2.4P1 Improvements ================== OCL: MGS-3255-34 add opencl memory optimzation OCL: MGS-3255-33 fix opencl test buffer copy failure OCL: MGS-3640 fix opencl corruption for arm_compute_library OCL: MGS-3710 SoftISP meet CL_INVALID_WORK_GROUP_SIZE (-54) on mscale and qxp OCL: cache invalidate for uncached buffer get accesing user space memory outsied uaccess.h error OCL: ovx and ocl running together EGL MGS-3711 met display blurred when run weston-nested EGL: Enable extension EGL_EXT_image_dma_buf_import_modifiers EGL: weston-nested met process aborted and core dump EGL: MGS-3399 fix wayland egl resize cts failure EGL: support direct rendering on external drm buffer EGL: MGS-3840-2 fix 6qp display flicker with fbdev test EGL: MGS-3791 imx6q shared egl context rendering issue EGL: MGS-3744 fix GC355 OpenVG flicker on wayland EGL: MA-11528 Support enable framebuffer direct rendering GLES3.0: 6QP FB have CTS failures with ESCTS 3.2.2.0 GLES: MGS-3570 glGenerateMipmap takes too much time on 5.x/6.x driver Weston: Disable surface compress if g2d-renderer GBM: Enable DRM compression for mscale board GBM: MGS-3625 6.2.4.p1: Fix xserver build break with GBM change GBM :MGS-3694 enable fb fd and tile status fd in GPU and DCSS on wayland Android:MA-11232 Enable HDR10 support on imx8mq platform. Android: MA-10844 GPU driver pass build after refine some NXP git path Android : MA-11101 Add HAL_PIXEL_FORMAT_NV12_TILED format to support VPU tile QNX:iMX8QM MGS-2906 VDK app fail if it's started as the first app after screen QNX:iMX8QM MGS-3289 [iMX8] Rotation using blitter seems broken QNX:iMX8QM MGS-3338 - Deadlock seen with Screen API test QNX:iMX8QM MGS-3323 QNX -[iMX8] Fix NV12 handling iMX8QM Disable depth compression for LPDDR4 parts OCL: MGS-3848-5 OCL1.2: test_image_streams failures OCL:MGS-3832 cl_convolution of ACL cause MMU exception OVX: MGS-3579 Fix the invalid scope of VX graph for 8QM OVG: MGS-3826 met core dump and system prompt out of memory when do OpenVG memory leak test. OVG: MGS-3750 fix gc355 openvg stuck issue on 6q and 6qp OVG: MGS-3791 VGCTS failed to run on i.MX6SL wayland OGL: MGS-3570 glGenerateMipmap takes too much time on 5.x/6.x driver OGL: MGS-3741 glmark2 test met error message General: MGS-3848 refinements for pm and isr General: MGS-3840 Display resume back very slow and has snow screen after suspend and resume. General: MGS-3751 met GPU core dump when run multiple es20 sdk apps Known Issues ============ MGS-3770 [6q/6qp] can not generate correct reference file after do api retrace and sometimes met stuck - Need wayland support in waffle. will be addressed in next release MGS-3747 [6dl/6q] X11: copytex can't work after "Qt5_NMapper" app test. YOCIMX-2354 Some qt3-3d demos not work. Issue related to QTwayland in 5.8 later MGS-3739 can not pass webgl 1.0.2 CTS test. Chromium 64 known issue. Same reproduced on desktop Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-11-01weston: Update open function patchTom Hochstein
The g2d renderer open function patch was only needed for the case of a file open. Remove the other un-needed change. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-31imx-base.inc: Upgrade libdrm to 2.4.91.imxTom Hochstein
Update the PREFERRED_VERSION. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-31libdrm: Upgrade to 2.4.91.imxTom Hochstein
Fixes minimum version for xserver-xorg. Includes patch fuzz fix for: 0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30weston: Fix open function build break in g2d-rendererTom Hochstein
| from ../git/libweston/g2d-renderer.c:40: | In function 'open', | inlined from 'g2d_renderer_create' at ../git/libweston/g2d-renderer.c:1629:2: | /home/r60874/upstream/fsl-xwayland/tmp/work/cortexa9t2hf-neon-mx6qdl-fsl-linux-gnueabi/weston/4.0.0.imx-r0/recipe- sysroot/usr/include/bits/fcntl2.h:50:4: error: call to '__open_missing_mode' declared with attribute error: open wit h O_CREAT or O_TMPFILE in second argument needs 3 arguments | __open_missing_mode (); | ^~~~~~~~~~~~~~~~~~~~~~ | Makefile:5266: recipe for target 'libweston/g2d_renderer_la-g2d-renderer.lo' failed Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30imx-gpu-viv: Provides GBM for i.MX 8Tom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30weston: Disable opengl for 2D-only SOCTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30weston: Set desktop shell size to 1080p for i.MX 8MTom Hochstein
For i.MX 8M, set the shell size to 1080p to reduce GPU pressure. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30weston: Use argb8888 as gbm-format for i.MX 8MQTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-30weston: Move i.MX-specific config file to recipeTom Hochstein
Make it easier to customize the config file. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-26weston: BugfixesTom Hochstein
- g2d-renderer: Enable dither effect in the fbdev board - compositor-drm: avoid commit invalid framebuffer to plane - g2d-render: fix the render error in vg_gc2000 test - g2d-render: fix the residual image on display - g2d-renderer: import DMABuf should use offset in attributes - compositor-drm: Revert the fence support in DRM compositor - compositor-drm: fix video playback hang after add fence in glrender - MGS-4050 [#ccc] libweston/compositor-fbdev: Use fbGetDisplayByIndex when selecting the framebuffer - compositor-drm: Add display fence support - compositor-drm: fix cannot reuse current framebuffer if damage is empty - g2d-render: weston will be closed after executing weston-info - g2d-render: support new ion allocator Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-26classes/use-imx-headers: Easy linux-imx-headers useOtavio Salvador
This allow to easy reuse of binary packages among similar SoCs. The usual use for this is to share SoC specific packages among different boards independently of the kernel version it is using, as far it is ABI compatible with the official version it will just work. Following recipes has been reworked to make use of the class: - imx-lib - imx-test - imx-vpu-hantro - imx-vpu - imx-alsa-plugins - gstreamer1.0-plugins-base - gstreamer1.0-plugins-imx - imx-gst1.0-plugin Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-26imx-gst1.0-plugin: Replace kernel dependence with linux-imx-headersTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-26gstreamer1.0-plugins-imx: Replace kernel dependence with linux-imx-headersTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
2018-10-26imx-alsa-plugins: Replace kernel dependence with linux-imx-headersTom Hochstein
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>