Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Architectures & Platforms Gentoo on ARM
  • Search

Gentoo on Raspberry Pi 3

Gentoo on all things ARM. Both 32 bit and 64 bit.
Tell about your hardware and CHOST.
Problems with crossdev targeting ARM hardware go here too.
Post Reply
  • Print view
Advanced search
81 posts
  • 1
  • 2
  • 3
  • 4
  • Next
Author
Message
UncleVan
n00b
n00b
Posts: 72
Joined: Tue Feb 08, 2011 8:48 pm

Raspberry 3 calling !

  • Quote

Post by UncleVan » Mon Feb 29, 2016 8:33 pm

Hello mates ! Anybody home ?

You already got the news - Raspberry 3 deserves a revival of this thread ...

Now I'm looking for any info conserning toolchain (tuple), CFLAGS, USEs, defconfig (kernel) etc. After I successfully build 2 full-featrued Gentoo Raspberry ports - even with Libre Office - now there is a new challenge !

Even I dont know when I'd call a 3th model mine I would appreciate any news/advices/experience/links from you about this specific Gentoo port - 64 Bits, wow. V.V. I'd try to help, support & answer to any of your problems too. Besides, it's allways better to keep the know-how at one place ...

Thanks in advance !

PS: Have to appologize to Leio :oops: - using the default configs from the - recent - RPi kernel sources is really the best way to (cross)compile one's own image:

Code: Select all

make bcmrpi_defconfig
for Pi 1 and

Code: Select all

make bcm2709_defconfig
for RPi 2 worked like a charm ! I didnt succeed in any other way for the 4. kernels.

PPS: To mention the fact there is a new module for /proc/config.gz called simply configs.ko - have to enable it in the menuconfig. modprobe it and only then you can zcat /proc/config.gz as usual. And unload afterwards; saves memory.

Code: Select all

  ┌────^(-)─────────────────────────────────────────────────────────────┐
  │ │    <M> Kernel .config support                                   │ │  
  │ │    [*]   Enable access to .config through /proc/config.gz       │ │  

Code: Select all

  ┌─────────── Enable access to .config through /proc/config.gz ────────────┐
  │ CONFIG_IKCONFIG_PROC:                                                   │  
  │                                                                         │  
  │ This option enables access to the kernel configuration file             │  
  │ through /proc/config.gz.                                                │  
  │                                                                         │  
  │ Symbol: IKCONFIG_PROC [=y]                                              │  
  │ Type  : boolean                                                         │  
  │ Prompt: Enable access to .config through /proc/config.gz                │  
  │   Location:                                                             │  
  │     -> General setup                                                    │  
  │       -> Kernel .config support (IKCONFIG [=m])                         │  
  │   Defined at init/Kconfig:828                                           │  
  │   Depends on: IKCONFIG [=m] && PROC_FS [=y]                             │  
  │                                                                         │  
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56101
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Tue Mar 01, 2016 7:22 pm

1clue,

Done. For Raspberry Pi 2 see [topic=1010452]Gentoo on Raspberry Pi 2[/topic]
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
basiaf
n00b
n00b
User avatar
Posts: 44
Joined: Fri Feb 25, 2005 9:33 am
Location: Dortmund

  • Quote

Post by basiaf » Wed Mar 02, 2016 11:30 pm

If I see correctly, there is no 64bit kernel support for the RPI 3 yet. While Im waiting for my RPI 3 to arrive, whats the best suited setup in terms of cflags and chost/crossdev for 32bit? Same as for the RPI 2 or can optimizations like

Code: Select all

-march=armv8-a -mtune=cortex-a53
be used?
Top
chithanh
Retired Dev
Retired Dev
User avatar
Posts: 2158
Joined: Sat Aug 05, 2006 10:16 pm
Location: Berlin, Germany

  • Quote

Post by chithanh » Thu Mar 03, 2016 9:27 am

I ordered a Raspberry Pi 3 which will replace my original Rasberry Pi B Rev. 1.0

There is no RPi vendor kernel with 64 bit yet. In order to boot 64 bit you have to build a generic kernel and pass a device tree. Also you need to tell config.txt to enter aarch64 mode.

