postmarketOS/Alpine edge image for the Pinebook Pro
#51
(05-25-2020, 04:05 AM)pmjohann Wrote:
(05-23-2020, 02:39 PM)digeratus1. Wrote: I've been running postmarketOS exclusively since the end of March without issues. Well, one of issue - sound - but that was my fault. Are you using the default image from March? Also, had you already performed the trackpad firmware update to your PBP?

Forgot to add that NO I did not perform any firmware updates previously

Not sure if you have Manjaro 20.04 around in an SD card. If you do, their keyboard/trackpad update process is quite nice. Check the thread with instructions here:
https://forum.manjaro.org/t/how-to-flash.../112366/21

Once you update the firmware it shouldn't matter what distro you use, it will work across them all.
  Reply
#52
(05-26-2020, 02:07 PM)digeratus1. Wrote:
(05-25-2020, 04:05 AM)pmjohann Wrote:
(05-23-2020, 02:39 PM)digeratus1. Wrote: I've been running postmarketOS exclusively since the end of March without issues. Well, one of issue - sound - but that was my fault. Are you using the default image from March? Also, had you already performed the trackpad firmware update to your PBP?

Forgot to add that NO I did not perform any firmware updates previously

Not sure if you have Manjaro 20.04 around in an SD card. If you do, their keyboard/trackpad update process is quite nice. Check the thread with instructions here:
https://forum.manjaro.org/t/how-to-flash.../112366/21

Once you update the firmware it shouldn't matter what distro you use, it will work across them all.
Thank you, I will try this and report back!
  Reply
#53
Hello everybody,

I have issues with running or booting the current postmarketOS from the eMMC.

I used pmbootstrap to generate a working installation on a SD card. This installation will boot fine as long as the eMMC is switched off by using the internal switch, or if there i a functional Manjaro on the eMMC.

However, dd'ing the SD card with a working postmarketOS installation to the eMMC will break booting on the Pinebook Pro. The only way to get around that was to turn off the eMMC, boot from an SD card with e.g. Manjaro on it, then hot-plugging the eMMC on and writing a functional Manjaro installation image back to the eMMC.

Any ideas how to get PostmarketOS running from the eMMC?
  Reply
#54
(06-11-2020, 09:35 AM)randomuser987987 Wrote: I have issues with running or booting the current postmarketOS from the eMMC.

Sounds like another issue with uboot, and you can see the forum is full of threads about it, too.
  Reply
#55
(06-11-2020, 02:06 PM)slyecho Wrote:
(06-11-2020, 09:35 AM)randomuser987987 Wrote: I have issues with running or booting the current postmarketOS from the eMMC.

Sounds like another issue with uboot, and you can see the forum is full of threads about it, too.

I believe so, too. I would love to understand how uboot actually works and especially how it works for the Pinebook Pro, but I couldn't find any on point tutorial.
  Reply
#56
(06-11-2020, 04:22 PM)randomuser987987 Wrote:
(06-11-2020, 02:06 PM)slyecho Wrote:
(06-11-2020, 09:35 AM)randomuser987987 Wrote: I have issues with running or booting the current postmarketOS from the eMMC.

Sounds like another issue with uboot, and you can see the forum is full of threads about it, too.

I believe so, too. I would love to understand how uboot actually works and especially how it works for the Pinebook Pro, but I couldn't find any on point tutorial.

What's your problem exactly? 1. Are you missing a conceptual overview, 2. knowledge about the boot process or 3. what it does?
  Reply
#57
(06-13-2020, 06:49 AM)matosys Wrote: What's your problem exactly? 1. Are you missing a conceptual overview, 2. knowledge about the boot process or 3. what it does?

Maybe all of them?
Things that are unclear to me:

- Which distro uses which uboot? Where is the code? It seems like pmos uses the original uboot with some patches for the LED.

- How do I actually compile it into a flashable image?

- Where can I configure things like boot order, boot target etc. in uboot?

- What is booting what? Why is there some extlinux appearing in the Manjaro distro? Uboot is booting syslinux which boots Linux? What is happening?
  Reply
#58
yeah, I can see your issue. Let's roll this up from the back:

U-Boot essentially is a firmware and boot loader. One can think of it as Grub+BIOS. It initializes the hardware and loads the kernel into memory.
ARM platforms look for the 64th block and start executing code from there. That's the reason why one has to seek the 64th block, when dd'ing
the firmware onto eMMC or SD.

U-Boot itself consists of 2 parts, a stage1 loader and the actual u-boot image.

The Boot ROM is pretty much a set of instructions that is often stored inside the CPU and gets loaded directly into the cpu at powerup to
initialize the absolute bare minimum hardware required, to enable the possibility to run any externally stored code.

This includes looking into the 64th block (exactly that one) of your boot drive after it's job is done. That's where the first stage of U-Boot
can be found, the stage1 loader. This loader is responsible for actually loading the U-Boot Binary into RAM. Essentially, this is the reason why
we need to 'seek=64' when we want to flash the first part of U-Boot onto SD or eMMC.

