Color cyling when booting

Hello All,

I’m having an issue with opensuse not properly booting into the desktop. I’ll try to give as many details as I can. First my system:

Macbook Pro 5.5 (Summer 2009). This is an intel core 2 duo, 4 GB of ram and a geforce 9400M.

I prepared the computer by using bootcamp to resize my hard disk (640GB WDC) and add a partition. I booted into the installer without any issues, apart from having no mouse support. I deleted the partition boot camp had created and added 3 partitions, 1 root parition, 1 home partition and swap. The rest of the installation process went well and I was soon greeted by the opensuse gnome desktop.

I proceeded to install the wireless drivers for my broadcom BCM4322. I tried both from source and from the Packman repository, and it seemed like it didn’t work. This was because I could not remove the ssb module for the kernel due to it being used by ohci_hcd (I believe). I wrote a simple script that would unload those modules, load the “wl” module, and then load the other modules. This worked, and I had wireless.

I proceeded to install the Nvidia proprietary drivers, making sure to set the proper options for the bootloader and kernel. This also worked.

After installing a bunch of other software (eagle, notify-osd, grooveshark, vmware workstation), I was able to use my system without any problems until last night. At that point I updated my system after a prompt for updates by opensuse, and now I can’t boot into the desktop anymore.

At the point when gdm/Xorg is started, where I would regularly see the nvidia logo. Now all I get is a series of colored screens. These cycle from black, to white, to red, green, blue. I also get a bunch of grayscale gradients. However, no desktop.

I have attempted several things to rectify this problem, some of them with limited success:

  • obviously nomodeset was set, and the nouveau driver blacklist, unless this was changed by the update
  • failsafe mode -> this worked, but I don’t want to run in failsafe.
  • restoring the xorg.conf.install to xorg.conf -> this had a similar result to failsafe
  • generating a new Xorg conf, using Xorg -configure -> failure
  • generating a new Xorg conf using nvidia-configure -> failure
  • manually editing to use the nouveau driver -> failure (it just occurred to me that I didn’t remove the nomodeset option, so this would probably fail).
  • installing the nvidia driver from the repositories -> failure
  • removing the nvidia driver using the package from nvidia, and then installing again -> failure
  • When I tried to use the nouveau driver, X could not start, complaining about “no such device” and gdm would say “no screens found”, if i recall correctly. -> failure
  • at some point, the nvidia driver would complain about a “corrupt edid”. I figured I would use xrandr to elicit the proper video modes and manually set this. However, xrandr complained with “no screens found”. -> failure
  • also, nscd would not start

That pretty much sums it up. Can anybody shed any light on what is happening here?



PS: I hope this is the right section, i wasn’t sure whether this should be in hardware, because I’m not sure if this is a hardware issue and it occurs at boot.

Update: After trying the fix the problem - I did a fresh install of opensuse 11.3. I ran into the exact same problem, so I’m sticking to the nouveau driver until I can figure out what is going on.

Just to close this thread, I found the issue. It turns out that nvidia driver reported the EDID was corrupt, and was therefore defaulting 75DPI & 640x480 resolution. I added the option to ignore the EDID checksum in my xorg.conf, and set the resolution to the default for this monitor. This solved the issue.