From Fedora Project Wiki
(WIP: Create the page.)
 
(Add more information about patched packages.)
 
Line 8: Line 8:
 
== Kernel ==
 
== Kernel ==
  
The kernel in use is developed and maintained by megous. You can find the git repo [https://megous.com/git/linux/log/?h=pp-5.12|here]. ''Megous develops this kernel specifically for the PinePhone!''
+
The kernel in use is developed and maintained by megous. You can find the git repo [https://megous.com/git/linux/log/?h=pp-5.12 here]. ''Megous develops this kernel specifically for the PinePhone!''
  
 
'''Why is this needed?'''
 
'''Why is this needed?'''
Line 24: Line 24:
  
 
== devicetree ==
 
== devicetree ==
 +
 +
The devicetree is a structure that the bootloader (u-boot) and the kernel read to gather information about the hardware on the system. It is a hierarchical, tree-like structure, where every hardware component is represented by a node. Nodes exist for every CPU core on a system, UART/I2C/SPI peripherals, RAM, Bluetooth/Wifi etc.
 +
 +
The kernel uses information from the devicetree to load appropriate kernel drivers for the hardware it is running on.
 +
 +
'''What do the patches do?'''
 +
 +
The patches in here closely correlate to the patches made in the kernel (see above), as the devicetrees are maintained as part of the kernel code. If you're interested in the changes performed here, have a look at megous repository.
  
  

Latest revision as of 07:30, 18 April 2021

Patched Applications/Packages for Mobile Devices

This page attempts to give an overview of all the applications and packages that are part of the images and haven't been upstreamed yet. If you're looking for a way to contribute to the project, you can try and help us by getting the changes upstreamed.

You will find all packages mentioned here in the COPR.


Kernel

The kernel in use is developed and maintained by megous. You can find the git repo here. Megous develops this kernel specifically for the PinePhone!

Why is this needed?

The vanilla kernel doesn't support some features such as:

  • Power Management for various components
  • Audio routing for the Modem and Bluetooth
  • Display out via USB-C
  • The wifi chip in the Pinephone (Realtek rtl8723cs)
  • And possibly much more...

Here's an overview of megous patches (in the <version>/patches directory).


devicetree

The devicetree is a structure that the bootloader (u-boot) and the kernel read to gather information about the hardware on the system. It is a hierarchical, tree-like structure, where every hardware component is represented by a node. Nodes exist for every CPU core on a system, UART/I2C/SPI peripherals, RAM, Bluetooth/Wifi etc.

The kernel uses information from the devicetree to load appropriate kernel drivers for the hardware it is running on.

What do the patches do?

The patches in here closely correlate to the patches made in the kernel (see above), as the devicetrees are maintained as part of the kernel code. If you're interested in the changes performed here, have a look at megous repository.


wlroots

Wlroots is a compositor for Wayland. It implements a lot of interfaces to work with Wayland and all of its components.

What do the patches do?

The patch fixes a "side-effect" in the current implementation of phosh (see below). Phosh violates the layer-shell protocol, which wlroots versions >= 0.12 don't allow. In practice this means that if you run phosh with an unpatched wlroots >= 0.12, phosh will crash immediately and not start at all. See this issue for further information.


phosh

chatty

eg25-manager

uboot