Some pointers where to start:
https://www.raspberrypi.org/forums/view ... 2&t=137963
https://www.reddit.com/r/archlinux/comm ... pi_3_arch/
https://github.com/raspberrypi/linux/issues/1310
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

  • Quote

Post by keet » Sun Mar 06, 2016 7:27 pm

I am also waiting for my Raspberry Pi 3 and Odroid C2 to arrive. I am not sure what I will do with them yet (practically), but I would like to run Gentoo on them.

My Raspberry Pi 2 and Odroid C1 are working as a media center and file server. I had Gentoo working on my Raspberry Pi 2, but I could never make Kodi work, so I switched to Raspbian. Unfortunately, it's not even keyworded for ARM ([https://packages.gentoo.org/packages/media-tv/kodi].
Top
zypher
Retired Dev
Retired Dev
User avatar
Posts: 416
Joined: Mon Jun 10, 2002 11:34 am
Location: Cologne, ger.

  • Quote

Post by zypher » Tue Mar 08, 2016 11:29 am

Strangely, I recieved my rpi3 one day after ordering it the day it was released.
Compile speed ist pretty decent, nevertheless I had to set the clock to fixes 600Mhz to avoid reboots due to overheating.
Installing a passive hetasink achieved nothing there. Will try a fan next.
I set p a crossdev distcc server to speed things up a bit. My goal will be running 3-4 rpi3s in a farm/cluster setup with several dirs (distdir/tmp/packages ,etc.) over nfs.
Atm I'm on 32bit kernel and userland, reemerging world and sqitching to systemd.
Any news on optimal CFLAGS and ways to migrate to 64bit would be appreciated.
linux user 65882
Top
pitcrawler
Apprentice
Apprentice
User avatar
Posts: 155
Joined: Sun Jan 09, 2005 12:12 am
Location: Oklahoma, USA

  • Quote

Post by pitcrawler » Tue Mar 08, 2016 1:26 pm

zypher wrote:Strangely, I recieved my rpi3 one day after ordering it the day it was released.
Compile speed ist pretty decent, nevertheless I had to set the clock to fixes 600Mhz to avoid reboots due to overheating.
Installing a passive hetasink achieved nothing there. Will try a fan next.
I set p a crossdev distcc server to speed things up a bit. My goal will be running 3-4 rpi3s in a farm/cluster setup with several dirs (distdir/tmp/packages ,etc.) over nfs.
Atm I'm on 32bit kernel and userland, reemerging world and sqitching to systemd.
Any news on optimal CFLAGS and ways to migrate to 64bit would be appreciated.
Before mine arrived, I read an article about it getting to 100C under load. I bought a cheap heatsink and a fan from ebay and I've had no problems so far. I've not pushed mine very much yet though.
Top
zypher
Retired Dev
Retired Dev
User avatar
Posts: 416
Joined: Mon Jun 10, 2002 11:34 am
Location: Cologne, ger.

  • Quote

Post by zypher » Tue Mar 08, 2016 4:31 pm

Ahhh, I made a mistake ;)
I still had my old 700mA powersupply in place. Got the original 2A ps a day after the rpi so I checked it with a smaller one at first.
Now that I use the bigger powersupply, there are no more reboots.
linux user 65882
Top
schorsch_76
Guru
Guru
User avatar
Posts: 452
Joined: Tue Jun 19, 2012 4:04 pm

  • Quote

Post by schorsch_76 » Tue Mar 08, 2016 5:17 pm

Today i got my RPI3 too. Now something new to play ;)
// valid again: I forgot about the git access. Now 1.2GB big. Start: 2015-06-25
git daily portage tree
Web: https://github.com/schorsch1976/portage
git clone https://github.com/schorsch1976/portage
Top
zypher
Retired Dev
Retired Dev
User avatar
Posts: 416
Joined: Mon Jun 10, 2002 11:34 am
Location: Cologne, ger.

  • Quote

Post by zypher » Wed Mar 09, 2016 7:34 am

