Skip to content

Commit

Permalink
ptp: tilegx: convert to the 64 bit get/set time methods.
Browse files Browse the repository at this point in the history
This driver is 64 bit only, and so this driver and device are ready
for 2038.  This patch changes the driver to the new PHC and also
carries the timespec64 parameter on out to the gxio_mpipe_get-
set_timestamp functions, making explicit the fact that the tv_sec
field is 64 bits wide.

Not even compile tested.

Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Acked-by: Chris Metcalf <cmetcalf@ezchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Richard Cochran authored and David S. Miller committed Mar 31, 2015
1 parent a5c79c2 commit b9acf24
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 8 deletions.
4 changes: 2 additions & 2 deletions arch/tile/gxio/mpipe.c
Original file line number Diff line number Diff line change
Expand Up @@ -456,7 +456,7 @@ int gxio_mpipe_equeue_init(gxio_mpipe_equeue_t *equeue,
EXPORT_SYMBOL_GPL(gxio_mpipe_equeue_init);

int gxio_mpipe_set_timestamp(gxio_mpipe_context_t *context,
const struct timespec *ts)
const struct timespec64 *ts)
{
cycles_t cycles = get_cycles();
return gxio_mpipe_set_timestamp_aux(context, (uint64_t)ts->tv_sec,
Expand All @@ -466,7 +466,7 @@ int gxio_mpipe_set_timestamp(gxio_mpipe_context_t *context,
EXPORT_SYMBOL_GPL(gxio_mpipe_set_timestamp);

int gxio_mpipe_get_timestamp(gxio_mpipe_context_t *context,
struct timespec *ts)
struct timespec64 *ts)
{
int ret;
cycles_t cycles_prev, cycles_now, clock_rate;
Expand Down
4 changes: 2 additions & 2 deletions arch/tile/include/gxio/mpipe.h
Original file line number Diff line number Diff line change
Expand Up @@ -1830,7 +1830,7 @@ extern int gxio_mpipe_link_set_attr(gxio_mpipe_link_t *link, uint32_t attr,
* code.
*/
extern int gxio_mpipe_get_timestamp(gxio_mpipe_context_t *context,
struct timespec *ts);
struct timespec64 *ts);

/* Set the timestamp of mPIPE.
*
Expand All @@ -1840,7 +1840,7 @@ extern int gxio_mpipe_get_timestamp(gxio_mpipe_context_t *context,
* code.
*/
extern int gxio_mpipe_set_timestamp(gxio_mpipe_context_t *context,
const struct timespec *ts);
const struct timespec64 *ts);

/* Adjust the timestamp of mPIPE.
*
Expand Down
9 changes: 5 additions & 4 deletions drivers/net/ethernet/tile/tilegx.c
Original file line number Diff line number Diff line change
Expand Up @@ -838,7 +838,8 @@ static int ptp_mpipe_adjtime(struct ptp_clock_info *ptp, s64 delta)
return ret;
}

static int ptp_mpipe_gettime(struct ptp_clock_info *ptp, struct timespec *ts)
static int ptp_mpipe_gettime(struct ptp_clock_info *ptp,
struct timespec64 *ts)
{
int ret = 0;
struct mpipe_data *md = container_of(ptp, struct mpipe_data, caps);
Expand All @@ -850,7 +851,7 @@ static int ptp_mpipe_gettime(struct ptp_clock_info *ptp, struct timespec *ts)
}

static int ptp_mpipe_settime(struct ptp_clock_info *ptp,
const struct timespec *ts)
const struct timespec64 *ts)
{
int ret = 0;
struct mpipe_data *md = container_of(ptp, struct mpipe_data, caps);
Expand All @@ -876,8 +877,8 @@ static struct ptp_clock_info ptp_mpipe_caps = {
.pps = 0,
.adjfreq = ptp_mpipe_adjfreq,
.adjtime = ptp_mpipe_adjtime,
.gettime = ptp_mpipe_gettime,
.settime = ptp_mpipe_settime,
.gettime64 = ptp_mpipe_gettime,
.settime64 = ptp_mpipe_settime,
.enable = ptp_mpipe_enable,
};

Expand Down

0 comments on commit b9acf24

Please sign in to comment.