====== Ubuntu - GPU - AMD GPU - Troubleshooting - System will not boot ======
===== Problem =====
Booting the system freeze immediately. It may show:
/dev/nvme0n1p2: clean...
...recovering journal
but does not continue.
----
===== Likely reason for the issue =====
**NOTE:** There is a missing kernel module.
* Try to install the missing kernel modules.
----
===== Fix =====
- Force power off.
- Wait 10 seconds
- Restart.
- Continually press and release **shift** button.
- This should display the Grub menu.
- Select the latest **Recovery** kernel to boot.
- This should display a list of options.
- Select **Root**.
- Press **** to get into a shell.
----
==== Add Kisak (optional) ====
sudo add-apt-respository ppa:kisak/kisak-mesa
sudo apt update
sudo apt upgrade
**NOTE:** This will install the latest **stable** MESA-driver.
* See: https://launchpad.net/~kisak/+archive/ubuntu/kisak-mesa
----
=== Force the use of the Kisak resposity for MESA ===
sudo vi /etc/apt/preferences.d/kisak-pin-2000
and populate with:
Package: *
Pin: release o=LP-PPA-kisak-kisak-mesa
Pin-Priority: 2000
and update again:
sudo apt update
sudo apt upgrade
----
===== Download the latest firmware =====
mkdir /home/peter/amdgpu
cd /home/peter/amdgpu
git clone https://git.kernel.org/pub/scm/linux//kernel/git/firmware/linux-firmware.git
**NOTE:** The **/home/peter/amdgpu** directory here is just a temporary directory.
* The **git** command will download the firmware into a sub-directory named **linux-firmware** within the **/home/peter/amdgpu** directory.
* If **git** command does not work, download the newest tar.gz file manually from https://git.kernel.org/pub/scm/linux//kernel/git/firmware/linux-firmware.git
----
===== Backup the existing firmware directory =====
mkdir bak
sudo cp -R /lib/firmware/amdgpu bak
**NOTE:** This backup can be used, just in case this is needed.
----
===== Place the latest firmware into the firmware directory =====
sudo cp linux-firmware/amdgpu/* /lib/firmware/amdgpu
**NOTE:** This will copy the amdgpu drivers from **/home/peter/amdgpu/linux-firmware** directory, to **/lib/firmware/amdgpu**.
----
===== Rebuild the initramfs =====
sudo update-initramfs -c -k $(uname -r)
----
===== Reboot =====
sudo shutdown -r now
----
===== Housekeeping (Optional) =====
Remove the temporary directories that were created for this fix.
sudo rm -Rf /home/peter/amdgpu
----
===== References =====
https://git.kernel.org/pub/scm/linux//kernel/git/firmware/linux-firmware.git
https://launchpad.net/~kisak/+archive/ubuntu/kisak-mesa