fyi, I installed sysbench to test sdcard and nfs performance. Test results are in the same area, more or less.
Will try a root-over-nfs setup to check overall performance.
linux user 65882
Top
schorsch_76
Guru
Guru
User avatar
Posts: 452
Joined: Tue Jun 19, 2012 4:04 pm

  • Quote

Post by schorsch_76 » Wed Mar 09, 2016 8:54 pm

A few things i recognized on my rpi3:
  • set the cpu governour to ondemand. default seems to be powersave (freq does not not go up). With ondemand it goes to 1200MHz and it is a lot faster. powersave stays at 600MHz
  • squashfs for /usr/portage speeds up portage a lot
  • With ondemand governour, i recognized the max temperature to go up to 89°C. But as the CPU is specified with 1200MHz [1], it should be no problem. Even my AMD E350 goes up to 92°C (fanless)
[1] https://www.raspberrypi.org/products/ra ... 3-model-b/
// valid again: I forgot about the git access. Now 1.2GB big. Start: 2015-06-25
git daily portage tree
Web: https://github.com/schorsch1976/portage
git clone https://github.com/schorsch1976/portage
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

  • Quote

Post by keet » Fri Mar 18, 2016 1:39 am

I have my entire Raspberry Pi 3 / filesystem on N.F.S., and it seems rather slow, at least when running emerge. However, I just switched from powersave to ondemand. Also, I have not compared it to running on the MicroSD card.
Top
EvadingGrid
n00b
n00b
Posts: 13
Joined: Thu Apr 04, 2013 2:59 pm
Contact:
Contact EvadingGrid
Website

  • Quote

Post by EvadingGrid » Fri Mar 18, 2016 3:04 pm

I found the install really easy and really fast.

ARMv7a_hardFP
USB Hardrive
Kernel Raspberry Foundation
NOOBs for dual boot giving Raspbian as my "rescue disc"

I followed these instructions http://www.ukginger.net/Gentoo2/ and it took hardly any time at all.
Bit of copy paste and in next to no time or effort I had Gentoo running.
Top
steveL
Watchman
Watchman
Posts: 5153
Joined: Wed Sep 13, 2006 1:18 pm
Location: The Peanut Gallery

  • Quote

Post by steveL » Fri Mar 18, 2016 4:24 pm

EvadingGrid wrote:I followed these instructions http://www.ukginger.net/Gentoo2/ and it took hardly any time at all.
Bit of copy paste and in next to no time or effort I had Gentoo running.
Nice one. I loved this part:
UK Ginger wrote:Elite Combat Rating System

Spot the oxymoron...
  • Mac User - Harmless
  • Windows Expert - Mostly Harmless
  • Mint - Deadly
  • Gentoo User - Dangerous
  • Linux From Scratch - Elite
The Mac is harmless, everything just works. Windows mostly harmless because they think config means clicking in control panel.
Mint is deadly because of package dependency hell, and a flawed release system.
Gentoo is downright dangerous, because it is not a toy.
Only Linux From Scratch is Elite, and thats the truth of it...
LOL :-)
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

  • Quote

Post by keet » Fri Mar 18, 2016 4:58 pm

I forgot to mention that I am running 'emerge -e world' after configuring make.conf. It has been running since last night, and has finished about 140 out of 190 packages. This is with everything except /boot on N.F.S, and with -j2 and --jobs=2.
Top
NeddySeagoon
Administrator
Administrator
User avatar
Posts: 56101
Joined: Sat Jul 05, 2003 9:37 am
Location: 56N 3W

  • Quote

Post by NeddySeagoon » Fri Mar 18, 2016 8:45 pm

keet,

You need to add in cross distcc.
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

  • Quote

Post by keet » Fri Mar 18, 2016 10:03 pm

NeddySeagoon wrote:keet,

You need to add in cross distcc.
You're right. I was just trying to avoid turning on my desktop to help with it.
Top
dr_wulsen
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 146
Joined: Wed Aug 21, 2013 8:15 pm
Location: Austria

CFLAGS for RaspberryPi3

  • Quote

Post by dr_wulsen » Sat Mar 19, 2016 9:26 pm

Hey there,

