Giter Site home page Giter Site logo

fractalclone / zephyr-riscv Goto Github PK

View Code? Open in Web Editor NEW
24.0 24.0 10.0 77.61 MB

Zephyr port to riscv architecture

License: Apache License 2.0

Makefile 0.11% Assembly 0.18% C 97.91% C++ 1.23% Verilog 0.01% Objective-C 0.25% Perl 0.15% Shell 0.03% Python 0.12% Lex 0.01% Yacc 0.01%

zephyr-riscv's People

Contributors

1010101001010101 avatar ajstephens avatar benwrs avatar bliu11-intel avatar carlescufi avatar cjordan44 avatar cvinayak avatar dbkinder avatar dcpleung avatar dkalowsk avatar dkorovki avatar erwango avatar finikorg avatar galak avatar inaky-intc avatar jhedberg avatar jmcruzal avatar jmnlcruz avatar jukkar avatar lpereira avatar maureenhelm avatar mshawcroft avatar nashif avatar rveerama1 avatar srodrig1 avatar tbursztyka avatar vcgomes avatar vudentz avatar wrspetermitsis avatar xpuarli 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

Watchers

 avatar  avatar  avatar  avatar

zephyr-riscv's Issues

Compilation Error

When i am trying to clone riscv-qemu & riscv-gnu-toolchain during the make -j my entire system get hanged . Also how to transfer spi_stim.txt file from PC to zedboard. Kindly share before ssh how to configure PC and Zedboard.

blink_led for zedboard

Hello,

The README states that the blink_led programs is for the arduino board. Make BOARD=zedboard_pulpino gives errors. Is it possible to run the blink led tests for the zedboard ?

Thank you !

Macro SYS_CLOCK_HW_CYCLES_TO_NS broken

Calling the macro SYS_CLOCK_HW_CYCLES_TO_NS() defined in include/sys_clock.h breaks the build for me.
Can't even see the Zephyr booting message anymore.
Platform is a SiFive Arty FE310 development board.

I assume that casting to u64_t in SYS_CLOCK_HW_CYCLES_TO_NS64() isn't a good idea on RISCV32.

Version of Zephyr OS: 1.8.99
Version of Zephyr SDK: 0.9.1

ERROR: glib-2.22 gthread-2.0 is required to compile QEMU

Hello,

The configure gives the following error.


alpha@alpha-VirtualBox:~/zephyr/riscv-gnu-toolchain/riscv-qemu$ ./configure --target-list=riscv64-softmmu,riscv32-softmmu --prefix=/opt/riscv

ERROR: glib-2.22 gthread-2.0 is required to compile QEMU

I have build-essential, libc6-dev and when I install apt-get install libglib2.0-dev zlib1g-dev, I get the broken packages error.
Could you please tell me what I'm missing ?

Thank you

hifive1: Exception cause Load address misaligned

I am trying to get the samples/net/dhcpv4_client/ working on hifive1 board, using the branch provided by @palmer-dabbelt .

I use the following for the prj_hifive1.conf file (copied from arduino 101 disabled a few things for debugging):

CONFIG_NETWORKING=y
CONFIG_NET_IPV6=n
CONFIG_NET_IPV4=y
CONFIG_NET_ARP=y
CONFIG_NET_UDP=y
CONFIG_NET_DHCPV4=y
CONFIG_NET_BUF=y
CONFIG_NET_NBUF_RX_COUNT=4
CONFIG_NET_NBUF_TX_COUNT=4
CONFIG_NET_NBUF_RX_DATA_COUNT=5
CONFIG_NET_NBUF_TX_DATA_COUNT=5
CONFIG_TEST_RANDOM_GENERATOR=y
CONFIG_NET_IF_UNICAST_IPV4_ADDR_COUNT=1

CONFIG_NET_LOG=y
CONFIG_SYS_LOG=y
CONFIG_SYS_LOG_SHOW_COLOR=y
CONFIG_NET_DEBUG_CORE=y
CONFIG_NET_DEBUG_IF=y
CONFIG_NET_DEBUG_DHCPV4=y
CONFIG_NET_DEBUG_ARP=y
CONFIG_NET_DEBUG_L2_ETHERNET=y
CONFIG_NET_DEBUG_IPV4=y
CONFIG_NET_DEBUG_ICMPV4=y
CONFIG_NET_DEBUG_UDP=y
CONFIG_NET_RX_STACK_SIZE=2048

