nuttx/boards/risc-v/fe310/hifive1-revb
liuhaitao 459ad99373 Use EXTRAFLAGS instead of EXTRADEFINES to be used by make via command line
So call 'make EXTRAFLAGS=-Wno-cpp' could suppress the warnings with pre-processor
directive #warning in GCC.

Change-Id: Iaa618238924c9969bf91db22117b39e6d2fc9bb6
Signed-off-by: liuhaitao <liuhaitao@xiaomi.com>
2020-04-11 08:31:08 -06:00
..
configs/nsh boards/: Remove references to CONFIG_FS_WRITABLE 2020-03-22 08:24:07 -05:00
include Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
scripts Use EXTRAFLAGS instead of EXTRADEFINES to be used by make via command line 2020-04-11 08:31:08 -06:00
src Run codespell -w with the latest dictonary again 2020-02-23 22:27:46 +01:00
Kconfig Merged in masayuki2009/nuttx.nuttx/hifive1-qemu (pull request #1078) 2019-11-28 20:37:24 +00:00
README-qemu.txt Merged in masayuki2009/nuttx.nuttx/fe310_with_pll (pull request #1094) 2019-12-11 12:01:53 +00:00
README.txt Merged in masayuki2009/nuttx.nuttx/fe310_with_pll (pull request #1094) 2019-12-11 12:01:53 +00:00

1. Download and install toolchain

  $ curl https://static.dev.sifive.com/dev-tools/riscv64-unknown-elf-gcc-8.3.0-2019.08.0-x86_64-linux-ubuntu14.tar.gz

2. Download and install J-Link Software Documentation Pack

  https://www.segger.com/downloads/jlink/

  $ sudo apt install JLink_Linux_V656b_x86_64.deb

3. Configure and build NuttX

  $ mkdir ./nuttx; cd ./nuttx
  $ git clone https://bitbucket.org/nuttx/nuttx.git
  $ git clone https://bitbucket.org/nuttx/apps.git
  $ cd nuttx
  $ make distclean
  $ ./tools/configure.sh hifive1-revb:nsh
  $ make V=1

4. Flash the nuttx with J-Link and run

  $ picocom -b 115200 /dev/ttyACM0

  $ /opt/SEGGER/JLink_V656b/JLinkGDBServer -device FE310

  $ riscv64-unknown-elf-gdb ./nuttx
  (gdb) target extended-remote:2331
  (gdb) load nuttx
  (gdb) c

5. TODO

  Support GPIO/SPI/I2C/RTC/WDT/PWM
  Support RISC-V User mode