just got my RPi3 a few days ago and was wondering for the proper CFLAGS.
Obaining them the usual way by running

Code: Select all

gcc -march=native -mtune=cortex-a53 -Q --help=target
always resulted in a segfault. Turns out that the Cortex-A53 and the Cortex-A57 were not implemented in the GCC CPU list for AARCH32 (ARM32bit); whilst being present in the AARCH64.
A patch was suggested way earlier down the road here: https://gcc.gnu.org/ml/gcc-patches/2014 ... 00585.html

So I ran the ebuild commands manually, patching the file to contain the two CPUs, after that it would suddenly recognize the "native" switch on my RPi3.
Of course, this is not a permanent solution, as any GCC update will waste your manually patched installation.
For your reference, I have run the usual command (see above) to obtain the flags being used for the RPi3 with -march=native, please find them below:
Die folgenden Optionen sind zielspezifisch:
-mabi= aapcs-linux
-mabort-on-noreturn [ausgeschaltet]
-mandroid [ausgeschaltet]
-mapcs [ausgeschaltet]
-mapcs-float [ausgeschaltet]
-mapcs-frame [ausgeschaltet]
-mapcs-reentrant [ausgeschaltet]
-mapcs-stack-check [ausgeschaltet]
-march= armv8-a+crc
-marm [eingeschaltet]
-masm-syntax-unified [ausgeschaltet]
-mbig-endian [ausgeschaltet]
-mbionic [ausgeschaltet]
-mcallee-super-interworking [ausgeschaltet]
-mcaller-super-interworking [ausgeschaltet]
-mcpu= [Standard]
-mfix-cortex-m3-ldrd [eingeschaltet]
-mfloat-abi= hard
-mfp16-format= none
-mfpu= vfpv3-d16
-mglibc [eingeschaltet]
-mhard-float
-mlittle-endian [eingeschaltet]
-mlong-calls [ausgeschaltet]
-mneon-for-64bits [ausgeschaltet]
-mnew-generic-costs [ausgeschaltet]
-mold-rtx-costs [ausgeschaltet]
-mpic-data-is-text-relative [eingeschaltet]
-mpic-register=
-mpoke-function-name [ausgeschaltet]
-mprint-tune-info [ausgeschaltet]
-mrestrict-it [eingeschaltet]
-msched-prolog [eingeschaltet]
-msingle-pic-base [ausgeschaltet]
-mslow-flash-data [ausgeschaltet]
-msoft-float
-mstructure-size-boundary= 0x20
-mthumb [ausgeschaltet]
-mthumb-interwork [eingeschaltet]
-mtls-dialect= gnu
-mtp= auto
-mtpcs-frame [ausgeschaltet]
-mtpcs-leaf-frame [ausgeschaltet]
-mtune= cortex-a53
-muclibc [ausgeschaltet]
-munaligned-access [eingeschaltet]
-mvectorize-with-neon-double [ausgeschaltet]
-mvectorize-with-neon-quad [eingeschaltet]
-mword-relocations [ausgeschaltet]

Bekannte ARM-ABIs (für Verwendung mit Option -mabi=):
aapcs aapcs-linux apcs-gnu atpcs iwmmxt

Bekannte ARM-Architekturen (für Verwendung mit Option -march=):
armv2 armv2a armv3 armv3m armv4 armv4t armv5 armv5e armv5t armv5te armv6 armv6-m armv6j armv6k armv6s-m armv6t2 armv6z armv6zk armv7 armv7-a armv7-m armv7-r armv7e-m armv7ve armv8-a armv8-a+crc iwmmxt
iwmmxt2 native

Bekannte __fp16-Formate (für Verwendung mit der Option -mfp16-format=):
alternative ieee none

Bekannte ARM-FPUs (für Verwendung mit Option -mfpu=):
crypto-neon-fp-armv8 fp-armv8 fpv4-sp-d16 fpv5-d16 fpv5-sp-d16 neon neon-fp-armv8 neon-fp16 neon-vfpv4 vfp vfp3 vfpv3 vfpv3-d16 vfpv3-d16-fp16 vfpv3-fp16 vfpv3xd vfpv3xd-fp16 vfpv4 vfpv4-d16

