25 Jan, 2019

6 commits


10 Dec, 2018

1 commit


07 Dec, 2018

1 commit

  • Fix activation helper which would return -ETIMEDOUT even if the last
    retry attempt was successful.

    Also change the semantics of the retries variable so that it actually
    holds the number of retries (rather than tries).

    Fixes: d2efbbd18b1e ("gnss: add driver for sirfstar-based receivers")
    Cc: stable # 4.19
    Signed-off-by: Johan Hovold

    Johan Hovold
     

28 Nov, 2018

1 commit

  • Make the synchronous serdev_device_write() helper behave analogous to
    the asynchronous serdev_device_write_buf() by returning the number of
    bytes written (or rather buffered) also on timeout.

    This will allow drivers to distinguish the case where data was partially
    written from the case where no data was written.

    Also update the only two users that checked the return value.

    Signed-off-by: Johan Hovold
    Reviewed-by: Rob Herring
    Signed-off-by: Greg Kroah-Hartman

    Johan Hovold
     

15 Nov, 2018

1 commit

  • Passing a timeout of zero to the synchronous serdev_device_write()
    helper does currently not imply to wait forever (unlike passing zero to
    serdev_device_wait_until_sent()). Instead, if there's insufficient
    room in the write buffer, we'd end up with an incomplete write.

    Fixes: d2efbbd18b1e ("gnss: add driver for sirfstar-based receivers")
    Cc: stable # 4.19
    Signed-off-by: Johan Hovold

    Johan Hovold
     

28 Jun, 2018

2 commits

  • Add a "type" device attribute and a "GNSS_TYPE" uevent variable which
    can be used to determine the type of a GNSS receiver. The currently
    identified types reflect the protocol(s) supported by a receiver:

    "NMEA" NMEA 0183
    "SiRF" SiRF Binary
    "UBX" UBX

    Note that both SiRF and UBX type receivers typically support a subset of
    NMEA 0183 with vendor extensions (e.g. to allow switching to the vendor
    protocol).

    Signed-off-by: Johan Hovold
    Signed-off-by: Greg Kroah-Hartman

    Johan Hovold
     
  • Add driver for serial-connected SiRFstar-based GNSS receivers.

    These devices typically boot into hibernate mode from which they can be
    woken using a pulse on the ON_OFF input pin. Once active, a pulse on the
    same ON_OFF pin is used to put the device back into hibernate mode. The
    current state can be determined by sampling the WAKEUP output.

    Hardware configurations where WAKEUP has been connected to ON_OFF (and
    where an initial WAKEUP pulse during boot is sufficient to have the
    device boot into active mode) are also supported. In this case, device
    power is managed using the main-supply regulator only.

    Note that configurations where WAKEUP is left not connected, so that the
    device power state can only indirectly be determined using the I/O
    interface, is currently not supported. It should be fairly
    straight-forward to extend the current implementation with such support
    however (and this this is the main reason for not using the generic
    serial implementation for this driver).

    Note that timepulse-support is left unimplemented.

    Signed-off-by: Johan Hovold
    Signed-off-by: Greg Kroah-Hartman

    Johan Hovold