summaryrefslogtreecommitdiffstats
path: root/drivers/block/rsxx/rsxx_priv.h
diff options
context:
space:
mode:
authorPhilip J Kelleher <pjk1939@linux.vnet.ibm.com>2013-02-18 21:35:59 +0100
committerJens Axboe <axboe@kernel.dk>2013-02-18 21:35:59 +0100
commitc206c70924737db6836382c09ad2dacd04bb6204 (patch)
tree31a9ebc3e0998f19db1537d45617ad13363dcef5 /drivers/block/rsxx/rsxx_priv.h
parentec8edc764efa51e5acf9193a8846a5a99399ceb8 (diff)
downloadtalos-obmc-linux-c206c70924737db6836382c09ad2dacd04bb6204.tar.gz
talos-obmc-linux-c206c70924737db6836382c09ad2dacd04bb6204.zip
block: IBM RamSan 70/80 driver fixes
This patch includes the following driver fixes for the IBM RamSan 70/80 driver: o Changed the creg_ctrl lock from a mutex to a spinlock. o Added a count check for ioctl calls. o Removed unnecessary casting of void pointers. o Made every function static that needed to be. o Added comments to explain things more thoroughly. Signed-off-by: Philip J Kelleher <pjk1939@linux.vnet.ibm.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/block/rsxx/rsxx_priv.h')
-rw-r--r--drivers/block/rsxx/rsxx_priv.h11
1 files changed, 1 insertions, 10 deletions
diff --git a/drivers/block/rsxx/rsxx_priv.h b/drivers/block/rsxx/rsxx_priv.h
index 3887e496f54b..a1ac907d8f4c 100644
--- a/drivers/block/rsxx/rsxx_priv.h
+++ b/drivers/block/rsxx/rsxx_priv.h
@@ -127,7 +127,7 @@ struct rsxx_cardinfo {
/* Embedded CPU Communication */
struct {
- struct mutex lock;
+ spinlock_t lock;
bool active;
struct creg_cmd *active_cmd;
struct work_struct done_work;
@@ -141,7 +141,6 @@ struct rsxx_cardinfo {
} creg_stats;
struct timer_list cmd_timer;
struct mutex reset_lock;
- spinlock_t pop_lock;
int reset;
} creg_ctrl;
@@ -336,7 +335,6 @@ static inline unsigned int CREG_DATA(int N)
/***** config.c *****/
int rsxx_load_config(struct rsxx_cardinfo *card);
-int rsxx_save_config(struct rsxx_cardinfo *card);
/***** core.c *****/
void rsxx_enable_ier(struct rsxx_cardinfo *card, unsigned int intr);
@@ -345,8 +343,6 @@ void rsxx_enable_ier_and_isr(struct rsxx_cardinfo *card,
unsigned int intr);
void rsxx_disable_ier_and_isr(struct rsxx_cardinfo *card,
unsigned int intr);
-char *rsxx_card_state_to_str(unsigned int state);
-irqreturn_t rsxx_isr(int irq, void *pdata);
/***** dev.c *****/
int rsxx_attach_dev(struct rsxx_cardinfo *card);
@@ -364,16 +360,11 @@ int rsxx_dma_setup(struct rsxx_cardinfo *card);
void rsxx_dma_destroy(struct rsxx_cardinfo *card);
int rsxx_dma_init(void);
void rsxx_dma_cleanup(void);
-int rsxx_dma_configure(struct rsxx_cardinfo *card);
int rsxx_dma_queue_bio(struct rsxx_cardinfo *card,
struct bio *bio,
atomic_t *n_dmas,
rsxx_dma_cb cb,
void *cb_data);
-int rsxx_dma_stripe_setup(struct rsxx_cardinfo *card,
- unsigned int stripe_size8);
-unsigned int rsxx_get_dma_tgt(struct rsxx_cardinfo *card, u64 addr8);
-unsigned int rsxx_addr8_to_laddr(u64 addr8, struct rsxx_cardinfo *card);
/***** cregs.c *****/
int rsxx_creg_write(struct rsxx_cardinfo *card, u32 addr,
OpenPOWER on IntegriCloud