Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

generate-xorg-conf.sh generates broken xorg.conf #44

Closed
jgroenveld opened this issue Nov 27, 2018 · 3 comments
Closed

generate-xorg-conf.sh generates broken xorg.conf #44

jgroenveld opened this issue Nov 27, 2018 · 3 comments

Comments

Labels
None yet
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
@jgroenveld
Copy link

@jgroenveld jgroenveld commented Nov 27, 2018

There's a couple bugs with trident-core-201811161350 in the generated xorg.conf :
1. It selects the VESA vice modesetting due to the ancient host firmware only supporting 
BIOS mode.

*** /root/detect-best-driver.sh.trident Tue Nov 27 10:41:54 2018
--- /usr/local/share/trident/scripts/detect-best-driver.sh      Tue Nov 27 10:40:38 2018
***************
*** 29,35 ****
    if [ "${efi}" = "UEFI" ] ; then
      driver="modesetting intel"
    else
!     driver="intel"
    fi
  
  elif [ "${vendor_detected}" = "nvidia" ] ; then
--- 29,35 ----
    if [ "${efi}" = "UEFI" ] ; then
      driver="modesetting intel"
    else
!     driver="modesetting intel"
    fi
  
  elif [ "${vendor_detected}" = "nvidia" ] ; then


2. The Optimus detection selects nVidia vice the Intel VGA device due to the above driver detection
routine assuming modesetting only working with EFI.

John
groenveld@acm.org

xorg.conf.corrected.txt
xorg.conf.generated.txt
pciconf.txt
dmidecode.txt
devinfo.txt

@beanpole135
Copy link
Member

@beanpole135 beanpole135 commented Jan 17, 2019

The requested change is basically asking for the modesetting driver to be automatically used for non-UEFI systems.
I am 90% sure that either the modesetting driver or the drm-current-kmod package specifically states that it should only be used on UEFI systems in order to leverage the KMS hooks.

@jgroenveld
Copy link
Author

@jgroenveld jgroenveld commented Jan 18, 2019

This particular Optimus laptop is ancient.
dmidecode shows 2012.
# dmidecode 3.2
Scanning /dev/mem for entry point.
SMBIOS 2.7 present.
33 structures occupying 2109 bytes.
Table at 0xC9EC2018.

Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
        Vendor: American Megatrends Inc.
        Version: 4.6.5
        Release Date: 05/16/2012
        Address: 0xF0000
        Runtime Size: 64 kB
        ROM Size: 4096 kB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                BIOS ROM is socketed
                EDD is supported
                5.25"/1.2 MB floppy services are supported (int 13h)
                3.5"/720 kB floppy services are supported (int 13h)
                3.5"/2.88 MB floppy services are supported (int 13h)
                Print screen service is supported (int 5h)
                8042 keyboard services are supported (int 9h)
                Serial services are supported (int 14h)
                Printer services are supported (int 17h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 4.6

UEFI may be supported, but I'll be damned if I can find a BIOS menu option to enable it.
Garbage firmware makes garbage OS!
So long as trident_init respects my /etc/X11/xorg.conf, I'm inclined to close.
Suggest waiting to see if others stumble with similar vintage hardware.
John
groenveld@acm.org

@beanpole135
Copy link
Member

@beanpole135 beanpole135 commented Jan 18, 2019

Fixed with aef483f
I added the modetting driver to BIOS-boot systems, but have a failover system in place to use the vesa or scfb driver in case the modesetting driver fails when starting up X11.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment