Commit ee626a7
tee: optee: Ocall2 implementation
Add kernel client API function tee_client_invoke_ocall2() to invoke
a session command with support for an Ocall command from the TEE service
back to caller client. On return of that function, caller can call that
function again providing the Ocall argument to return to TEE from the
Ocall.
The interface allows Ocall command to pass 2 32bit arguments: an Ocall
command ID and a value parameter. On return, the Ocall passes 2 32bit
arguments to output value parameters upon success and an error result.
This implementation is based on the OP-TEE OCALL implementation proposed
by Hernan Gatta in linaro-swg#72 and
OP-TEE/optee_os#3673.
Change-Id: Idce8218a6f1c5d45e0a09f33eb2370c1790a571a
Co-developed-by: Hernan Gatta <hegatta@microsoft.com>
Signed-off-by: Hernan Gatta <hegatta@microsoft.com>
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>
Reviewed-on: https://gerrit.st.com/c/mpu/oe/st/linux-stm32/+/357079
Domain-Review: Yann GAUTIER <yann.gautier@foss.st.com>
Reviewed-by: Yann GAUTIER <yann.gautier@foss.st.com>
ACI: CITOOLS <MDG-smet-aci-reviews@list.st.com>1 parent 372a9a6 commit ee626a7
File tree
8 files changed
+309
-17
lines changed- drivers/tee
- optee
- include/linux
8 files changed
+309
-17
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
328 | 328 | | |
329 | 329 | | |
330 | 330 | | |
331 | | - | |
| 331 | + | |
332 | 332 | | |
333 | 333 | | |
334 | 334 | | |
| |||
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
377 | | - | |
| 377 | + | |
378 | 378 | | |
379 | 379 | | |
380 | 380 | | |
| |||
389 | 389 | | |
390 | 390 | | |
391 | 391 | | |
392 | | - | |
| 392 | + | |
393 | 393 | | |
394 | 394 | | |
395 | 395 | | |
396 | 396 | | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
397 | 400 | | |
398 | 401 | | |
399 | 402 | | |
400 | 403 | | |
401 | 404 | | |
402 | 405 | | |
403 | 406 | | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
404 | 415 | | |
405 | 416 | | |
406 | 417 | | |
| 418 | + | |
407 | 419 | | |
408 | 420 | | |
409 | 421 | | |
410 | 422 | | |
| 423 | + | |
411 | 424 | | |
412 | 425 | | |
413 | 426 | | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
414 | 432 | | |
415 | 433 | | |
416 | | - | |
| 434 | + | |
417 | 435 | | |
418 | 436 | | |
419 | 437 | | |
420 | 438 | | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
421 | 462 | | |
422 | 463 | | |
423 | 464 | | |
| |||
432 | 473 | | |
433 | 474 | | |
434 | 475 | | |
435 | | - | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
436 | 524 | | |
437 | 525 | | |
438 | 526 | | |
| |||
466 | 554 | | |
467 | 555 | | |
468 | 556 | | |
| 557 | + | |
| 558 | + | |
469 | 559 | | |
470 | 560 | | |
471 | 561 | | |
| |||
474 | 564 | | |
475 | 565 | | |
476 | 566 | | |
477 | | - | |
| 567 | + | |
478 | 568 | | |
479 | 569 | | |
480 | 570 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
141 | 141 | | |
142 | 142 | | |
143 | 143 | | |
144 | | - | |
| 144 | + | |
| 145 | + | |
145 | 146 | | |
146 | 147 | | |
147 | 148 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
612 | 612 | | |
613 | 613 | | |
614 | 614 | | |
615 | | - | |
| 615 | + | |
| 616 | + | |
616 | 617 | | |
617 | 618 | | |
618 | 619 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
145 | 157 | | |
146 | 158 | | |
147 | 159 | | |
| |||
154 | 166 | | |
155 | 167 | | |
156 | 168 | | |
157 | | - | |
| 169 | + | |
| 170 | + | |
158 | 171 | | |
159 | 172 | | |
160 | 173 | | |
| |||
201 | 214 | | |
202 | 215 | | |
203 | 216 | | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
204 | 241 | | |
205 | 242 | | |
206 | 243 | | |
| 244 | + | |
207 | 245 | | |
208 | 246 | | |
209 | 247 | | |
| |||
256 | 294 | | |
257 | 295 | | |
258 | 296 | | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
259 | 302 | | |
260 | 303 | | |
261 | 304 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
579 | 579 | | |
580 | 580 | | |
581 | 581 | | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
582 | 605 | | |
583 | 606 | | |
584 | 607 | | |
| |||
0 commit comments