Most of the startx delay problems we have found are caused by incorrect data in video BIOSes about what display devices are possibly connected or what i2c port should be used for detection. You can work around these problems with the X config option "IgnoreDisplayDevices"
Please see the article titled "Linux - Configuration options" for more details.