aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Glauber <jan.glauber@de.ibm.com>2007-07-17 07:36:09 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2007-07-17 07:36:20 -0400
commita07a5b336f699e21d405764931a9d5426dc4f945 (patch)
treea5e3f31026d0125e021e4d301cbcd7eff4f59964
parent086a6c6249995e49db0f7196d59f69dc3a1e1ef8 (diff)
[S390] Fix broken logic, SIGA flags must be bitwise ORed
Signed-off-by: Jan Glauber <jan.glauber@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
-rw-r--r--drivers/s390/cio/qdio.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/s390/cio/qdio.c b/drivers/s390/cio/qdio.c
index ae437322c9ca..ed026a1dc324 100644
--- a/drivers/s390/cio/qdio.c
+++ b/drivers/s390/cio/qdio.c
@@ -2306,8 +2306,8 @@ qdio_get_ssqd_information(struct qdio_irq *irq_ptr)
2306 if (!ssqd_area) { 2306 if (!ssqd_area) {
2307 QDIO_PRINT_WARN("Could not get memory for chsc. Using all " \ 2307 QDIO_PRINT_WARN("Could not get memory for chsc. Using all " \
2308 "SIGAs for sch x%x.\n", irq_ptr->schid.sch_no); 2308 "SIGAs for sch x%x.\n", irq_ptr->schid.sch_no);
2309 irq_ptr->qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY || 2309 irq_ptr->qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY |
2310 CHSC_FLAG_SIGA_OUTPUT_NECESSARY || 2310 CHSC_FLAG_SIGA_OUTPUT_NECESSARY |
2311 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */ 2311 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */
2312 irq_ptr->is_qebsm = 0; 2312 irq_ptr->is_qebsm = 0;
2313 irq_ptr->sch_token = 0; 2313 irq_ptr->sch_token = 0;
@@ -2328,8 +2328,8 @@ qdio_get_ssqd_information(struct qdio_irq *irq_ptr)
2328 QDIO_PRINT_WARN("CHSC returned cc %i. Using all " \ 2328 QDIO_PRINT_WARN("CHSC returned cc %i. Using all " \
2329 "SIGAs for sch 0.%x.%x.\n", result, 2329 "SIGAs for sch 0.%x.%x.\n", result,
2330 irq_ptr->schid.ssid, irq_ptr->schid.sch_no); 2330 irq_ptr->schid.ssid, irq_ptr->schid.sch_no);
2331 qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY || 2331 qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY |
2332 CHSC_FLAG_SIGA_OUTPUT_NECESSARY || 2332 CHSC_FLAG_SIGA_OUTPUT_NECESSARY |
2333 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */ 2333 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */
2334 irq_ptr->is_qebsm = 0; 2334 irq_ptr->is_qebsm = 0;
2335 goto out; 2335 goto out;
@@ -2340,8 +2340,8 @@ qdio_get_ssqd_information(struct qdio_irq *irq_ptr)
2340 "is 0x%x. Using all SIGAs for sch 0.%x.%x.\n", 2340 "is 0x%x. Using all SIGAs for sch 0.%x.%x.\n",
2341 ssqd_area->response.code, 2341 ssqd_area->response.code,
2342 irq_ptr->schid.ssid, irq_ptr->schid.sch_no); 2342 irq_ptr->schid.ssid, irq_ptr->schid.sch_no);
2343 qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY || 2343 qdioac = CHSC_FLAG_SIGA_INPUT_NECESSARY |
2344 CHSC_FLAG_SIGA_OUTPUT_NECESSARY || 2344 CHSC_FLAG_SIGA_OUTPUT_NECESSARY |
2345 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */ 2345 CHSC_FLAG_SIGA_SYNC_NECESSARY; /* all flags set */
2346 irq_ptr->is_qebsm = 0; 2346 irq_ptr->is_qebsm = 0;
2347 goto out; 2347 goto out;