Searched refs:scmdev (Results 1 - 6 of 6) sorted by relevance

/linux-4.4.14/drivers/s390/block/
H A Dscm_drv.c16 static void scm_notify(struct scm_device *scmdev, enum scm_event event) scm_notify() argument
18 struct scm_blk_dev *bdev = dev_get_drvdata(&scmdev->dev); scm_notify()
23 (unsigned long) scmdev->address); scm_notify()
25 SCM_LOG_STATE(2, scmdev); scm_notify()
29 SCM_LOG_STATE(2, scmdev); scm_notify()
35 static int scm_probe(struct scm_device *scmdev) scm_probe() argument
41 SCM_LOG_STATE(2, scmdev); scm_probe()
43 if (scmdev->attrs.oper_state != OP_STATE_GOOD) scm_probe()
50 dev_set_drvdata(&scmdev->dev, bdev); scm_probe()
51 ret = scm_blk_dev_setup(bdev, scmdev); scm_probe()
53 dev_set_drvdata(&scmdev->dev, NULL); scm_probe()
62 static int scm_remove(struct scm_device *scmdev) scm_remove() argument
64 struct scm_blk_dev *bdev = dev_get_drvdata(&scmdev->dev); scm_remove()
67 dev_set_drvdata(&scmdev->dev, NULL); scm_remove()
H A Dscm_blk.h20 struct scm_device *scmdev; member in struct:scm_blk_dev
121 static inline void SCM_LOG_STATE(int level, struct scm_device *scmdev) SCM_LOG_STATE() argument
128 .address = scmdev->address, SCM_LOG_STATE()
129 .oper_state = scmdev->attrs.oper_state, SCM_LOG_STATE()
130 .rank = scmdev->attrs.rank, SCM_LOG_STATE()
H A Dscm_blk.c38 MODULE_ALIAS("scm:scmdev*");
184 struct scm_device *scmdev = bdev->gendisk->private_data; scm_request_prepare() local
198 msb->scm_addr = scmdev->address + ((u64) blk_rq_pos(req) << 9); scm_request_prepare()
229 aobrq->scmdev = bdev->scmdev; scm_request_init()
297 struct scm_device *scmdev = rq->queuedata; scm_blk_request() local
298 struct scm_blk_dev *bdev = dev_get_drvdata(&scmdev->dev); scm_blk_request()
387 void scm_blk_irq(struct scm_device *scmdev, void *data, int error) scm_blk_irq() argument
416 (unsigned long) bdev->scmdev->address); scm_blk_handle_error()
472 int scm_blk_dev_setup(struct scm_blk_dev *bdev, struct scm_device *scmdev) scm_blk_dev_setup() argument
485 bdev->scmdev = scmdev; scm_blk_dev_setup()
500 nr_max_blk = min(scmdev->nr_max_block, scm_blk_dev_setup()
514 rq->queuedata = scmdev; scm_blk_dev_setup()
515 bdev->gendisk->driverfs_dev = &scmdev->dev; scm_blk_dev_setup()
516 bdev->gendisk->private_data = scmdev; scm_blk_dev_setup()
533 set_capacity(bdev->gendisk, scmdev->size >> 9); scm_blk_dev_setup()
559 (unsigned long) bdev->scmdev->address); scm_blk_set_available()
H A Dscm_blk_cluster.c133 struct scm_device *scmdev = bdev->gendisk->private_data; scm_prepare_cluster_request() local
152 addr = scmdev->address + ((u64) blk_rq_pos(req) << 9); scm_prepare_cluster_request()
177 addr < scmdev->address + ((u64) blk_rq_pos(req) << 9); scm_prepare_cluster_request()
/linux-4.4.14/drivers/s390/cio/
H A Dscm.c24 struct scm_device *scmdev = to_scm_dev(dev); scmdev_probe() local
27 return scmdrv->probe ? scmdrv->probe(scmdev) : -ENODEV; scmdev_probe()
32 struct scm_device *scmdev = to_scm_dev(dev); scmdev_remove() local
35 return scmdrv->remove ? scmdrv->remove(scmdev) : -ENODEV; scmdev_remove()
40 return add_uevent_var(env, "MODALIAS=scm:scmdev"); scmdev_uevent()
77 struct scm_device *scmdev = aobrq->scmdev; scm_irq_handler() local
78 struct scm_driver *scmdrv = to_scm_drv(scmdev->dev.driver); scm_irq_handler()
80 scmdrv->handler(scmdev, aobrq->data, error); scm_irq_handler()
88 struct scm_device *scmdev = to_scm_dev(dev); \
92 ret = sprintf(buf, "%u\n", scmdev->attrs.name); \
127 struct scm_device *scmdev = to_scm_dev(dev); scmdev_release() local
129 kfree(scmdev); scmdev_release()
132 static void scmdev_setup(struct scm_device *scmdev, struct sale *sale, scmdev_setup() argument
135 dev_set_name(&scmdev->dev, "%016llx", (unsigned long long) sale->sa); scmdev_setup()
136 scmdev->nr_max_block = max_blk_count; scmdev_setup()
137 scmdev->address = sale->sa; scmdev_setup()
138 scmdev->size = 1UL << size; scmdev_setup()
139 scmdev->attrs.rank = sale->rank; scmdev_setup()
140 scmdev->attrs.persistence = sale->p; scmdev_setup()
141 scmdev->attrs.oper_state = sale->op_state; scmdev_setup()
142 scmdev->attrs.data_state = sale->data_state; scmdev_setup()
143 scmdev->attrs.rank = sale->rank; scmdev_setup()
144 scmdev->attrs.release = sale->r; scmdev_setup()
145 scmdev->attrs.res_id = sale->rid; scmdev_setup()
146 scmdev->dev.parent = scm_root; scmdev_setup()
147 scmdev->dev.bus = &scm_bus_type; scmdev_setup()
148 scmdev->dev.release = scmdev_release; scmdev_setup()
149 scmdev->dev.groups = scmdev_attr_groups; scmdev_setup()
155 static void scmdev_update(struct scm_device *scmdev, struct sale *sale) scmdev_update() argument
160 device_lock(&scmdev->dev); scmdev_update()
161 changed = scmdev->attrs.rank != sale->rank || scmdev_update()
162 scmdev->attrs.oper_state != sale->op_state; scmdev_update()
163 scmdev->attrs.rank = sale->rank; scmdev_update()
164 scmdev->attrs.oper_state = sale->op_state; scmdev_update()
165 if (!scmdev->dev.driver) scmdev_update()
167 scmdrv = to_scm_drv(scmdev->dev.driver); scmdev_update()
169 scmdrv->notify(scmdev, SCM_CHANGE); scmdev_update()
171 device_unlock(&scmdev->dev); scmdev_update()
173 kobject_uevent(&scmdev->dev.kobj, KOBJ_CHANGE); scmdev_update()
178 struct scm_device *scmdev = to_scm_dev(dev); check_address() local
181 return scmdev->address == sale->sa; check_address()
196 struct scm_device *scmdev; scm_add() local
200 scmdev = scmdev_find(sale); scm_add()
201 if (scmdev) { scm_add()
202 scmdev_update(scmdev, sale); scm_add()
204 put_device(&scmdev->dev); scm_add()
207 scmdev = kzalloc(sizeof(*scmdev), GFP_KERNEL); scm_add()
208 if (!scmdev) scm_add()
210 scmdev_setup(scmdev, sale, scm_info->is, scm_info->mbc); scm_add()
211 ret = device_register(&scmdev->dev); scm_add()
214 put_device(&scmdev->dev); scm_add()
258 struct scm_device *scmdev = to_scm_dev(dev); scm_dev_avail() local
261 scmdrv->notify(scmdev, SCM_AVAIL); scm_dev_avail()
/linux-4.4.14/arch/s390/include/asm/
H A Deadm.h78 struct scm_device *scmdev; member in struct:aob_rq_header
105 int (*probe) (struct scm_device *scmdev);
106 int (*remove) (struct scm_device *scmdev);
107 void (*notify) (struct scm_device *scmdev, enum scm_event event);
108 void (*handler) (struct scm_device *scmdev, void *data, int error);

Completed in 197 milliseconds