mirror of
https://github.com/torvalds/linux.git
synced 2024-11-12 07:01:57 +00:00
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:
commit
1c3d770043
@ -100,4 +100,5 @@ Description:
|
|||||||
|
|
||||||
Users: libraw1394
|
Users: libraw1394
|
||||||
libdc1394
|
libdc1394
|
||||||
tools like jujuutils, fwhack, ...
|
libhinawa
|
||||||
|
tools like linux-firewire-utils, fwhack, ...
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user