diff options
author | Allen Hubbe <Allen.Hubbe@emc.com> | 2016-03-21 04:53:14 -0400 |
---|---|---|
committer | Jon Mason <jdmason@kudzu.us> | 2016-03-26 11:44:33 -0400 |
commit | 4f1b50c3e3082b31c94cee2b897bd9f5d0f3e7c8 (patch) | |
tree | 5dcb8b81088f918e74bc58a2a92e80564be6d227 | |
parent | afc54992296a5e7f7d2e41456ed90789b01a4e7b (diff) |
NTB: Remove _addr functions from ntb_hw_amd
Kernel zero day testing warned about address space confusion. A virtual
iomem address was used where a physical address is expected. The
offending functions implement an optional part of the api, so they are
removed. They can be added later, after testing.
Fixes: a1b3695820aa490e58915d720a1438069813008b
Signed-off-by: Allen Hubbe <Allen.Hubbe@emc.com>
Acked-by: Xiangliang Yu <Xiangliang.Yu@amd.com>
Signed-off-by: Jon Mason <jdmason@kudzu.us>
-rw-r--r-- | drivers/ntb/hw/amd/ntb_hw_amd.c | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/drivers/ntb/hw/amd/ntb_hw_amd.c b/drivers/ntb/hw/amd/ntb_hw_amd.c index 588803ad6847..6ccba0d862df 100644 --- a/drivers/ntb/hw/amd/ntb_hw_amd.c +++ b/drivers/ntb/hw/amd/ntb_hw_amd.c | |||
@@ -357,20 +357,6 @@ static int amd_ntb_db_clear_mask(struct ntb_dev *ntb, u64 db_bits) | |||
357 | return 0; | 357 | return 0; |
358 | } | 358 | } |
359 | 359 | ||
360 | static int amd_ntb_peer_db_addr(struct ntb_dev *ntb, | ||
361 | phys_addr_t *db_addr, | ||
362 | resource_size_t *db_size) | ||
363 | { | ||
364 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); | ||
365 | |||
366 | if (db_addr) | ||
367 | *db_addr = (phys_addr_t)(ndev->peer_mmio + AMD_DBREQ_OFFSET); | ||
368 | if (db_size) | ||
369 | *db_size = sizeof(u32); | ||
370 | |||
371 | return 0; | ||
372 | } | ||
373 | |||
374 | static int amd_ntb_peer_db_set(struct ntb_dev *ntb, u64 db_bits) | 360 | static int amd_ntb_peer_db_set(struct ntb_dev *ntb, u64 db_bits) |
375 | { | 361 | { |
376 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); | 362 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); |
@@ -415,20 +401,6 @@ static int amd_ntb_spad_write(struct ntb_dev *ntb, | |||
415 | return 0; | 401 | return 0; |
416 | } | 402 | } |
417 | 403 | ||
418 | static int amd_ntb_peer_spad_addr(struct ntb_dev *ntb, int idx, | ||
419 | phys_addr_t *spad_addr) | ||
420 | { | ||
421 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); | ||
422 | |||
423 | if (idx < 0 || idx >= ndev->spad_count) | ||
424 | return -EINVAL; | ||
425 | |||
426 | if (spad_addr) | ||
427 | *spad_addr = (phys_addr_t)(ndev->self_mmio + AMD_SPAD_OFFSET + | ||
428 | ndev->peer_spad + (idx << 2)); | ||
429 | return 0; | ||
430 | } | ||
431 | |||
432 | static u32 amd_ntb_peer_spad_read(struct ntb_dev *ntb, int idx) | 404 | static u32 amd_ntb_peer_spad_read(struct ntb_dev *ntb, int idx) |
433 | { | 405 | { |
434 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); | 406 | struct amd_ntb_dev *ndev = ntb_ndev(ntb); |
@@ -472,12 +444,10 @@ static const struct ntb_dev_ops amd_ntb_ops = { | |||
472 | .db_clear = amd_ntb_db_clear, | 444 | .db_clear = amd_ntb_db_clear, |
473 | .db_set_mask = amd_ntb_db_set_mask, | 445 | .db_set_mask = amd_ntb_db_set_mask, |
474 | .db_clear_mask = amd_ntb_db_clear_mask, | 446 | .db_clear_mask = amd_ntb_db_clear_mask, |
475 | .peer_db_addr = amd_ntb_peer_db_addr, | ||
476 | .peer_db_set = amd_ntb_peer_db_set, | 447 | .peer_db_set = amd_ntb_peer_db_set, |
477 | .spad_count = amd_ntb_spad_count, | 448 | .spad_count = amd_ntb_spad_count, |
478 | .spad_read = amd_ntb_spad_read, | 449 | .spad_read = amd_ntb_spad_read, |
479 | .spad_write = amd_ntb_spad_write, | 450 | .spad_write = amd_ntb_spad_write, |
480 | .peer_spad_addr = amd_ntb_peer_spad_addr, | ||
481 | .peer_spad_read = amd_ntb_peer_spad_read, | 451 | .peer_spad_read = amd_ntb_peer_spad_read, |
482 | .peer_spad_write = amd_ntb_peer_spad_write, | 452 | .peer_spad_write = amd_ntb_peer_spad_write, |
483 | }; | 453 | }; |