Gültige Argumente für -mtp=:
auto cp15 soft

Bekannte Gleitkomma-ABIs (für Verwendung mit Option -mfloat-abi=):
hard soft softfp

Bekannte ARM-CPUs (für Verwendung mit Optionen -mcpu= und -mtune=):
arm1020e arm1020t arm1022e arm1026ej-s arm10e arm10tdmi arm1136j-s arm1136jf-s arm1156t2-s arm1156t2f-s arm1176jz-s arm1176jzf-s arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm70 arm700 arm700i
arm710 arm7100 arm710c arm710t arm720 arm720t arm740t arm7500 arm7500fe arm7d arm7di arm7dm arm7dmi arm7m arm7tdmi arm7tdmi-s arm8 arm810 arm9 arm920 arm920t arm922t arm926ej-s arm940t arm946e-s arm966e-s
arm968e-s arm9e arm9tdmi cortex-a12 cortex-a15 cortex-a15.cortex-a7 cortex-a17 cortex-a17.cortex-a7 cortex-a5 cortex-a53 cortex-a57 cortex-a57.cortex-a53 cortex-a7 cortex-a72 cortex-a72.cortex-a53 cortex-a8
cortex-a9 cortex-m0 cortex-m0.small-multiply cortex-m0plus cortex-m0plus.small-multiply cortex-m1 cortex-m1.small-multiply cortex-m3 cortex-m4 cortex-m7 cortex-r4 cortex-r4f cortex-r5 cortex-r7 ep9312
exynos-m1 fa526 fa606te fa626 fa626te fa726te fmp626 generic-armv7-a iwmmxt iwmmxt2 marvell-pj4 mpcore mpcorenovfp native strongarm strongarm110 strongarm1100 strongarm1110 xgene1 xscale

Zu verwendende TLS-Dialekte:
gnu gnu2
Sorry for that stuff being in German, "eingeschaltet" means "enabled" in opposite "ausgeschaltet" means "disabled".
Obtaining this output with "-march=native -mtune=cortex-a53" or "-march=armv8-a+crc -mtune=cortex-a53" gives the same results, so setting the CFLAGS statically will be the same as if the autodetect did it for you.

I have obtained my CFLAGS and am setting them statically to

Code: Select all

CFLAGS="-march=armv8-a+crc -mtune=cortex-a53 -mfpu=crypto-neon-fp-armv8 -mfloat-abi=hard -ftree-vectorize -funsafe-math-optimizations -O2 -pipe"
in order to avoid hassle when GCC gets upgraded and is not capable of "-march=native" on a Cortex-A53 on AARCH32 again.

My -mfpu differs from the GCC output, but is supposed to work on AARCH32, as it says here: http://infocenter.arm.com/help/index.js ... 24052.html It says:
The -mfpu option is ignored with AArch64 targets, for example aarch64-arm-none-eabi. Use the -mcpu option to override the default FPU for aarch64-arm-none-eabi targets. For example, to prevent the use of floating-point instructions or floating-point registers for the aarch64-arm-none-eabi target use the -mcpu=name+nofp+nosimd option. Subsequent use of floating-point data types in this mode is unsupported.
Now if it's not affecting the AARCH64 branch, why on earth would we be enabled to set it as "crypto-neon-fp-armv8" on AARCH32 when it's always referenced as 64bit stuff?
So I assumed it would have an effect on AARCH32 and was right - see the helloworld below.

According to the GCC manpage, you need to enable the "-funsafe-math-optimizations" to enable GCC creating NEON-optimized code, as it would refuse to do so otherwise. The below is taken from the GCC manpage.
If the selected floating-point hardware includes the NEON extension (e.g. -mfpu=‘neon’), note that floating-point operations are not generated by GCC's auto-vectorization pass unless -funsafe-math-optimizations is also specified. This is because NEON hardware does not fully implement the IEEE 754 standard for floating-point arithmetic (in particular denormal values are treated as zero), so the use of NEON instructions may lead to a loss of precision.
I've tested my CFLAGS above with a simple helloworld, and asked diff to tell me if there was any difference in the output files when using different flags.
I can confirm that the helloworld is different with "-mfpu=vfpv3-d16" compared with "-mfpu=crypto-neon-fp-armv8" but works as expected with both of those.
If anyone knows about the mfpu being right or wrong at neon-fp-armv8 I'd be most grateful, however - I'll head on and re-compile my base system with those flags and let you know how it turns out.

