1. 26 Feb, 2016 5 commits
    • Vaibhav Hiremath's avatar
      greybus: arche-platform: Convert delayed work to do only hub3613 configuration · db5a3bca
      Vaibhav Hiremath authored
      This is preparation of interrupt handling support, where APB coldboot
      and wake/detect handling will be handled as response to wake/detect
      interrupt.
      Due to slower I2C write operations in HUB configuration, it is important
      to separate HUB configuration, and probably delay it after APB is
      cold booted.
      
      Note that delayed work will be scheduled from interrupt handler,
      in following patches.
      
      To satisfy build (and bisect), remove apb_cold_boot() fn, which will be
      added back in the patch where it gets used again.
      
      Testing Done: Tested on DB3.5 platform.
      Signed-off-by: default avatarVaibhav Hiremath <vaibhav.hiremath@linaro.org>
      Reviewed-by: default avatarMichael Scott <michael.scott@linaro.org>
      Tested-by: default avatarMichael Scott <michael.scott@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      db5a3bca
    • Vaibhav Hiremath's avatar
      greybus: arche-apb-ctrl: Remove extra delay in APB reset · 037a4028
      Vaibhav Hiremath authored
      With synchronization between SVC <=> AP over wake/detect line to
      bring APB's out of reset, we do not need any extra delays now.
      So remove it.
      
      Testing Done: Tested for DB3.5 and EVT1.2 platform.
      Signed-off-by: default avatarVaibhav Hiremath <vaibhav.hiremath@linaro.org>
      Reviewed-by: default avatarMichael Scott <michael.scott@linaro.org>
      Tested-by: default avatarMichael Scott <michael.scott@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      037a4028
    • Johan Hovold's avatar
      greybus: Documentation/sysfs: make 1-5 a 2x2 module · c8733c51
      Johan Hovold authored
      Make example module 1-5 a 2x2 module by adding a second, dummy
      interface.
      
      This is both an example of how a 2x2 module would be represented and
      also suggests what a dummy interface may look like.
      
      A 2x2 module has two child interface devices and a num_interfaces value
      of two.
      
      In this example, the secondary interface 1-5.6, is a dummy interface and
      therefore lacks the normal identifying attributes (e.g. UniPro DDBL1 and
      Ara ids). We may eventually add an interface_type attribute to
      facilitate distinguishing various interface types (there may be more
      than two).
      
      In the following tree, the bundle attributes and child devices have been
      left out:
      
      greybus1/
      ├── 1-2
      │   ├── 1-2.2
      │   │   ├── 1-2.2.1
      │   │   ├── 1-2.2.2
      │   │   ├── ddbl1_manufacturer_id
      │   │   ├── ddbl1_product_id
      │   │   ├── interface_id
      │   │   ├── product_id
      │   │   ├── serial_number
      │   │   ├── unique_id
      │   │   └── vendor_id
      │   ├── eject
      │   ├── module_id
      │   └── num_interfaces
      ├── 1-5
      │   ├── 1-5.5
      │   │   ├── 1-5.5.2
      │   │   ├── ddbl1_manufacturer_id
      │   │   ├── ddbl1_product_id
      │   │   ├── interface_id
      │   │   ├── product_id
      │   │   ├── serial_number
      │   │   ├── unique_id
      │   │   └── vendor_id
      │   ├── 1-5.6
      │   │   └── interface_id
      │   ├── eject
      │   ├── module_id
      │   └── num_interfaces
      └── 1-svc
      
      In this example there are two modules: 1-2 is a 1x2 module with one
      interface, and 1-5 is a 2x2 module with two interfaces of which the
      second (1-5.6) is a dummy interface.
      Signed-off-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
      Reviewed-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      c8733c51
    • Johan Hovold's avatar
      greybus: Documentation/sysfs: move module 1-4 to position 5 · bd93d2a8
      Johan Hovold authored
      Move example module 1-4 to position 5, effectively renaming it 1-5.
      Signed-off-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
      Reviewed-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      bd93d2a8
    • Johan Hovold's avatar
      greybus: Documentation/sysfs: add module devices · 8886c44f
      Johan Hovold authored
      Introduce module devices and rename interface and bundle devices.
      
      Greybus module devices correspond to physical modules and have one or
      more interfaces. Modules have an id that is identical to the id of their
      primary interface, which in turn is the interface with lowest numbered
      id. The module name is constructed from the bus and module id:
      
      	<bus_id>-<module_id>
      
      Interfaces and bundles are consequently renamed as
      
      	<bus_id>-<module_id>.<interface_id>
      
      and
      
      	<bus_id>-<module_id>.<interface_id>.<bundle_id>
      
      respectively.
      
      As before, interface ids (and therefore in a sense now also module ids)
      correspond to physical interface positions on the frame.
      
      Modules have the following attributes:
      
      	eject
      	module_id
      	num_interfaces
      
      where module_id is the id of the module and num_interface the number of
      interfaces the module has.
      
      Note that the interface ids of a module's interfaces are expected to be
      <module_id>, <module_id + 1>, ..., <module_id + num_interfaces - 1>.
      
      Writing a non-zero argument to eject cleanly shuts down and unregisters
      all of the module interfaces before ejecting the module.
      
      The example sysfs tree now looks as follows with the second bus
      (APBridgeA) left out:
      
      greybus1/
      ├── 1-2
      │   ├── 1-2.2
      │   │   ├── 1-2.2.1
      │   │   │   ├── bundle_class
      │   │   │   ├── bundle_id
      │   │   │   └── state
      │   │   ├── 1-2.2.2
      │   │   │   ├── bundle_class
      │   │   │   ├── bundle_id
      │   │   │   └── state
      │   │   ├── ddbl1_manufacturer_id
      │   │   ├── ddbl1_product_id
      │   │   ├── interface_id
      │   │   ├── product_id
      │   │   ├── serial_number
      │   │   ├── unique_id
      │   │   └── vendor_id
      │   ├── eject
      │   ├── module_id
      │   └── num_interfaces
      ├── 1-4
      │   ├── 1-4.4
      │   │   ├── 1-4.4.2
      │   │   │   ├── bundle_class
      │   │   │   ├── bundle_id
      │   │   │   ├── gpbridge0
      │   │   │   │   ├── gpio
      │   │   │   │   │   └── gpiochip490
      │   │   │   │   └── i2c-4
      │   │   │   └── state
      │   │   ├── ddbl1_manufacturer_id
      │   │   ├── ddbl1_product_id
      │   │   ├── interface_id
      │   │   ├── product_id
      │   │   ├── serial_number
      │   │   ├── unique_id
      │   │   └── vendor_id
      │   ├── eject
      │   ├── module_id
      │   └── num_interfaces
      └── 1-svc
          ├── ap_intf_id
          ├── eject
          └── endo_id
      
      where greybus1 is a bus; 1-svc the svc; 1-2, and 1-4 are modules; 1-2.2
      and 1-4.4 are (primary) interfaces; and 1-2.2.1, 1-2.2.2, and 1-4.4.2
      are bundles.
      
      Note that the svc eject attribute may eventually be renamed force_eject.
      Signed-off-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
      Reviewed-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
      8886c44f
  2. 25 Feb, 2016 10 commits
  3. 24 Feb, 2016 6 commits
  4. 23 Feb, 2016 2 commits
  5. 18 Feb, 2016 4 commits
  6. 17 Feb, 2016 7 commits
  7. 15 Feb, 2016 6 commits