1. 06 Jul, 2012 2 commits
    • Dave Airlie's avatar
      xserver/config: add udev/drm hotplug callbacks. (v2) · b27cf309
      Dave Airlie authored
      This adds callbacks into the ddx for udev gpu hotplug.
      
      v2: fix some strncmp returns.
      Reviewed-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      b27cf309
    • Dave Airlie's avatar
      xfree86: use udev to provide device enumeration for kms devices (v10) · cf664713
      Dave Airlie authored
      On Linux in order for future hotplug work, we are required to interface
      to udev to detect device creation/removal. In order to try and get
      some earlier testing on this, this patch adds the ability to use
      udev for device enumeration on Linux.
      
      At startup the list of drm/kms devices is probed and this info is
      used to load drivers.
      
      A new driver probing method is introduced that passes the udev
      device info to the driver for probing.
      
      The probing integrates with the pci probing code and will fallback
      to the pci probe and old school probe functions in turn.
      
      The flags parameter to the probe function will be used later
      to provide hotplug and gpu screen flags for the driver to behave
      in a different way.
      
      This patch changes the driver ABI, all drivers should at least
      be set with a NULL udev probe function after this commit.
      
      v2: rename to platform bus, now with 100% less udev specific,
      
      this version passes config_odev_attribs around which are an array
      of id/string pairs, then the udev code can attach the set of attribs
      it understands, the OS specific code can attach its attrib, and then
      the core/drivers can lookup the required attribs.
      
      also add MATCH_PCI_DEVICES macro.
      
      This version is mainly to address concerns raised by ajax.
      
      v3: Address comments from Peter.
      fix whitespace that snuck in.
      rework to use a linked list with some core functions that
      xf86 wraps.
      
      v4: add free list, fix struct whitespace.
      ajax this address most of your issues?
      
      v5: drop probe ifdef, fix logic issue
      
      v6: some overhaul after more testing.
      
      Implement primaryBus for platform devices.
      document hotplug.h dev attribs - drop sysname attrib
      fix build with udev kms disabled
      make probing work like the PCI probe code,
         match against bus id if one exists, or primary device.
      
      RFC: add new bus id support "PLAT:syspath". we probably
      want to match on this a bit different, or use a different
      property maybe. I was mainly wanting this for use with
      specifying usb devices in xorg.conf directly, but PLAT:path
      could also work I suppose.
      
      v6.1: add missing noop platform function
      
      v7: fix two interactions with pci probing and slot claiming, prevents
      pci and platform trying to load two drivers for same slot.
      
      v8: test with zaphod mode on -ati driver, fixup resulting issue
      clean up common probe code into another function, change busid
      matching to allow dropping end of strings.
      
      v9: fix platform probing logic so it actually works.
      v9.1: fix pdev init to NULL properly.
      
      v10: address most of Keith's concerns.
      
      v4 was thanks to Reviewed-by: Adam Jackson <ajax@redhat.com>
      v5 was Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
      Reviewed-by: Keith Packard's avatarKeith Packard <keithp@keithp.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      cf664713
  2. 21 May, 2012 1 commit
  3. 21 Mar, 2012 1 commit
    • Keith Packard's avatar
      Introduce a consistent coding style · 9838b703
      Keith Packard authored
      This is strictly the application of the script 'x-indent-all.sh'
      from util/modular. Compared to the patch that Daniel posted in
      January, I've added a few indent flags:
      
      	-bap
      	-psl
      	-T PrivatePtr
      	-T pmWait
      	-T _XFUNCPROTOBEGIN
      	-T _XFUNCPROTOEND
      	-T _X_EXPORT
      
      The typedefs were needed to make the output of sdksyms.sh match the
      previous output, otherwise, the code is formatted badly enough that
      sdksyms.sh generates incorrect output.
      
      The generated code was compared with the previous version and found to
      be essentially identical -- "assert" line numbers and BUILD_TIME were
      the only differences found.
      
      The comparison was done with this script:
      
      dir1=$1
      dir2=$2
      
      for dir in $dir1 $dir2; do
      	(cd $dir && find . -name '*.o' | while read file; do
      		dir=`dirname $file`
      		base=`basename $file .o`
      		dump=$dir/$base.dump
      		objdump -d $file > $dump
      	done)
      done
      
      find $dir1 -name '*.dump' | while read dump; do
      	otherdump=`echo $dump | sed "s;$dir1;$dir2;"`
      	diff -u $dump $otherdump
      do...
      9838b703
  4. 03 Dec, 2008 1 commit
    • Paulo Cesar Pereira de Andrade's avatar
      Rework symbol visibility for easier maintenance · 49f77fff
      Paulo Cesar Pereira de Andrade authored
        Save in a few special cases, _X_EXPORT should not be used in C source
      files. Instead, it should be used in headers, and the proper C source
      include that header. Some special cases are symbols that need to be
      shared between modules, but not expected to be used by external drivers,
      and symbols that are accessible via LoaderSymbol/dlopen.
      
        This patch also adds conditionally some new sdk header files, depending
      on extensions enabled. These files were added to match pattern for
      other extensions/modules, that is, have the headers "deciding" symbol
      visibility in the sdk. These headers are:
      o Xext/panoramiXsrv.h, Xext/panoramiX.h
      o fbpict.h (unconditionally)
      o vidmodeproc.h
      o mioverlay.h (unconditionally, used only by xaa)
      o xfixes.h (unconditionally, symbols required by dri2)
      
        LoaderSymbol and similar functions now don't have different prototypes,
      in loaderProcs.h and xf86Module.h, so that both headers can be included,
      without the need of defining IN_LOADER.
      
        xf86NewInputDevice() device prototype readded to xf86Xinput.h, but
      not exported (and with a comment about it).
      49f77fff
  5. 31 Jul, 2007 3 commits
  6. 06 Dec, 2006 1 commit
  7. 21 Jul, 2006 1 commit
    • Daniel Stone's avatar
      add basic D-BUS configuration mechanism · 02a95311
      Daniel Stone authored
      Also move LookupDeviceIntRec into the DIX, and add InputOption type, and
      NewInputDeviceRequest prototype (DIX requests DDX to add a device).  Does not
      link without an implemented NIDR.
      02a95311