SATA Devices not showing up when in UEFI mode

I'm trying to install Windows and the bios should be set to UEFI mode. The problem is that all SATA devices aren't showing up (shows as if there aren't any) so I can't boot from the installation CD (it's just not there).

The weird thing is that when set to LEGACY mode they all show up..

SATA mode is set to AHCI and I'm on Lenovo Y510P. I have a Linux OS installed that is accessible only when BIOS is in LEGACY mode (otherwise the hard drive it's on is not available)

I also tried reseting the BIOS settings which didn't help..

Comment please if more details needed

Extra details:

  • Computer model: Lenovo IdeaPad Y510P (not overcloacked)
  • Installed Linux OS version: Linux 3.7-trunk-amd64 x86_64
  • Trying to install Windows: Windows 7 Ultimate 64bit
  • BIOS Information:
    • Vendor: LENOVO
    • Version: 74CN26WW(V1.07)

Update:

Using user1608638 answer and suggestion of using the USB flash drive as the boot device instead of the CD/DVD method I succeeded in installing Windows 7! (Thanks alot user1608638)


Solution 1:

I wonder, is the windows image efi bootable? If the image is not efi bootable you can only boot it using legacy. This goes at least for USBs, and I would assume it does the same with CDs. You can check this by seeing if the file 'BOOTX64.EFI' via the path \EFI\BOOT\ is available on the CD.

Also, is it a must for you to install it with this CD? If not, you could try install windows by using a bootable USB, to make sure that the drive is GPT. If you already have a windows machine and a USB device available you can simply use a windows ISO, and use the program rufus to create a bootable usb. Otherwise, maybe this can be of any help?

Solution 2:

When booting the Windows 7 installation DVD you get the message :
"Windows cannot be installed to this disk. The selected disk is of the GPT partition style."

So the disk is already GPT (why if it's only 1TB?).
However, installing Windows 7 64-bit on GPT can only be done in UEFI mode.

Conclusion: Either your Windows 7 DVD isn't 64-bit or your BIOS doesn't support UEFI well-enough.

What you can do is :

  1. Verify that the Windows 7 installation DVD is the latest 64-bit version with SP1 and try again.
    Delete all existing partitions, create a new one and format it.
  2. Convert the disk to MBR using Linux. See the article
    How to Convert a GPT disk layout to a MS-DOS/MBR layout without data loss.

You might be able to convert the disk to MBR from the Windows 7 installation disk:

Method 1 (non-destructive in theory)

  1. Boot up to installation DVD/CD.
  2. Click install but don't follow through.
  3. Press SHIFT-F10 to bring up console.
  4. Type "diskpart"
  5. Once inside diskpart type:
    -> list disk (find the one you want to convert)
    -> select disk 0 (select the one you want from the list)
    -> convert mbr (should take a second or two)
    -> quit
  6. Continue with install

Method 2 (destructive)

  1. Boot up to installation DVD/CD.
  2. Click install but don't follow through.
  3. Press SHIFT-F10 to bring up console.
  4. Type "diskpart"
  5. Once inside diskpart type:
    -> list disk (find the one you want to convert)
    -> select disk 0 (select the one you want from the list)
    -> clean (wait an hour or so until done)
    -> quit
  6. Continue with install

Method 3 : GParted (destructive)

  1. Launch GParted on the disk.
  2. If any partitions are mounted (as indicated by a lock or key icon), unmount them.
  3. Select Device -> Create Partition Table.
  4. Click Apply.
    The disk should now use MBR. Do not create partitions within GParted, do this instead with the Windows installer.

Just remember that any such manipulation can destroy the data on the disk.

Solution 3:

Try changing the SATA devices (or just the optical drive) from AHCI mode to whatever legacy/compatibility mode is available there, leaving the BIOS in UEFI mode and see if that changes anything.

Solution 4:

Change your SATA to ACHI in BIOS. That did the trick for me.