UPDATE
Overnight, I had the RPi emerge GCC (changing the CHOST actually, but that shouldn't matter here) - important is that the GCC compiled with my flags listed above works well and compiles itself and other programs just fine.
Last edited by dr_wulsen on Sun Mar 20, 2016 8:41 am, edited 6 times in total.
There's no stupid questions, only stupid answers.
Top
dr_wulsen
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 146
Joined: Wed Aug 21, 2013 8:15 pm
Location: Austria

Crossdev for RPi

  • Quote

Post by dr_wulsen » Sat Mar 19, 2016 9:33 pm

Just to jot it down somewhere, so it may save some lost soul:

To successfully compile the crossdev toolchain on my x64 PC, I had to remove any "-march=foo" from make.conf

Running the stuff as suggested somewhere in the wiki or forum didn't work.
Their suggestion was to do a

Code: Select all

CFLAGS="-O2 -pipe" crossdev -t armv........foo"
and it would always break at cross-glibc.

Removing any "-march=foo" from make.conf gave me a successful build and now my "big" computer is happily running as distcc slave for the raspberry.
Of course, I put my proper "-march=core2" back to make.conf after that cross-toolchain was built.
There's no stupid questions, only stupid answers.
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

Re: Crossdev for RPi

  • Quote

Post by keet » Sun Mar 20, 2016 2:16 pm

Thank you for posting your CFLAGS. I tested them successfully with an emerge -e system, and haven't seen any problems.
dr_wulsen wrote:To successfully compile the crossdev toolchain on my x64 PC, I had to remove any "-march=foo" from make.conf.
I didn't encounter this problem myself.

I think that for me, the main performance improvement (solely regarding emerge times, not actual usage, not that I have much actual usage time so far :) ) seems to have been moving from N.F.S. to local storage. That is what it feels like, anyway. To be honest, I haven't actually timed them yet, since I just installed genlop this morning.

I did notice that binutils took 8 minutes with distcc, and 17 minutes without it. I can't compare glibc yet because the first compilation was with all locales enabled, and the second was with only 2.

Sys-libs/db failed to emerge with -march=armv8-a (or any 8 variant). I forget the exact error, but I think that it was a GCC error about a particular feature being obsolete for armv8. I needed to set an exception in /etc/portage/env to make it build with armv7-a. I also tried the keyworded version with the same error. I should probably file a bug upstream for this.
Top
schorsch_76
Guru
Guru
User avatar
Posts: 452
Joined: Tue Jun 19, 2012 4:04 pm

  • Quote

Post by schorsch_76 » Sun Mar 20, 2016 7:46 pm

How fast is your SD card or your USB HDD?

mine is a class 10 SD card.

Code: Select all

raspberrypi3 pi # hdparm -tT /dev/mmcblk0

/dev/mmcblk0:
 Timing cached reads:   1200 MB in  2.00 seconds = 599.78 MB/sec
 Timing buffered disk reads:  40 MB in  3.03 seconds =  13.19 MB/sec
// valid again: I forgot about the git access. Now 1.2GB big. Start: 2015-06-25
git daily portage tree
Web: https://github.com/schorsch1976/portage
git clone https://github.com/schorsch1976/portage
Top
keet
Guru
Guru
Posts: 580
Joined: Tue Sep 09, 2008 12:04 am

  • Quote

Post by keet » Sun Mar 20, 2016 9:56 pm

schorsch_76 wrote:How fast is your SD card or your USB HDD?
Mine is about the same.

Code: Select all

/dev/sda:
 Timing cached reads:   1106 MB in  2.00 seconds = 552.74 MB/sec
 Timing buffered disk reads:  94 MB in  3.04 seconds =  30.92 MB/sec

