GNU Linux-libre 4.14.332-gnu1
[releases.git] / drivers / staging / ccree / TODO
1
2
3 *************************************************************************
4 *                                                                       *
5 * Arm Trust Zone CryptoCell REE Linux driver upstreaming TODO items     *
6 *                                                                       *
7 *************************************************************************
8
9 ccree specific items
10 a.k.a stuff fixing for this driver to move out of staging
11 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12
13 1.  Move to using Crypto Engine to handle backlog queueing.
14 2.  Remove synchronous algorithm support leftovers.
15 3.  Separate platform specific code for FIPS and power management into separate platform modules.
16 4.  Drop legacy kernel support code.
17 5.  Move most (all?) #ifdef CONFIG into inline functions.
18 6.  Remove all unused definitions.
19 7.  Re-factor to accomediate newer/older HW revisions besides the 712.
20 8.  Handle the many checkpatch errors.
21 9.  Implement ahash import/export correctly.
22 10. Go through a proper review of DT bindings and sysfs ABI
23 11. Sort out FIPS mode: bake tests into testmgr, sort out behaviour on error, 
24     figure if 3DES weak key check is needed
25
26 Kernel infrastructure items
27 a.k.a stuff we either neither need to fix in the kernel or understand what we're doing wrong
28 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
29 1. ahash import/export context has a PAGE_SIZE/8 size limit.  We need more.
30 2. Crypto Engine seems to be built for HW with hardware queue depth of 1, we have 600++.