Comment 2 for bug 540801

The problem here is the graphics drivers; on your system they're taking longer to load than it takes to check and mount the filesystem - so there's no reason to start the splash screen, since we can already start X.

On HDD-based systems this is worse because we do the ureadahead phase before loading drivers; thus it can take a long time for a splash to appear.

One "solution" is to use the initramfs and start plymouth as a critical step:

  echo FRAMEBUFFER=y > /etc/initramfs-tools/conf.d/splash
  update-initramfs -u

But that introduces a significant delay into boot just to get the splash screen up for the rest of it