diff options
author | Sven Schnelle <svens@linux.ibm.com> | 2022-11-28 21:42:28 +0300 |
---|---|---|
committer | Heiko Carstens <hca@linux.ibm.com> | 2023-01-09 16:33:59 +0300 |
commit | f08e31558a98383f185dcff0a8d77f1963150156 (patch) | |
tree | 9a309f599415ea566888b13e79c8ccc4c279812d /drivers/s390/char/raw3270.c | |
parent | e22de7d7910ab9490b191da5fac0592214b340d5 (diff) | |
download | linux-f08e31558a98383f185dcff0a8d77f1963150156.tar.xz |
s390/raw3270: add raw3270_start_request() helper
There are a few places (and there would be more with the following commits)
like this:
raw3270_request_reset(cp->kreset);
raw3270_request_set_cmd(cp->kreset, TC_WRITE);
raw3270_request_add_data(cp->kreset, &kreset_data, 1);
raw3270_start(&cp->view, cp->kreset);
i.e reset a request, setting the command, adding payload, and starting the
request. Add a helper raw3270_start_request() which takes a command and
the payload as argument and calls the approppriate functions.
Signed-off-by: Sven Schnelle <svens@linux.ibm.com>
Acked-by: Heiko Carstens <hca@linux.ibm.com>
Tested-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'drivers/s390/char/raw3270.c')
-rw-r--r-- | drivers/s390/char/raw3270.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/s390/char/raw3270.c b/drivers/s390/char/raw3270.c index f1a817cfe624..68a6c7390c4c 100644 --- a/drivers/s390/char/raw3270.c +++ b/drivers/s390/char/raw3270.c @@ -264,6 +264,19 @@ int raw3270_start(struct raw3270_view *view, struct raw3270_request *rq) return rc; } +int raw3270_start_request(struct raw3270_view *view, struct raw3270_request *rq, + int cmd, void *data, size_t len) +{ + int rc; + + raw3270_request_reset(rq); + raw3270_request_set_cmd(rq, cmd); + rc = raw3270_request_add_data(rq, data, len); + if (rc) + return rc; + return raw3270_start(view, rq); +} + int raw3270_start_locked(struct raw3270_view *view, struct raw3270_request *rq) { struct raw3270 *rp; @@ -1272,6 +1285,7 @@ EXPORT_SYMBOL(raw3270_find_view); EXPORT_SYMBOL(raw3270_activate_view); EXPORT_SYMBOL(raw3270_deactivate_view); EXPORT_SYMBOL(raw3270_start); +EXPORT_SYMBOL(raw3270_start_request); EXPORT_SYMBOL(raw3270_start_locked); EXPORT_SYMBOL(raw3270_start_irq); EXPORT_SYMBOL(raw3270_reset); |