CONFIG_NET_L2_ETHERNET=y

CONFIG_SPI=y
CONFIG_SPI_CS_GPIO=y
CONFIG_SPI_1_CS_GPIO_PORT="GPIO_0"
CONFIG_SPI_1_CS_GPIO_PIN=0

CONFIG_SYS_LOG_ETHERNET_LEVEL=1
CONFIG_ETH_ENC28J60=n
CONFIG_ETH_ENC28J60_0=n
CONFIG_ETH_ENC28J60_0_SPI_PORT_NAME="SPI_1"
CONFIG_ETH_ENC28J60_0_SPI_BUS_FREQ=2
CONFIG_ETH_ENC28J60_0_MAC3=0x0a
CONFIG_ETH_ENC28J60_0_MAC4=0x0b
CONFIG_ETH_ENC28J60_0_MAC5=0x0c

CONFIG_NET_MGMT=y
CONFIG_NET_MGMT_EVENT=y

Compiling the code with the current zephyr SDK and uploading it onto the board
using the freedom-e-sdk works fine.

However, when opening ttyUSB1 with screen I get the following error:

***** BOOTING ZEPHYR OS v1.7.99 *****
[dhcpv4] [INF] main: In main
[dhcpv4] [INF] main_thread: Run dhcpv4 client
Exception cause Load address misaligned (4)
Current thread ID = 0x80003070
Faulting instruction address = 0x20404e18
  ra: 0x2040520c  gp: 0x67e09182  tp: 0x20400260  t0: 0x1800
  t1: 0x20400780  t2: 0x0  t3: 0x2547316e  t4: 0x20408468
  t5: 0x9d040577  t6: 0x177fe4b9  a0: 0x80000144  a1: 0x1
  a2: 0x0  a3: 0x80003414  a4: 0x0  a5: 0x3b9aca0d
  a6: 0x8120d47e  a7: 0x67e09182
Fatal fault in thread! Aborting.

Disassembling the code shows:

20404e0c <prepare_message>:
20404e0c:       00852783                lw      a5,8(a0)
20404e10:       fd010113                addi    sp,sp,-48
20404e14:       02112623                sw      ra,44(sp)
20404e18:       0087a783                lw      a5,8(a5)
20404e1c:       02812423                sw      s0,40(sp)
20404e20:       02912223                sw      s1,36(sp)
20404e24:       03212023                sw      s2,32(sp)
20404e28:       01312e23                sw      s3,28(sp)
20404e2c:       01412c23                sw      s4,24(sp)
20404e30:       01512a23                sw      s5,20(sp)
20404e34:       00058a93                mv      s5,a1
20404e38:       00000593                li      a1,0
20404e3c:       00060a13                mv      s4,a2
20404e40:       00050913                mv      s2,a0
20404e44:       000780e7                jalr    a5
20404e48:       fff00593                li      a1,-1
20404e4c:       bd9fd0ef                jal     20402a24 <net_nbuf_get_reserve_tx>

The function prepare_message is in subsys/net/ip/dhcpv4.c

I found an old and closed bug in JIRA, just linking it here for reference as it sounded similiar:
https://jira.zephyrproject.org/browse/ZEP-955

Not sure how to proceed at this point. Appreciate any hints / advice.

Rtos port to risc-v

Hello,

I'm trying to port another rtos to risc-v and I'm following your instructions by porting Zephyr to see if this can be done in a similar fashion.

Is it possible to push another small rtos (other than zephyr, similarly) with rocket cores to a zedboard by using Vivado to generate another boot.bin ? Will I only need the .elf file of my rtos or does it require other files ?

Could you please tell me what sort of files I can work with similarly and what files should I be able to provide of my rtos ? I'm assuming the .elf of my rtos shouldn't only be sufficient ?

Thank you very much.

run in user mode

Hi,

Is there a way to run zephyr only in user/machine mode ?
We dont want to run in supervisor mode.

Please let me know

regards,
sathya

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.