/dev/mmcblk0:
 Timing cached reads:   1126 MB in  2.00 seconds = 562.64 MB/sec
 Timing buffered disk reads:  58 MB in  3.07 seconds =  18.91MB/sec
Top
EvadingGrid
n00b
n00b
Posts: 13
Joined: Thu Apr 04, 2013 2:59 pm
Contact:
Contact EvadingGrid
Website

  • Quote

Post by EvadingGrid » Thu Mar 24, 2016 11:36 am

My suggestion . . .

Try a stage-3 built for armv7a_neonvfpv4_hardfp

Code: Select all

CFLAGS="-02 -pipe  -march=armv7-a -mfpu=[b]neon[/b][b]-vfpv[b]4[/b] -ffast-math -mfloat-abi=hard "
Because the gentoo stage-3 does not support neon hardware acceleration or the newer floating point unit 4.


Here is a place to grab a Stage-3 armv7a_neonvfpv4_hardfp
http://ukginger.net/Gentoo2/install-pi2too-6-base.html

Its not ideal, but its a starting point.
[/b]
Top
dr_wulsen
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 146
Joined: Wed Aug 21, 2013 8:15 pm
Location: Austria

HDD versus SDHC

  • Quote

Post by dr_wulsen » Fri Mar 25, 2016 12:30 pm

Here's my results:

Code: Select all

/dev/sda:
 Timing cached reads:   1224 MB in  2.00 seconds = 612.08 MB/sec
 Timing buffered disk reads:  92 MB in  3.03 seconds =  30.34 MB/sec

/dev/mmcblk0:
 Timing cached reads:   1212 MB in  2.00 seconds = 605.63 MB/sec
 Timing buffered disk reads:  42 MB in  3.03 seconds =  13.84 MB/sec
There's no stupid questions, only stupid answers.
Top
dr_wulsen
Tux's lil' helper
Tux's lil' helper
User avatar
Posts: 146
Joined: Wed Aug 21, 2013 8:15 pm
Location: Austria

Getting it up on the RPi3 - WiFi

  • Quote

Post by dr_wulsen » Fri Mar 25, 2016 1:22 pm

To get the WiFi up and running, I needed to download two files (likely only one is required, but the other forums suggested always the two together).
https://github.com/RPi-Distro/firmware- ... 0-sdio.bin
https://github.com/RPi-Distro/firmware- ... 0-sdio.txt
and place them in /lib/firmware/brcm/

This would only work if the WiFi driver was compiled as module.

With the driver integrated into the kernel, I always got

Code: Select all

brcmfmac_sdio mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.bin failed with error -2
during boot.

If the driver is integrated into the kernel (the way I like it), you need to add the firmware files into the kernel.
Copy the two files to /usr/src/*kernelver*/firmware/brcm/
Then set

Code: Select all

Symbol: EXTRA_FIRMWARE [=brcm/brcmfmac43430-sdio.bin brcm/brcmfmac43430-sdio.txt]
  │ Type  : string
  │ Prompt: External firmware blobs to build into the kernel binary
  │   Location:
  │     -> Device Drivers
  │       -> Generic Driver Options
  │         -> Userspace firmware loading support (FW_LOADER [=y])
In your kernel configuration.

After integrating the FW into the kernel, the WiFi is up and running stable without any errors or warnings during boot.

If anyone is interested in my custom .config for the raspberrypi-sources-4.4 to have a starting point for their own kernel, let me know - I will then post them here.
Of course, if anyone is into configuring ARM kernels and has more experience (I am on Gentoo for approx. 8 years now and have always configured my own kernels, but started with ARM with the RPi1 only in 2013),
if you're out there and have the spare time to check my config for obvious flaws/mistakes, it'd be highly appreciated.
My main interest is to squeeze the most I can get out of the RPi3 (even it ends up as mediacenter in the end).
Last edited by dr_wulsen on Mon Apr 11, 2016 11:34 am, edited 1 time in total.
There's no stupid questions, only stupid answers.
Top
Post Reply
  • Print view

81 posts
  • 1
  • 2
  • 3
  • 4
  • Next

Return to “Gentoo on ARM”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic