Giter VIP home page Giter VIP logo

ecfw-zephyr's Introduction

Welcome to the Embedded Controller firmware project.

The project is provided under the Apache 2.0 license (as found in the LICENSE file in the project’s GitHub repo).

Intel EC FW framework reference code is intended for prototyping and evaluation.

Visit documentation for getting started guide https://intel.github.io/ecfw-zephyr/index.html

ecfw-zephyr's People

Contributors

albertofloyd avatar cmailarx avatar franciscomunoz avatar galak avatar leansheng avatar rgundi avatar richardyimjiajun avatar venkatasuresh1234 avatar vinayakvh16 avatar yerabolu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ecfw-zephyr's Issues

MEC1521 eSPI Boot Flow

I have a custom board using the TGL-H CPU and MEC1521 EC that I'm trying to bring up but I'm stuck in the eSPI handshaking phase.
Over the weekend I cloned the latest and greatest ecfw-zephyr following the getting started guide, created a custom board config and device tree to match my hardware, and got everything building and running on my hardware.
According to the boot flow diagrams in Figure 2-7/2-8 of the Intel #508740 document and the Exit from G3 sequence in the eSPI Base Spec #327432, the EC de-asserts RSMRST# to the PCH, then the PCH de-asserts eSPI_RESET#, initializes the eSPI link and enables the VW, OOB, and Flash channels.
Based on the console UART output and various LOG_DBG statements I added throughout, all of the above activity is happening.
The board is designed for G3 flash sharing rather than MAFS or SAFS so with CONFIG_ESPI_AUTOMATIC_BOOT_DONE_ACKNOWLEDGE=y, the SLAVE_BOOT_DONE VW's are sent from EC to PCH upon the VW channel being enabled. Using console debug statements, I confirmed the send_slave_bootdone() function is being called.
According to the above documents, upon receiving the SLAVE_BOOT_DONE VW's, the PCH should start sending VW messages de-asserting SLP_S5#, SLP_S4#, and SLP_S3# to continue the power up sequence but instead all I get are SLP signal timeout errors.

I've been working with Microchip support all week and they are suggesting that upon the PCH enabling the eSPI VW Channel, the EC is not providing an ESPI_VWIRE_READY ACK fast enough and the PCH is timing out. After poring through the espi_mchp_xec.c driver file the past few days, I'm a bit skeptical that the issue I'm having is due to something in the zephyr kernel driver. It seems much more likely that the issue has something to do with my ECFW implementation and/or device configuration which is why I'm posting this issue here.

I'm expecting to receive an ePSI bus analyzer on Monday that I hope will shed some light on what's happening but in the meantime I'd appreciate any tips or suggestions as to what might be causing this.

Thanks!

Issue with the PS2 controller

I encountered an issue with the PS2 controller when pressing CTRL + ALT + Shift + "any key".

This leads to the EC crashing

[00:01:03.481,170] <err> os: ***** USAGE FAULT *****
[00:01:03.481,201] <err> os:   Attempt to execute undefined instruction
[00:01:03.481,231] <err> os: r0/a1:  0x00000013  r1/a2:  0x001197f9  r2/a3:  0x00000001
[00:01:03.481,231] <err> os: r3/a4:  0x000002f9 r12/ip:  0x00000000 r14/lr:  0x000e15d9
[00:01:03.481,262] <err> os:  xpsr:  0x61000074
[00:01:03.481,262] <err> os: Faulting instruction address (r15/pc): 0x000e1620
[00:01:03.481,292] <err> os: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
[00:01:03.481,323] <err> os: Fault during interrupt handling

[00:01:03.481,323] <err> os: Current thread: 0x118fe8 (unknown)
[00:01:03.487,457] <err> os: Halting system

Is this a known issue, if so is there a way to fix this?

ecfw-zephry FATAL ERROR ....

Hello, Members..

I try to download code from Zephyr EC git hub, but i got some problem for west list command and west upadte commnad.

c:\Workspace\Test\ZephyrEC1_5>mkdir sandbox

c:\Workspace\Test\ZephyrEC1_5>cd sandbox

c:\Workspace\Test\ZephyrEC1_5\sandbox>git clone https://github.com/intel/ecfw-zephyr
Cloning into 'ecfw-zephyr'...
remote: Enumerating objects: 1088, done.
remote: Counting objects: 100% (197/197), done.
remote: Compressing objects: 100% (90/90), done.
remote: Total 1088 (delta 138), reused 108 (delta 107), pack-reused 891
Receiving objects: 100% (1088/1088), 9.42 MiB | 9.09 MiB/s, done.

