diff options
author | stephen hemminger <shemminger@vyatta.com> | 2011-09-16 07:09:51 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-09-16 19:20:20 -0400 |
commit | d91d25d537af07ba71ed9751d5319daa8eee5066 (patch) | |
tree | 98e74416319a55d84de9c3401c63b7809926e18d /drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c | |
parent | 1d70cb06db4f8105997672378ae248f44c3a4379 (diff) |
bna: make function tables cont
To prevent malicious usage, all tables of pointers must be const.
Compile tested only.
Gleaned for PAX.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c')
-rw-r--r-- | drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c | 36 |
1 files changed, 15 insertions, 21 deletions
diff --git a/drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c b/drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c index b4429bc67c34..7d0d8ffc01bf 100644 --- a/drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c +++ b/drivers/net/ethernet/brocade/bna/bfa_ioc_ct.c | |||
@@ -49,21 +49,21 @@ static bool bfa_ioc_ct_sync_complete(struct bfa_ioc *ioc); | |||
49 | static enum bfa_status bfa_ioc_ct_pll_init(void __iomem *rb, | 49 | static enum bfa_status bfa_ioc_ct_pll_init(void __iomem *rb, |
50 | enum bfi_asic_mode asic_mode); | 50 | enum bfi_asic_mode asic_mode); |
51 | 51 | ||
52 | static struct bfa_ioc_hwif nw_hwif_ct; | 52 | static const struct bfa_ioc_hwif nw_hwif_ct = { |
53 | 53 | .ioc_pll_init = bfa_ioc_ct_pll_init, | |
54 | static void | 54 | .ioc_firmware_lock = bfa_ioc_ct_firmware_lock, |
55 | bfa_ioc_set_ctx_hwif(struct bfa_ioc *ioc, struct bfa_ioc_hwif *hwif) | 55 | .ioc_firmware_unlock = bfa_ioc_ct_firmware_unlock, |
56 | { | 56 | .ioc_reg_init = bfa_ioc_ct_reg_init, |
57 | hwif->ioc_firmware_lock = bfa_ioc_ct_firmware_lock; | 57 | .ioc_map_port = bfa_ioc_ct_map_port, |
58 | hwif->ioc_firmware_unlock = bfa_ioc_ct_firmware_unlock; | 58 | .ioc_isr_mode_set = bfa_ioc_ct_isr_mode_set, |
59 | hwif->ioc_notify_fail = bfa_ioc_ct_notify_fail; | 59 | .ioc_notify_fail = bfa_ioc_ct_notify_fail, |
60 | hwif->ioc_ownership_reset = bfa_ioc_ct_ownership_reset; | 60 | .ioc_ownership_reset = bfa_ioc_ct_ownership_reset, |
61 | hwif->ioc_sync_start = bfa_ioc_ct_sync_start; | 61 | .ioc_sync_start = bfa_ioc_ct_sync_start, |
62 | hwif->ioc_sync_join = bfa_ioc_ct_sync_join; | 62 | .ioc_sync_join = bfa_ioc_ct_sync_join, |
63 | hwif->ioc_sync_leave = bfa_ioc_ct_sync_leave; | 63 | .ioc_sync_leave = bfa_ioc_ct_sync_leave, |
64 | hwif->ioc_sync_ack = bfa_ioc_ct_sync_ack; | 64 | .ioc_sync_ack = bfa_ioc_ct_sync_ack, |
65 | hwif->ioc_sync_complete = bfa_ioc_ct_sync_complete; | 65 | .ioc_sync_complete = bfa_ioc_ct_sync_complete, |
66 | } | 66 | }; |
67 | 67 | ||
68 | /** | 68 | /** |
69 | * Called from bfa_ioc_attach() to map asic specific calls. | 69 | * Called from bfa_ioc_attach() to map asic specific calls. |
@@ -71,12 +71,6 @@ bfa_ioc_set_ctx_hwif(struct bfa_ioc *ioc, struct bfa_ioc_hwif *hwif) | |||
71 | void | 71 | void |
72 | bfa_nw_ioc_set_ct_hwif(struct bfa_ioc *ioc) | 72 | bfa_nw_ioc_set_ct_hwif(struct bfa_ioc *ioc) |
73 | { | 73 | { |
74 | bfa_ioc_set_ctx_hwif(ioc, &nw_hwif_ct); | ||
75 | |||
76 | nw_hwif_ct.ioc_pll_init = bfa_ioc_ct_pll_init; | ||
77 | nw_hwif_ct.ioc_reg_init = bfa_ioc_ct_reg_init; | ||
78 | nw_hwif_ct.ioc_map_port = bfa_ioc_ct_map_port; | ||
79 | nw_hwif_ct.ioc_isr_mode_set = bfa_ioc_ct_isr_mode_set; | ||
80 | ioc->ioc_hwif = &nw_hwif_ct; | 74 | ioc->ioc_hwif = &nw_hwif_ct; |
81 | } | 75 | } |
82 | 76 | ||