- Conform to kernel coding standards - Use existing EXPORT_SYMBOL_GPL kernel interfaces where appropriate - Refactor primitives (e.g. cryptographic) to appropriate kernel subsystems - Support non-x86-64 platforms - Refactor platform layer abstractions and other changes requested by upstream maintainers