Since the Boot ROM does not initialize anything except the bare minimum, stage1's data needs to be stored in a FAT scheme, so we are very limited
in available storage space for stage1, which we have to use economically to set up everything required to load the U-Boot binary into RAM and
start running it. U-Boot is quite a bit larger than stage1 and that's the primary reason we have stage1. It's a small piece of executable
binary responsible for getting the system ready to run and load a larger piece of executable binary. That's why the boot process is often
described as pulling oneself out of a swamp at one's hairs. Again, we basically place the U-Boot binary in a specific location (2nd dd seek)
as a convention, so that stage1 loads the appropriate data into RAM. Keep in mind, that Stage1 is basically a dump fuck, it loads, whatever is
at that location and doesn't care, if it makes sense or not.

Inside the U-Boot binary is, where the magic is actually happening. This is, where device drivers are initially loaded and you can extend it in
any way you want. PXE Boot? Implement it here. USB boot? Initialize your USB controller, loading USB Drivers, initializing your NVMe ...here is
where it's done. Once you initialized your Hardware, U-Boot loads the kernel image into RAM and hands of controll to the kernel and your
specific init system (systemd, initd, whatever you're using). This is, why there are so many different versions of U-Boot. We got tailormade
versions of U-Boot per device since drivers and initialization varies according to the specific controllers and hardware in your system.

To summarize, the boot process looks like this:

Boot ROM ==> Stage1 ==> Stage2(actual u-boot) ==> kernel => init


For your standard PC, this would look like this:
Boot ROM ==> Firmware (BIOS/UEFI/libreboot/...) ==> bootloader ==> kernel ==> init

in comparison, UEFI or BIOS would do comparably more than Stage1 while the bootloader does less.


I hope that clears up a few of your questions.

(06-13-2020, 07:37 AM)randomuser987987 Wrote:
(06-13-2020, 06:49 AM)matosys Wrote: What's your problem exactly? 1. Are you missing a conceptual overview, 2. knowledge about the boot process or 3. what it does?

Maybe all of them?
Things that are unclear to me:

- Which distro uses which uboot? Where is the code? It seems like pmos uses the original uboot with some patches for the LED.

- How do I actually compile it into a flashable image?

- Where can I configure things like boot order, boot target etc. in uboot?

- What is booting what? Why is there some extlinux appearing in the Manjaro distro? Uboot is booting syslinux which boots Linux? What is happening?

Oh and about the configuration thing: yes, you *can* with enough expertise. Just like people forked a u-boot version to add NVMe as a boot option.

If you expect something like a BIOS, I have to disappoint you
  Reply
#59
Hi everyone again,

Finally I came back to continue setting up my PBP, had some busy days / months...
@MartijnBraam I see you added a new image in october with the 5.9 kernel, and also an SPI flash tool.

My current status is:

- I installed manjaro and flashed the keyboard / trackpad firmware which works awesome.
- I also have the previous (May) release flashed to microSD which also boots just fine.
- Now I understand that firmware is related to (inside of?) u-boot, which I have zero experience with
- Last time I dd'd my microSD to my eMMC my keyboard and trackpad were both gone

Could anyone please advise me how I should seek with dd to keep my current u-boot and HID firmwares in place and use the latest and greatest postmarketOS?

I'd really appreciate it!

Thank you everyone, you guys are awesome!
  Reply
#60
bump, anyone?
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Kali Linux for Pinebook Pro Luke 94 101,644 09-26-2022, 06:46 AM
Last Post: dachalife
  Need help with new pinebook pro magistral 10 613 09-24-2022, 05:14 PM
Last Post: magistral
  manjaro on pinebook pro low audio quality over jack alcck 1 98 09-22-2022, 11:31 AM
Last Post: petersen77
  Fedora Workstation (36) on Pinebook Pro u974615 13 753 09-02-2022, 11:24 AM
Last Post: u974615
  slarm64 (unofficial slackware) Pinebook Pro RK3399 (aarch64) mara 38 23,175 08-26-2022, 09:38 AM
Last Post: mara
  No audio on Pinebook Pro with Fedora? foobar 1 192 08-22-2022, 12:12 PM
Last Post: snorwood
  pinebook pro not booting cricket 1 229 08-17-2022, 04:38 PM
Last Post: cricket
  Freenet on Pinebook pro regivanx 7 2,402 08-11-2022, 06:40 AM
Last Post: regivanx
  PineBook Pro seems to go to deep sleep, but doesn't wake up pogo 1 324 08-10-2022, 08:27 AM
Last Post: wdt
  pre-order pinebook pro justwantin 3 727 05-27-2022, 12:09 PM
Last Post: dachalife

Forum Jump:


Users browsing this thread: 1 Guest(s)