IEEE 1394 subsystem patches:

- move away from outmoded timekeeping API,
   - error reporting fix,
   - documentation bits.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJW7DfWAAoJEHnzb7JUXXnQMOQP/3WiFbsbhfnVTiReAaZIS4Ah
 6b6QManzhlTULQAqL3Zvs175NAju3pfrVgmQbM/0osfffWwtdLW412UXfPxv8LK3
 8Xdk5htDlw9b603hZVkHPWmAgx65m3YHfIYzzNVNrk1J3x77AHN06U5tcl/Jpmj4
 jb4DTrc8CBYIupGAN8CiWch4xRpzL6h9aomsbz4y8ZiMMR4XZ5fTUZ8M62mRGK01
 0RWKa84MnXSAcW88y0PapizO16+QeD+4jq7gDtlkCyZ0N4qQAlynZFoU3WH/AA6K
 9P3xgi/PhPQ5rn7GJx/CRV+P7dnkRdKR9jsKd2wm4w6iJrJ8vHSUdhcedxwdZOfS
 pvjyQaFgsCHF4jknnrj0rRVAdw2oe/u4Hlpx7LVpZGg+hCfyuY5hSjJ8nMYMvCaz
 SnSLW9n3gQzzazOejWq+atBsDX01ZZko9FE1YNSgqq89Dwk2K94qUO6ipiFnh/3d
 kUSj0ST7q+rIACG8hFDDZHY+FDG0wJYoIabijHpjD2pmg3ySVWcRvp9b1vDaBzX9
 JCMElZ7szxUbeqDX+Jjs34tN9ClNPOVQgHO9e1X4qzKJlduIy+MDfvGmIqanToDv
 E4cm5ujhb7fPTgiTyltVlBnRmseuVwoTYuKh+ouG/Gve6XQg6XgsyGn1TSd7WVms
 2q8vkOk3Zj7OqUqWtE8H
 =bGZr
 -----END PGP SIGNATURE-----

Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394

Pull firewire updates from Stefan Richter:
 "IEEE 1394 subsystem patches:

   - move away from outmoded timekeeping API
   - error reporting fix
   - documentation bits"

* tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
  firewire: ABI documentation: libhinawa uses firewire-cdev
  firewire: ABI documentation: jujuutils were renamed to linux-firewire-utils
  firewire: ohci: propagate return code from soft_reset to probe and resume
  firewire: nosy: Replace timeval with timespec64
This commit is contained in:
Linus Torvalds 2016-03-19 19:21:24 -07:00
commit 1c3d770043
3 changed files with 11 additions and 7 deletions

View File

@ -100,4 +100,5 @@ Description:
Users: libraw1394 Users: libraw1394
libdc1394 libdc1394
tools like jujuutils, fwhack, ... libhinawa
tools like linux-firewire-utils, fwhack, ...

View File

@ -33,6 +33,7 @@
#include <linux/sched.h> /* required for linux/wait.h */ #include <linux/sched.h> /* required for linux/wait.h */
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/time64.h>
#include <linux/timex.h> #include <linux/timex.h>
#include <linux/uaccess.h> #include <linux/uaccess.h>
#include <linux/wait.h> #include <linux/wait.h>
@ -413,17 +414,18 @@ static void
packet_irq_handler(struct pcilynx *lynx) packet_irq_handler(struct pcilynx *lynx)
{ {
struct client *client; struct client *client;
u32 tcode_mask, tcode; u32 tcode_mask, tcode, timestamp;
size_t length; size_t length;
struct timeval tv; struct timespec64 ts64;
/* FIXME: Also report rcv_speed. */ /* FIXME: Also report rcv_speed. */
length = __le32_to_cpu(lynx->rcv_pcl->pcl_status) & 0x00001fff; length = __le32_to_cpu(lynx->rcv_pcl->pcl_status) & 0x00001fff;
tcode = __le32_to_cpu(lynx->rcv_buffer[1]) >> 4 & 0xf; tcode = __le32_to_cpu(lynx->rcv_buffer[1]) >> 4 & 0xf;
do_gettimeofday(&tv); ktime_get_real_ts64(&ts64);
lynx->rcv_buffer[0] = (__force __le32)tv.tv_usec; timestamp = ts64.tv_nsec / NSEC_PER_USEC;
lynx->rcv_buffer[0] = (__force __le32)timestamp;
if (length == PHY_PACKET_SIZE) if (length == PHY_PACKET_SIZE)
tcode_mask = 1 << TCODE_PHY_PACKET; tcode_mask = 1 << TCODE_PHY_PACKET;

View File

@ -2278,9 +2278,10 @@ static int ohci_enable(struct fw_card *card,
u32 lps, version, irqs; u32 lps, version, irqs;
int i, ret; int i, ret;
if (software_reset(ohci)) { ret = software_reset(ohci);
if (ret < 0) {
ohci_err(ohci, "failed to reset ohci card\n"); ohci_err(ohci, "failed to reset ohci card\n");
return -EBUSY; return ret;
} }
/* /*