I hope that this post can save someone else the hours, days, weeks that I spent troubleshooting this stupid issue which I haven’t seemed to see anyone posting about much.
I had this issue, currently on Mint 22.3, started this troubleshooting saga on Mint 22.2 and got a temporary fix from overwriting with 22.1 and upgrading so I kept the old kernel, but I wanted a more robust solution. I’d get the mint logo, then it’d go black and wouldn’t come back up. Screen on, but black, and I’d have to hold the power button at which point there’d be a bunch of unhelpful terminal messages for a split second before shutting off.
All I had to do to fix it was remove “splash” from the grub Linux arguments. To do this, use sudo nano /etc/default/grub or vi or whatever text editor you prefer, go to the line GRUB_CMDLINE_LINUX_DEFAULT=, likely has quiet splash following that, just delete splash, save and exit the file, then enter sudo update-grub in the terminal.
All I had to do to figure this out was waste hours of my life over weeks troubleshooting everything unrelated. Seems to be something related to the Xe driver compared to i915 (older intel graphics driver), so forcing it to use i915 made it work, but I wanted to use Xe for improved performance and fixing some compatibility, so my grub cmdline looks like GRUB_CMDLINE_LINUX_DEFAULT=“quiet modprobe.blacklist=i915 xe.force_probe=7d55”, this lets you boot using Xe and not use i915, alongside removing splash. Tried with kernels 6.8.0-94, 6.11.0-29, 6.14.0-37, and 6.18.7-061807 (unsupported by mint, but used mainline to install it anyways in hopes it’d fix it. it didn’t.), and it remained consistent between them, this solution working consistently, other than 6.8 which I believe doesn’t support Xe drivers, and very clearly had broken graphics (but DID actually boot without a black screen).
Edit: Forgot to mention the most important part, in order to bypass the black screen to get on so you can make this permanent fix, press e while Mint is selected on Grub in order to change the boot arguments, and like above, delete splash from GRUB_CMDLINE_LINUX_DEFAULT=.