18ce0c61cSGavin Atkinson.\" Copyright (c) 2005 Christian Brueffer 28ce0c61cSGavin Atkinson.\" All rights reserved. 38ce0c61cSGavin Atkinson.\" 48ce0c61cSGavin Atkinson.\" Redistribution and use in source and binary forms, with or without 58ce0c61cSGavin Atkinson.\" modification, are permitted provided that the following conditions 68ce0c61cSGavin Atkinson.\" are met: 78ce0c61cSGavin Atkinson.\" 1. Redistributions of source code must retain the above copyright 88ce0c61cSGavin Atkinson.\" notice, this list of conditions and the following disclaimer. 98ce0c61cSGavin Atkinson.\" 2. Redistributions in binary form must reproduce the above copyright 108ce0c61cSGavin Atkinson.\" notice, this list of conditions and the following disclaimer in the 118ce0c61cSGavin Atkinson.\" documentation and/or other materials provided with the distribution. 128ce0c61cSGavin Atkinson.\" 138ce0c61cSGavin Atkinson.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 148ce0c61cSGavin Atkinson.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 158ce0c61cSGavin Atkinson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 168ce0c61cSGavin Atkinson.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 178ce0c61cSGavin Atkinson.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 188ce0c61cSGavin Atkinson.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 198ce0c61cSGavin Atkinson.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 208ce0c61cSGavin Atkinson.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 218ce0c61cSGavin Atkinson.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 228ce0c61cSGavin Atkinson.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 238ce0c61cSGavin Atkinson.\" SUCH DAMAGE. 248ce0c61cSGavin Atkinson.\" 258ce0c61cSGavin Atkinson.\" $FreeBSD$ 268ce0c61cSGavin Atkinson.\" 27*40326c17SJohn-Mark Gurney.Dd July 29, 2020 288ce0c61cSGavin Atkinson.Dt PADLOCK 4 298ce0c61cSGavin Atkinson.Os 308ce0c61cSGavin Atkinson.Sh NAME 318ce0c61cSGavin Atkinson.Nm padlock 328ce0c61cSGavin Atkinson.Nd "driver for the cryptographic functions and RNG in VIA C3, C7 and Eden processors" 338ce0c61cSGavin Atkinson.Sh SYNOPSIS 348ce0c61cSGavin AtkinsonTo compile this driver into the kernel, 358ce0c61cSGavin Atkinsonplace the following lines in your 368ce0c61cSGavin Atkinsonkernel configuration file: 378ce0c61cSGavin Atkinson.Bd -ragged -offset indent 388ce0c61cSGavin Atkinson.Cd "device crypto" 398ce0c61cSGavin Atkinson.Cd "device padlock" 408ce0c61cSGavin Atkinson.Ed 418ce0c61cSGavin Atkinson.Pp 428ce0c61cSGavin AtkinsonAlternatively, to load the driver as a 438ce0c61cSGavin Atkinsonmodule at boot time, place the following line in 448ce0c61cSGavin Atkinson.Xr loader.conf 5 : 458ce0c61cSGavin Atkinson.Bd -literal -offset indent 468ce0c61cSGavin Atkinsonpadlock_load="YES" 478ce0c61cSGavin Atkinson.Ed 488ce0c61cSGavin Atkinson.Sh DESCRIPTION 498ce0c61cSGavin AtkinsonThe C3 and Eden processor series from VIA include hardware acceleration for 508ce0c61cSGavin AtkinsonAES. 518ce0c61cSGavin AtkinsonThe C7 series includes hardware acceleration for AES, SHA1, SHA256 and RSA. 528ce0c61cSGavin AtkinsonAll of the above processor series include a hardware random number generator. 538ce0c61cSGavin Atkinson.Pp 548ce0c61cSGavin AtkinsonThe 558ce0c61cSGavin Atkinson.Nm 568ce0c61cSGavin Atkinsondriver registers itself to accelerate AES operations and, if available, HMAC/SHA1 578ce0c61cSGavin Atkinsonand HMAC/SHA256 for 588ce0c61cSGavin Atkinson.Xr crypto 4 . 598ce0c61cSGavin AtkinsonIt also registers itself to accelerate other HMAC algorithms, although 608ce0c61cSGavin Atkinsonthere is no hardware acceleration for those algorithms. 618ce0c61cSGavin AtkinsonThis is only needed so 628ce0c61cSGavin Atkinson.Nm 638ce0c61cSGavin Atkinsoncan work with 648ce0c61cSGavin Atkinson.Xr ipsec 4 . 658ce0c61cSGavin Atkinson.Pp 668ce0c61cSGavin AtkinsonThe hardware random number generator supplies data for the kernel 678ce0c61cSGavin Atkinson.Xr random 4 688ce0c61cSGavin Atkinsonsubsystem. 698ce0c61cSGavin Atkinson.Sh SEE ALSO 708ce0c61cSGavin Atkinson.Xr crypt 3 , 718ce0c61cSGavin Atkinson.Xr crypto 4 , 728ce0c61cSGavin Atkinson.Xr intro 4 , 738ce0c61cSGavin Atkinson.Xr ipsec 4 , 748ce0c61cSGavin Atkinson.Xr random 4 , 75*40326c17SJohn-Mark Gurney.Xr crypto 7 , 768ce0c61cSGavin Atkinson.Xr crypto 9 778ce0c61cSGavin Atkinson.Sh HISTORY 788ce0c61cSGavin AtkinsonThe 798ce0c61cSGavin Atkinson.Nm 808ce0c61cSGavin Atkinsondriver first appeared in 818ce0c61cSGavin Atkinson.Ox . 828ce0c61cSGavin AtkinsonThe first 838ce0c61cSGavin Atkinson.Fx 848ce0c61cSGavin Atkinsonrelease to include it was 858ce0c61cSGavin Atkinson.Fx 6.0 . 868ce0c61cSGavin Atkinson.Sh AUTHORS 878ce0c61cSGavin Atkinson.An -nosplit 888ce0c61cSGavin AtkinsonThe 898ce0c61cSGavin Atkinson.Nm 908ce0c61cSGavin Atkinsondriver with AES encryption support was written by 916c899950SBaptiste Daroussin.An Jason Wright Aq Mt jason@OpenBSD.org . 928ce0c61cSGavin AtkinsonIt was ported to 938ce0c61cSGavin Atkinson.Fx 948ce0c61cSGavin Atkinsonand then extended to support SHA1 and SHA256 958ce0c61cSGavin Atkinsonby 966c899950SBaptiste Daroussin.An Pawel Jakub Dawidek Aq Mt pjd@FreeBSD.org . 978ce0c61cSGavin AtkinsonThis manual page was written by 986c899950SBaptiste Daroussin.An Christian Brueffer Aq Mt brueffer@FreeBSD.org . 99