#ifndef CURVE_H #define CURVE_H #include "locking.h" #include "built_in.h" #include "ioops.h" #include "rnd.h" #include "taia.h" #include "crypto.h" struct curve25519_proto { unsigned char enonce[crypto_box_noncebytes] __aligned_16; unsigned char dnonce[crypto_box_noncebytes] __aligned_16; unsigned char key[crypto_box_beforenmbytes] __aligned_16; }; struct curve25519_struct { unsigned char *enc, *dec; size_t enc_size, dec_size; struct spinlock enc_lock, dec_lock; }; extern void curve25519_selftest(void); extern struct curve25519_struct *curve25519_tfm_alloc(void); extern void curve25519_tfm_free(struct curve25519_struct *tfm); extern void curve25519_tfm_free_void(void *tfm); extern void curve25519_proto_init(struct curve25519_proto *proto, unsigned char *pubkey_remote, size_t len); extern int curve25519_pubkey_hexparse_32(unsigned char *bin, size_t blen, const char *ascii, size_t alen); extern ssize_t curve25519_encode(struct curve25519_struct *curve, struct curve25519_proto *proto, unsigned char *plaintext, size_t size, unsigned char **ciphertext); extern ssize_t curve25519_decode(struct curve25519_struct *curve, struct curve25519_proto *proto, unsigned char *ciphertext, size_t size, unsigned char **plaintext, struct taia *arrival_taia); #endif /* CURVE_H */ -rx-pump-back'>packet-rx-pump-back net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorLv Zheng <lv.zheng@intel.com>2016-06-03 10:26:12 +0800
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-06-07 02:29:53 +0200
commitdcf15cbded656a12335bc4151f3f75f10080a375 (patch)
tree0607caf0285a42f43729cc519087fa65611f5d07 /Documentation
parent3d4b7ae96d81dc8ed4ecd556118b632c2707ff08 (diff)
ACPI / EC: Fix a boot EC regresion by restoring boot EC support for the DSDT EC
According to the Windows probing result, during the table loading, the EC device described in the ECDT should be used. And the ECDT EC is also effective during the period the namespace objects are initialized (we can see a separate process executing _STA/_INI on Windows before executing other device specific control methods, for example, EC._REG). During the device enumration, the EC device described in the DSDT should be used. But there are differences between Linux and Windows around the device probing order. Thus in Linux, we should enable the DSDT EC as early as possible before enumerating devices in order not to trigger issues related to the device enumeration order differences. This patch thus converts acpi_boot_ec_enable() into acpi_ec_dsdt_probe() to fix the gap. This also fixes a user reported regression triggered after we switched the "table loading"/"ECDT support" to be ACPI spec 2.0 compliant. Fixes: 59f0aa9480cf (ACPI 2.0 / ECDT: Remove early namespace reference from EC) Link: https://bugzilla.kernel.org/show_bug.cgi?id=119261 Reported-and-tested-by: Gabriele Mazzotta <gabriele.mzt@gmail.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'Documentation')