Re: [lowrisc-dev] Compiling RISCV-Linux
by Wei Song
Sorry, mistakenly forget to cc the list.
The issue is that the unthered version is released several months ago
and the riscv-gnu-toolchain is constantly progressing.
So when there is any strange compiling issue, the first idea is always
to try the toolchain coming along with the exact release, which is
guaranteed to work.
-Wei
On 21/05/2016 13:37, Wei Song wrote:
> Hello Francesco,
>
> I think you are using a wrong toolchain.
> It seems like you are using a latest toolchain from RISC-V.
> For the lowRISC untethered release, it uses an old toolchain which
> comes along with the lowrisc-chip.
> To compile the Linux, you need to install the riscv-tool lcoated in
> lowrisc-chip/riscv-tools.
> Instruction is available from
> http://www.lowrisc.org/docs/untether-v0.2/riscv_compile/
>
> Best regards,
> Wei
>
>
> On 21/05/2016 06:29, Francesco Viggiano wrote:
>> Hello,
>>
>> I'm using the rockrtchip tool chain.
>>
>> $ riscv64-unknown-linux-gnu-gcc -v
>> Using built-in specs.
>> COLLECT_GCC=riscv64-unknown-linux-gnu-gcc
>> COLLECT_LTO_WRAPPER=/home/francesco/rocketchip/toolchain/TOP/riscv/libexec/gcc/riscv64-unknown-linux-gnu/5.3.0/lto-wrapper
>>
>> Target: riscv64-unknown-linux-gnu
>> Configured with:
>> /home/francesco/rocketchip/rocket-chip/riscv-tools/riscv-gnu-toolchain/build/src/gcc/configure
>>
>> --target=riscv64-unknown-linux-gnu
>> --prefix=/home/francesco/rocketchip/toolchain/TOP/riscv
>> --with-sysroot=/home/francesco/rocketchip/toolchain/TOP/riscv/sysroot
>> --with-newlib --without-headers --disable-shared --disable-threads
>> --enable-tls --enable-languages=c --disable-libatomic
>> --disable-libmudflap
>> --disable-libssp --disable-libquadmath --disable-libgomp --disable-nls
>> --disable-bootstrap --disable-multilib
>> Thread model: single
>> gcc version 5.3.0 (GCC)
>>
>> Thank you,
>> Francesco
>>
>> On Fri, May 20, 2016, 21:49 Masanori Ogino <masanori.ogino(a)gmail.com>
>> wrote:
>>
>>> Hello,
>>>
>>> 2016-05-21 8:59 GMT+09:00 Francesco Viggiano <francesco.vgg(a)gmail.com>:
>>>> Hi all,
>>>>
>>>> I following the tutorial on this page
>>>> http://www.lowrisc.org/docs/untether-v0.2/linux_compile/ for compilng
>>> the
>>>> linux sources.
>>>>
>>>> When I run the following command : make ARCH=riscv -j vmlinux
>>>> I ran into this error:
>>>>
>>>> CHK include/config/kernel.release
>>>> CHK include/generated/uapi/linux/version.h
>>>> CC scripts/mod/empty.o
>>>> as: unrecognized option '-m64'
>>>> make[2]: *** [scripts/mod/empty.o] Error 1
>>>> make[1]: *** [scripts/mod] Error 2
>>>> make: *** [scripts] Error 2
>>>>
>>>> Can you help me with solve this problem?
>>> I'm unsure but the toolchain seems incomplete.
>>> Would you show us the output of `riscv64-unknown-linux-gnu-gcc -v`
>>> command?
>>>
>>> --
>>> Masanori Ogino
>>>
>
7 years
Compiling RISCV-Linux
by Francesco Viggiano
Hi all,
I following the tutorial on this page
http://www.lowrisc.org/docs/untether-v0.2/linux_compile/ for compilng the
linux sources.
When I run the following command : make ARCH=riscv -j vmlinux
I ran into this error:
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CC scripts/mod/empty.o
as: unrecognized option '-m64'
make[2]: *** [scripts/mod/empty.o] Error 1
make[1]: *** [scripts/mod] Error 2
make: *** [scripts] Error 2
Can you help me with solve this problem?
Thank you for your time,
Francesco
--
Francesco
7 years
[GSoC2016] Weekly Report of Porting musl to RISC-V Project #1
by Masanori Ogino
Hello,
The coding period of GSoC 2016 began in Monday. Now it's Friday
midnight (in Japan) so I'd like to report the progress on the project.
I forked lluixhi's RISC-V port of musl [1] as written in my proposal,
and applied some patches to catch up with the bleeding edge of the
library. My WIP branch [2] has no significant differences from the
origin in the arch-dependent part for now.
The riscv-gnu-toolchain has been changed to build musl-based
toolchains. Since the master branch of the toolchain has migrated to
GCC 6.1 containing musl support, the integration is straightforward.
If you want to try it, please execute `make musl` after configuration
with my WIP branch [3].
Now I'm working on building a root filesystem with the musl-based
toolchain to test the port and preparing patches to address some
problems I've found. I hope we will be able to launch a Linux system
based on musl on Spike next week.
Any comments would be appreciated. Please tell me your opinion!
Have a nice weekend!
[1]: https://github.com/lluixhi/musl-riscv
[2]: https://github.com/omasanori/musl/tree/riscv
[3]: https://github.com/omasanori/riscv-gnu-toolchain/tree/musl
--
Masanori Ogino
7 years
Timing constraint not met
by Francesco Viggiano
Hi all,
I'm trying to integrate the lowRisc Rocket version (with L2 cache, pcr and
a rocket tile) in my own project and push it on my Virtex7 VC707 board.
Unfortunately, after the synthesis, timing constraints are not met. I must
specify that the original version of the lowRisc chip successfully respect
the timing constraints after the synthesis on the same board.
The problem arises on the path from
*Rocket/RocketTile/FPU/dfma/in_in2_reg[62]/C*
to
*Rocket/RocketTile/FPU/dfma/R27_reg[0]/D and also R27_reg 10 to 14,
61,62,63*
So I'm wondering, are there any particular timing constraints that I have
to specify also in my design?
Thank you for your support,
Francesco Viggiano
--
Francesco
7 years, 1 month
Porting to the Virtex vc707 board
by Francesco Viggiano
Hi all,
I'm trying to porting the lowRisc SoC to the Virtex7 VC707 board, since I
don't have your supported boards.. I saw that this board is very similar to
the KC705, all the IPs match and I have modified the pin_plan.xdc
accordingly with the manual. I managed to create a bitstream from the
hello.c example without errors but the chip seems to do nothing, I cannot
see the "Hello World" printed on the uart.
I am using Vivado v2015.2.
Can this porting be accomplished in such a straightforward way or there is
more under the hood that must be checked and modified?
Thank you for your support,
Francesco Viggiano
--
Francesco
7 years, 1 month