1. 11 May, 2020 4 commits
    • Christian Kellner's avatar
      boltctl: show the link speed, if available · fc530dcb
      Christian Kellner authored
      If the link speed contains non-zero values for lanes and speed
      show the details of rx and tx speed. Insert before authflags to
      to be sore that something is before us and something is after
      us so we don't need extra logic to know what tree element to
      insert ("branch" or "right").
      fc530dcb
    • Christian Kellner's avatar
      cli/device: expose LinkSpeed dbus property · baecba90
      Christian Kellner authored
      Expose the LinkSpeed dbus property as (linkspeed) including a
      getter method. Install the necessary custom wire conversion to
      convert the wire representation of BoltLinkSpeed to the struct.
      baecba90
    • Christian Kellner's avatar
      cli/proxy: ability to set custom wire conv · 1f383b21
      Christian Kellner authored
      As with BoltExported, add the ability to specify a custom wire
      conversion for a given property. Should be called directly after
      the D-Bus proxy is created, to make sure the handler is installed
      properly.
      1f383b21
    • Christian Kellner's avatar
      device: add LinkSpeed property · 4c2faef9
      Christian Kellner authored
      Expose the link speed of a device (see previous commits) as the
      "linkspeed" object and "LinkSpeed" dbus property. Install a
      custom wire conversion via the existing BoltConvToWire and
      BoltConvFromWire methods provided by BoltLinkSpeed, which will
      serialize the struct as "a{su}" on the bus.
      4c2faef9
  2. 06 May, 2020 9 commits
    • Christian Kellner's avatar
      test/wire: add basic checks for BoltLinkSpeed · e8c4f7b7
      Christian Kellner authored
      Add simple checks for the new BoltLinkSpeed struct and its methods.
      e8c4f7b7
    • Christian Kellner's avatar
      test/sysfs: checks for bolt_sysfs_info_for_device · 9e8f1eff
      Christian Kellner authored
      Add simple checks for bolt_sysfs_info_for_device including the new
      link speed attributes.
      9e8f1eff
    • Christian Kellner's avatar
      sysfs: support reading the link speed · f3edb88b
      Christian Kellner authored
      Add support for obtaining the link speed for a device via the
      existing bolt_sysfs_info_for_device function. If the 'full'
      argument is 'TRUE' the new 'linkspeed' member will contain
      information about the number lanes and speed of the lanes,
      if the corresponding sysfs attributes exist; otherwise they
      will be set to '0'.
      f3edb88b
    • Christian Kellner's avatar
      test/mock-sysfs: Support for link speed · 8e59388d
      Christian Kellner authored
      Add BoltLinkSpeed arguments to device_plug and device_add to be
      able to (optionally) specify the link speed for a device.
      8e59388d
    • Christian Kellner's avatar
      test/glue: replace BTLinkAttr with BoltLinkSpeed · 78fcc702
      Christian Kellner authored
      Instead of using a custom type that is basically a copy of the new
      BoltLinkspeed struct, use the latter instead.
      78fcc702
    • Christian Kellner's avatar
      common: introduce new BoltLinkSpeed struct · a8764282
      Christian Kellner authored
      Introduce a new BoltLinkSpeed struct that represents the speed of a
      link between two thunderbolt/usb4 devices in terms of lanes and the
      rate (speed) of the individual lane. See the previous commit for a
      description of lane bonding and transfer speeds. The BoltLinkSpeed
      struct is registered as a boxed type in the type system so it can
      be used as a GObject property. Wire conversion functions are also
      provided so it can be used in custom wire conversions and thus be
      used with BoltExported.
      a8764282
    • Christian Kellner's avatar
      names: add sysfs names for {rx,tx}_{lanes,speed} · 0b693c8a
      Christian Kellner authored
      Recent kernels, starting with commit[1], expose the speed and lanes
      of the link between a device and its upstream parent. Lane bonding
      itself was first supported by Falcon Ridge (2nd generation) chips.
      Current generations (3 and 4) support symmetric connections of up
      to 2 lanes and 20 Gb/s per lane. In the future asymmetric links
      might be possible.
      
      [1] 91c0c12080d0f40ee7275485221b06b4e1e289e1
      0b693c8a
    • Christian Kellner's avatar
      exported: ability to install custom wireconv · 6211af58
      Christian Kellner authored
      Add a new class method that allows to replace the automatically
      inferred WireConv for a property with a custom WireConv, by
      supplying custom BoltConvToWire and BoltConvFromWire methods.
      This is useful for anything where the automatic conversion
      would be wrong or no proper automatic conversion exists.
      6211af58
    • Christian Kellner's avatar
      glue: use glib-object include in public header · 530ab408
      Christian Kellner authored
      No need to include <gio/gio.h> from the public header.
      530ab408
  3. 04 May, 2020 5 commits
  4. 03 May, 2020 1 commit
  5. 04 Mar, 2020 21 commits