Resolving deltas: 100% (608/608), done.
Updating files: 100% (320/320), done.

c:\Workspace\Test\ZephyrEC1_5\sandbox>cd ecfw-zephyr

c:\Workspace\Test\ZephyrEC1_5\sandbox\ecfw-zephyr>west init -l
=== Initializing from existing manifest repository ecfw-zephyr
--- Creating C:\Workspace\Test\ZephyrEC1_5\sandbox.west and local configuration file
=== Initialized. Now run "west update" inside C:\Workspace\Test\ZephyrEC1_5\sandbox.

c:\Workspace\Test\ZephyrEC1_5\sandbox\ecfw-zephyr>west list
FATAL ERROR: can't load west manifest: Malformed manifest file: c:\Workspace\Test\ZephyrEC1_5\sandbox\ecfw-zephyr\west.yml
Schema file: C:\Python310\lib\site-packages\west\manifest-schema.yml
Hint: default remote github_restricted is not defined

c:\Workspace\Test\ZephyrEC1_5\sandbox\ecfw-zephyr>west update
FATAL ERROR: Malformed manifest file: C:\Workspace\Test\ZephyrEC1_5\sandbox\ecfw-zephyr\west.yml
Schema file: C:\Python310\lib\site-packages\west\manifest-schema.yml
Hint: default remote github_restricted is not defined

How can i do next???

Ross
WestUpdateFATAL_ERROR

Intel ADL RVP MEC Model

Hi good day, may I know why the MEC uploaded here is MEC1501 while the Intel ADL RVP is using MEC1521? Does this (MEC1501) works on RVP?
Thanks.

binaries download

Hi, could you guys give me a built image (.bin file) for ADL RVP (MEC1521)? Currently , I don't have enough environments to download and build source code .
Thanks.

Build fails with GNU Arm Embedded Toolchain

Bug description:
Compiling problem when trying to build the "EcFw-zephyr"

Reproducible by:
following the getting started guide (https://intel.github.io/ecfw-zephyr/index.html)

Expected behavior:
"west build -c -p auto -b mec1501modular_assy6885" compiling without any issues.

Environment:
Windows 10
GnuArmEmb 10 2020-Q4-Major
CMake v3.20.1

Additional Information:
building other applications with the "normal" Zephyr SDK works on my Windows system, only trying to build this seems to cause this problem.

CMakeError.log:

Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: C:/Program Files (x86)/GNU Arm Embedded Toolchain/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags:  

The output was:
1
c:/program files (x86)/gnu arm embedded toolchain/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld.exe: c:/program files (x86)/gnu arm embedded toolchain/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/lib\libc.a(lib_a-exit.o): in function `exit':
exit.c:(.text.exit+0x2c): undefined reference to `_exit'
collect2.exe: error: ld returned 1 exit status


Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: C:/Program Files (x86)/GNU Arm Embedded Toolchain/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags:  

The output was:
1
c:/program files (x86)/gnu arm embedded toolchain/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/bin/ld.exe: c:/program files (x86)/gnu arm embedded toolchain/bin/../lib/gcc/arm-none-eabi/10.2.1/../../../../arm-none-eabi/lib\libc.a(lib_a-exit.o): in function `exit':
exit.c:(.text.exit+0x2c): undefined reference to `_exit'
collect2.exe: error: ld returned 1 exit status

Missing files compared to the list Intel is distributing with the EC FW binary (Intel Kit 643307).

Hello!

Any assistance would be much appreciated.

There is currently a disparity between files used in this repo and those found in the binary provided by Intel. It seems there may have been an update that has not filtered through to GitHub. In trying to rebuild the binary using this repo code for board validation, we've found it cannot be rebuilt due to this disparity.

I have attached files with the differences below.

Thanks for your help.

MEC1428 support

Skylake and TigerLake Intel RVP boards use the MEC1428, I dont see any mention of the MEC1428 here. I am having a heck of a time finding the source for this RVP as I need to add some additional features. Intel only provides a compiled MEC1428 EC firmware but no source.
Intel and Microchip tech support are not helping me out much at all.
Would the better move be to skip the MEC1428 chip and use the MEC1501 or MEC172x which appear to be supported with Intel source code provided in this repo.

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.