sync
This commit is contained in:
parent
01bad5edf2
commit
f609457dcf
@ -1,5 +1,5 @@
|
||||
#!/bin/ksh
|
||||
# $OpenBSD: install.sub,v 1.1243 2023/04/25 14:20:13 kn Exp $
|
||||
# $OpenBSD: install.sub,v 1.1244 2023/05/02 15:55:58 deraadt Exp $
|
||||
#
|
||||
# Copyright (c) 1997-2015 Todd Miller, Theo de Raadt, Ken Westerback
|
||||
# Copyright (c) 2015, Robert Peichaer <rpe@openbsd.org>
|
||||
@ -3102,7 +3102,7 @@ Create a passphrase protected CRYPTO softraid volume to be used as root disk.
|
||||
__EOT
|
||||
diskinfo $(get_dkdevs);;
|
||||
'') ;;
|
||||
no) return;;
|
||||
n|no) return;;
|
||||
*) isin "$resp" $(get_dkdevs) && break
|
||||
echo 'No such disk.';;
|
||||
esac
|
||||
|
@ -1 +1 @@
|
||||
# SecBSD 1.3-df696c4: Mon May 2 00:00:00 UTC 2023 (Quetzalcoatl)
|
||||
# SecBSD 1.3-8bfda6e: Mon May 2 00:00:00 UTC 2023 (Quetzalcoatl)
|
||||
|
2
gnu/usr.bin/binutils-2.17/binutils/configure
vendored
2
gnu/usr.bin/binutils-2.17/binutils/configure
vendored
@ -3508,7 +3508,7 @@ else
|
||||
lt_cv_sys_max_cmd_len=8192;
|
||||
;;
|
||||
|
||||
netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
|
||||
netbsd* | freebsd* | openbsd* | darwin* | dragonfly* | secbsd*)
|
||||
# This has been around since 386BSD, at least. Likely further.
|
||||
if test -x /sbin/sysctl; then
|
||||
lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
|
||||
|
@ -185,7 +185,7 @@ case ${generic_target} in
|
||||
esac ;;
|
||||
i386-*-openbsd[0-2].* | \
|
||||
i386-*-openbsd3.[0-2]) fmt=aout em=obsd ;;
|
||||
i386-*-openbsd* | i386-*-secbsd) fmt=elf em=obsd ;;
|
||||
i386-*-openbsd* | i386-*-secbsd*) fmt=elf em=obsd ;;
|
||||
i386-*-linux*aout*) fmt=aout em=linux ;;
|
||||
i386-*-linux*oldld) fmt=aout em=linux ;;
|
||||
i386-*-linux*coff*) fmt=coff em=linux ;;
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: ec_curve.c,v 1.39 2023/05/01 17:53:01 tb Exp $ */
|
||||
/* $OpenBSD: ec_curve.c,v 1.41 2023/05/02 13:01:57 tb Exp $ */
|
||||
/*
|
||||
* Written by Nils Larsch for the OpenSSL project.
|
||||
*/
|
||||
@ -3000,11 +3000,10 @@ static const struct ec_list_element {
|
||||
static EC_GROUP *
|
||||
ec_group_new_from_data(const struct ec_list_element *curve)
|
||||
{
|
||||
EC_GROUP *group = NULL;
|
||||
EC_POINT *P = NULL;
|
||||
EC_GROUP *group = NULL, *ret = NULL;
|
||||
EC_POINT *generator = NULL;
|
||||
BN_CTX *ctx = NULL;
|
||||
BIGNUM *p, *a, *b, *x, *y, *order, *cofactor;
|
||||
int ok = 0;
|
||||
|
||||
if ((ctx = BN_CTX_new()) == NULL) {
|
||||
ECerror(ERR_R_MALLOC_FAILURE);
|
||||
@ -3057,8 +3056,9 @@ ec_group_new_from_data(const struct ec_list_element *curve)
|
||||
ECerror(ERR_R_EC_LIB);
|
||||
goto err;
|
||||
}
|
||||
EC_GROUP_set_curve_name(group, curve->nid);
|
||||
|
||||
if ((P = EC_POINT_new(group)) == NULL) {
|
||||
if ((generator = EC_POINT_new(group)) == NULL) {
|
||||
ECerror(ERR_R_EC_LIB);
|
||||
goto err;
|
||||
}
|
||||
@ -3070,7 +3070,7 @@ ec_group_new_from_data(const struct ec_list_element *curve)
|
||||
ECerror(ERR_R_BN_LIB);
|
||||
goto err;
|
||||
}
|
||||
if (!EC_POINT_set_affine_coordinates(group, P, x, y, ctx)) {
|
||||
if (!EC_POINT_set_affine_coordinates(group, generator, x, y, ctx)) {
|
||||
ECerror(ERR_R_EC_LIB);
|
||||
goto err;
|
||||
}
|
||||
@ -3082,51 +3082,45 @@ ec_group_new_from_data(const struct ec_list_element *curve)
|
||||
ECerror(ERR_R_BN_LIB);
|
||||
goto err;
|
||||
}
|
||||
if (!EC_GROUP_set_generator(group, P, order, cofactor)) {
|
||||
if (!EC_GROUP_set_generator(group, generator, order, cofactor)) {
|
||||
ECerror(ERR_R_EC_LIB);
|
||||
goto err;
|
||||
}
|
||||
|
||||
if (curve->seed != NULL) {
|
||||
if (!EC_GROUP_set_seed(group, curve->seed, curve->seed_len)) {
|
||||
ECerror(ERR_R_EC_LIB);
|
||||
goto err;
|
||||
}
|
||||
}
|
||||
ok = 1;
|
||||
|
||||
ret = group;
|
||||
group = NULL;
|
||||
|
||||
err:
|
||||
if (!ok) {
|
||||
EC_GROUP_free(group);
|
||||
group = NULL;
|
||||
}
|
||||
EC_POINT_free(P);
|
||||
EC_GROUP_free(group);
|
||||
EC_POINT_free(generator);
|
||||
BN_CTX_end(ctx);
|
||||
BN_CTX_free(ctx);
|
||||
|
||||
return group;
|
||||
return ret;
|
||||
}
|
||||
|
||||
EC_GROUP *
|
||||
EC_GROUP_new_by_curve_name(int nid)
|
||||
{
|
||||
size_t i;
|
||||
EC_GROUP *ret = NULL;
|
||||
|
||||
if (nid <= 0)
|
||||
return NULL;
|
||||
|
||||
for (i = 0; i < CURVE_LIST_LENGTH; i++) {
|
||||
if (curve_list[i].nid == nid) {
|
||||
ret = ec_group_new_from_data(&curve_list[i]);
|
||||
break;
|
||||
}
|
||||
if (curve_list[i].nid == nid)
|
||||
return ec_group_new_from_data(&curve_list[i]);
|
||||
}
|
||||
if (ret == NULL) {
|
||||
ECerror(EC_R_UNKNOWN_GROUP);
|
||||
return NULL;
|
||||
}
|
||||
EC_GROUP_set_curve_name(ret, nid);
|
||||
|
||||
return ret;
|
||||
ECerror(EC_R_UNKNOWN_GROUP);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
size_t
|
||||
|
@ -1,4 +1,4 @@
|
||||
.\" $OpenBSD: X509_NAME_get_index_by_NID.3,v 1.13 2022/07/02 17:09:09 jsing Exp $
|
||||
.\" $OpenBSD: X509_NAME_get_index_by_NID.3,v 1.14 2023/05/02 14:13:05 beck Exp $
|
||||
.\" OpenSSL aebb9aac Jul 19 09:27:53 2016 -0400
|
||||
.\"
|
||||
.\" This file was written by Dr. Stephen Henson <steve@openssl.org>.
|
||||
@ -49,7 +49,7 @@
|
||||
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
|
||||
.\" OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.Dd $Mdocdate: July 2 2022 $
|
||||
.Dd $Mdocdate: May 2 2023 $
|
||||
.Dt X509_NAME_GET_INDEX_BY_NID 3
|
||||
.Os
|
||||
.Sh NAME
|
||||
@ -136,22 +136,32 @@ run from 0 to
|
||||
.Fn X509_NAME_get_text_by_NID
|
||||
and
|
||||
.Fn X509_NAME_get_text_by_OBJ
|
||||
retrieve the "text" from the first entry in
|
||||
retrieve the bytes encoded as UTF-8 from the first entry in
|
||||
.Fa name
|
||||
which matches
|
||||
.Fa nid
|
||||
or
|
||||
.Fa obj .
|
||||
At most
|
||||
.Fa len
|
||||
bytes will be written and the text written to
|
||||
.Fa buf
|
||||
will be NUL terminated.
|
||||
If
|
||||
.Fa buf
|
||||
is
|
||||
.Dv NULL ,
|
||||
nothing is written, but the return value is calculated as usual.
|
||||
If
|
||||
.Fa buf
|
||||
is not
|
||||
.Dv NULL ,
|
||||
no more than
|
||||
.Fa len
|
||||
bytes will be written and the text written to
|
||||
.Fa buf
|
||||
will be NUL terminated.
|
||||
.Pp
|
||||
Nothing is written and it is a failure if
|
||||
.Fa len
|
||||
is not large enough to hold the NUL byte terminated UTF-8 encoding of
|
||||
the text, or if the UTF-8 encoding ot the text would contins a NUL
|
||||
byte.
|
||||
.Pp
|
||||
All relevant
|
||||
.Dv NID_*
|
||||
@ -189,8 +199,8 @@ if the index is invalid.
|
||||
.Fn X509_NAME_get_text_by_NID
|
||||
and
|
||||
.Fn X509_NAME_get_text_by_OBJ
|
||||
return the length of the output string written, not counting the
|
||||
terminating NUL, or -1 if no match is found.
|
||||
return the length of the output UTF-8 string written, not counting the
|
||||
terminating NUL, or -1 in the case of an error or no match being found.
|
||||
.Pp
|
||||
In some cases of failure of
|
||||
.Fn X509_NAME_get_index_by_NID
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: pk7_mime.c,v 1.17 2023/04/26 14:25:58 tb Exp $ */
|
||||
/* $OpenBSD: pk7_mime.c,v 1.19 2023/05/02 09:56:12 tb Exp $ */
|
||||
/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
|
||||
* project.
|
||||
*/
|
||||
@ -71,8 +71,7 @@ LCRYPTO_ALIAS(BIO_new_PKCS7);
|
||||
int
|
||||
i2d_PKCS7_bio_stream(BIO *out, PKCS7 *p7, BIO *in, int flags)
|
||||
{
|
||||
return i2d_ASN1_bio_stream(out, (ASN1_VALUE *)p7, in, flags,
|
||||
&PKCS7_it);
|
||||
return i2d_ASN1_bio_stream(out, (ASN1_VALUE *)p7, in, flags, &PKCS7_it);
|
||||
}
|
||||
LCRYPTO_ALIAS(i2d_PKCS7_bio_stream);
|
||||
|
||||
@ -87,16 +86,14 @@ LCRYPTO_ALIAS(PEM_write_bio_PKCS7_stream);
|
||||
int
|
||||
SMIME_write_PKCS7(BIO *bio, PKCS7 *p7, BIO *data, int flags)
|
||||
{
|
||||
STACK_OF(X509_ALGOR) *mdalgs;
|
||||
int ctype_nid = OBJ_obj2nid(p7->type);
|
||||
if (ctype_nid == NID_pkcs7_signed)
|
||||
STACK_OF(X509_ALGOR) *mdalgs = NULL;
|
||||
int ctype_nid;
|
||||
|
||||
if ((ctype_nid = OBJ_obj2nid(p7->type)) == NID_pkcs7_signed)
|
||||
mdalgs = p7->d.sign->md_algs;
|
||||
else
|
||||
mdalgs = NULL;
|
||||
|
||||
flags ^= SMIME_OLDMIME;
|
||||
|
||||
|
||||
return SMIME_write_ASN1(bio, (ASN1_VALUE *)p7, data, flags,
|
||||
ctype_nid, NID_undef, mdalgs, &PKCS7_it);
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: x509name.c,v 1.31 2023/02/16 08:38:17 tb Exp $ */
|
||||
/* $OpenBSD: x509name.c,v 1.32 2023/05/02 14:13:05 beck Exp $ */
|
||||
/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
|
||||
* All rights reserved.
|
||||
*
|
||||
@ -66,6 +66,7 @@
|
||||
#include <openssl/stack.h>
|
||||
#include <openssl/x509.h>
|
||||
|
||||
#include "bytestring.h"
|
||||
#include "x509_local.h"
|
||||
|
||||
int
|
||||
@ -84,21 +85,37 @@ int
|
||||
X509_NAME_get_text_by_OBJ(X509_NAME *name, const ASN1_OBJECT *obj, char *buf,
|
||||
int len)
|
||||
{
|
||||
int i;
|
||||
unsigned char *text = NULL;
|
||||
ASN1_STRING *data;
|
||||
int i, text_len;
|
||||
int ret = -1;
|
||||
CBS cbs;
|
||||
|
||||
i = X509_NAME_get_index_by_OBJ(name, obj, -1);
|
||||
if (i < 0)
|
||||
return (-1);
|
||||
goto err;
|
||||
data = X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name, i));
|
||||
i = (data->length > (len - 1)) ? (len - 1) : data->length;
|
||||
if (buf == NULL)
|
||||
return (data->length);
|
||||
if (i >= 0) {
|
||||
memcpy(buf, data->data, i);
|
||||
buf[i] = '\0';
|
||||
/*
|
||||
* Fail if we cannot encode as UTF-8, or if the UTF-8 encoding of the
|
||||
* string contains a 0 byte, because mortal callers seldom handle the
|
||||
* length difference correctly
|
||||
*/
|
||||
if ((text_len = ASN1_STRING_to_UTF8(&text, data)) < 0)
|
||||
goto err;
|
||||
CBS_init(&cbs, text, text_len);
|
||||
if (CBS_contains_zero_byte(&cbs))
|
||||
goto err;
|
||||
/* We still support the "pass NULL to find out how much" API */
|
||||
if (buf != NULL) {
|
||||
if (!CBS_write_bytes(&cbs, buf, len - 1, NULL))
|
||||
goto err;
|
||||
/* It must be a C string */
|
||||
buf[text_len] = '\0';
|
||||
}
|
||||
return (i);
|
||||
ret = text_len;
|
||||
err:
|
||||
free(text);
|
||||
return (ret);
|
||||
}
|
||||
LCRYPTO_ALIAS(X509_NAME_get_text_by_OBJ);
|
||||
|
||||
|
@ -35,12 +35,11 @@ The changes made in version 1.2.13.1 are documented in the file ChangeLog.
|
||||
|
||||
Unsupported third party contributions are provided in directory contrib/ .
|
||||
|
||||
zlib is available in Java using the java.util.zip package, documented at
|
||||
http://java.sun.com/developer/technicalArticles/Programming/compression/ .
|
||||
zlib is available in Java using the java.util.zip package. Follow the API
|
||||
Documentation link at: https://docs.oracle.com/search/?q=java.util.zip .
|
||||
|
||||
A Perl interface to zlib written by Paul Marquess <pmqs@cpan.org> is available
|
||||
at CPAN (Comprehensive Perl Archive Network) sites, including
|
||||
http://search.cpan.org/~pmqs/IO-Compress-Zlib/ .
|
||||
A Perl interface to zlib and bzip2 written by Paul Marquess <pmqs@cpan.org>
|
||||
can be found at https://github.com/pmqs/IO-Compress .
|
||||
|
||||
A Python interface to zlib written by A.M. Kuchling <amk@amk.ca> is
|
||||
available in Python 1.5 and later versions, see
|
||||
|
@ -522,7 +522,7 @@ typedef uLong FAR uLongf;
|
||||
#if !defined(_WIN32) && defined(Z_LARGE64)
|
||||
# define z_off64_t off64_t
|
||||
#else
|
||||
# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO)
|
||||
# if defined(_WIN32) && !defined(__GNUC__)
|
||||
# define z_off64_t __int64
|
||||
# else
|
||||
# define z_off64_t z_off_t
|
||||
|
@ -729,7 +729,7 @@ ZEXTERN int ZEXPORT deflateParams(z_streamp strm,
|
||||
Then no more input data should be provided before the deflateParams() call.
|
||||
If this is done, the old level and strategy will be applied to the data
|
||||
compressed before deflateParams(), and the new level and strategy will be
|
||||
applied to the the data compressed after deflateParams().
|
||||
applied to the data compressed after deflateParams().
|
||||
|
||||
deflateParams returns Z_OK on success, Z_STREAM_ERROR if the source stream
|
||||
state was inconsistent or if a parameter was invalid, or Z_BUF_ERROR if
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: bio_asn1.c,v 1.3 2023/04/25 19:48:24 tb Exp $ */
|
||||
/* $OpenBSD: bio_asn1.c,v 1.4 2023/05/02 09:30:37 tb Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2023 Theo Buehler <tb@openbsd.org>
|
||||
@ -125,8 +125,8 @@ test_prefix_leak(void)
|
||||
if ((bio_out = BIO_new(BIO_s_mem())) == NULL)
|
||||
goto err;
|
||||
|
||||
if (!i2d_ASN1_bio_stream(bio_out, (ASN1_VALUE *)pkcs7, bio_in,
|
||||
SMIME_STREAM | SMIME_BINARY, &PKCS7_it))
|
||||
if (!i2d_PKCS7_bio_stream(bio_out, pkcs7, bio_in,
|
||||
SMIME_STREAM | SMIME_BINARY))
|
||||
goto err;
|
||||
|
||||
if (set_me != 1) {
|
||||
|
@ -272,7 +272,7 @@ try_again:
|
||||
print "D- $line\n" if $verbose;
|
||||
next;
|
||||
}
|
||||
if ($id =~ /^(?:ASN1|BN|X509(?:V3)?)_[FR]_\w+$/) {
|
||||
if ($id =~ /^(?:ASN1|BIO|BN|X509(?:V3)?)_[FR]_\w+$/) {
|
||||
print "D- $line\n" if $verbose;
|
||||
next;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: x509_asn1.c,v 1.16 2023/05/01 11:02:23 job Exp $ */
|
||||
/* $OpenBSD: x509_asn1.c,v 1.17 2023/05/02 14:13:05 beck Exp $ */
|
||||
/*
|
||||
* Copyright (c) 2023 Job Snijders <job@openbsd.org>
|
||||
*
|
||||
@ -512,13 +512,88 @@ test_x509_req_setters(void)
|
||||
return failed;
|
||||
}
|
||||
|
||||
int main(void)
|
||||
static const struct testcase {
|
||||
char *data;
|
||||
int len;
|
||||
int len_to_pass;
|
||||
int encode_type;
|
||||
int expected_result;
|
||||
char *expected_string;
|
||||
} testCases[] = {
|
||||
/* should work */
|
||||
{"fozzie", 6, 80, MBSTRING_ASC, 6, "fozzie"},
|
||||
/* should work */
|
||||
{"fozzie", 6, -1, MBSTRING_ASC, 6, ""},
|
||||
/* should fail, truncation */
|
||||
{"muppet", 6, 5, MBSTRING_ASC, -1, ""},
|
||||
/* should fail, contains 0 byte */
|
||||
{"g\0nzo", 5, 80, MBSTRING_ASC, -1, ""},
|
||||
/* should fail, can't encode as utf-8 */
|
||||
{"\x30\x00", 2, 80, V_ASN1_SEQUENCE, -1, ""},
|
||||
};
|
||||
|
||||
#define NUM_TEST_CASES (sizeof(testCases) / sizeof(testCases[0]))
|
||||
|
||||
static int
|
||||
test_x509_name_get(void)
|
||||
{
|
||||
int failed = 0;
|
||||
size_t i;
|
||||
|
||||
for (i = 0; i < NUM_TEST_CASES; i++) {
|
||||
const struct testcase *test = testCases + i;
|
||||
X509_NAME_ENTRY *entry = NULL;
|
||||
X509_NAME *name = NULL;
|
||||
char textbuf[80];
|
||||
int result;
|
||||
|
||||
textbuf[0] = '\0';
|
||||
if ((name = X509_NAME_new()) == NULL)
|
||||
err(1, "X509_NAME_new");
|
||||
if ((entry = X509_NAME_ENTRY_new()) == NULL)
|
||||
err(1, "X509_NAME_ENTRY_new");
|
||||
if (!X509_NAME_ENTRY_set_object(entry,
|
||||
OBJ_nid2obj(NID_commonName)))
|
||||
err(1, "X509_NAME_ENTRY_set_object");
|
||||
if (!X509_NAME_ENTRY_set_data(entry, test->encode_type,
|
||||
test->data, test->len))
|
||||
err(1, "X509_NAME_ENTRY_set_data");
|
||||
if (!X509_NAME_add_entry(name, entry, -1, 0))
|
||||
err(1, "X509_NAME_add_entry");
|
||||
if (test->len_to_pass == -1)
|
||||
result = X509_NAME_get_text_by_NID(name, NID_commonName,
|
||||
NULL, 0);
|
||||
else
|
||||
result = X509_NAME_get_text_by_NID(name, NID_commonName,
|
||||
textbuf, test->len_to_pass);
|
||||
if (result != test->expected_result) {
|
||||
fprintf(stderr,
|
||||
"Test %zu X509_GET_text_by_NID returned %d,"
|
||||
"expected %d\n", i, result, test->expected_result);
|
||||
failed++;
|
||||
}
|
||||
if (result != -1 &&
|
||||
strcmp(test->expected_string, textbuf) != 0) {
|
||||
fprintf(stderr,
|
||||
"Test %zu, X509_GET_text_by_NID returned bytes do"
|
||||
"not match \n", i);
|
||||
failed++;
|
||||
}
|
||||
X509_NAME_ENTRY_free(entry);
|
||||
X509_NAME_free(name);
|
||||
}
|
||||
return failed;
|
||||
}
|
||||
|
||||
int
|
||||
main(void)
|
||||
{
|
||||
int failed = 0;
|
||||
|
||||
failed |= test_x509_setters();
|
||||
/* failed |= */ test_x509_crl_setters();
|
||||
/* failed |= */ test_x509_req_setters();
|
||||
failed |= test_x509_name_get();
|
||||
|
||||
OPENSSL_cleanup();
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# $OpenBSD: airport,v 1.89 2023/04/21 00:37:10 kn Exp $
|
||||
# $OpenBSD: airport,v 1.90 2023/05/02 08:48:06 stsp Exp $
|
||||
# @(#)airport 8.1 (Berkeley) 6/8/93
|
||||
#
|
||||
# Some of this information from the Airport Search Engine at
|
||||
@ -374,6 +374,7 @@ CPR:Casper/Natrone County International, Wyoming, USA
|
||||
CPT:Cape Town International, Cape Town, South Africa
|
||||
CRD:Comodoro Rivadavia, Chubut, Argentina
|
||||
CRI:Crooked Island, Bahamas
|
||||
CRL:Brussels South / Gosselies, Charleroi, Belgium
|
||||
CRM:Charleston (WV) Yeager, South Carolina, USA
|
||||
CRP:Corpus Christi International, Texas, USA
|
||||
CRU:Carriacou Island, Grenada
|
||||
|
@ -3452,7 +3452,7 @@ struct atom_svid2_voltage_object_v4
|
||||
struct atom_voltage_object_header_v4 header; // voltage mode = VOLTAGE_OBJ_SVID2
|
||||
uint8_t loadline_psi1; // bit4:0= loadline setting ( Core Loadline trim and offset trim ), bit5=0:PSI1_L disable =1: PSI1_L enable
|
||||
uint8_t psi0_l_vid_thresd; // VR PSI0_L VID threshold
|
||||
uint8_t psi0_enable; //
|
||||
uint8_t psi0_enable;
|
||||
uint8_t maxvstep;
|
||||
uint8_t telemetry_offset;
|
||||
uint8_t telemetry_gain;
|
||||
|
@ -407,7 +407,7 @@ typedef struct _ATOM_ADJUST_MEMORY_CLOCK_FREQ
|
||||
|
||||
typedef struct _COMPUTE_MEMORY_ENGINE_PLL_PARAMETERS
|
||||
{
|
||||
ULONG ulClock; //When returen, it's the re-calculated clock based on given Fb_div Post_Div and ref_div
|
||||
ULONG ulClock; //When return, it's the re-calculated clock based on given Fb_div Post_Div and ref_div
|
||||
UCHAR ucAction; //0:reserved //1:Memory //2:Engine
|
||||
UCHAR ucReserved; //may expand to return larger Fbdiv later
|
||||
UCHAR ucFbDiv; //return value
|
||||
@ -428,14 +428,14 @@ typedef struct _COMPUTE_MEMORY_ENGINE_PLL_PARAMETERS_V2
|
||||
#define USE_NON_BUS_CLOCK_MASK 0x01000000 //Applicable to both memory and engine clock change, when set, it uses another clock as the temporary clock (engine uses memory and vice versa)
|
||||
#define USE_MEMORY_SELF_REFRESH_MASK 0x02000000 //Only applicable to memory clock change, when set, using memory self refresh during clock transition
|
||||
#define SKIP_INTERNAL_MEMORY_PARAMETER_CHANGE 0x04000000 //Only applicable to memory clock change, when set, the table will skip predefined internal memory parameter change
|
||||
#define FIRST_TIME_CHANGE_CLOCK 0x08000000 //Applicable to both memory and engine clock change,when set, it means this is 1st time to change clock after ASIC bootup
|
||||
#define FIRST_TIME_CHANGE_CLOCK 0x08000000 //Applicable to both memory and engine clock change, when set, it means this is 1st time to change clock after ASIC bootup
|
||||
#define SKIP_SW_PROGRAM_PLL 0x10000000 //Applicable to both memory and engine clock change, when set, it means the table will not program SPLL/MPLL
|
||||
#define USE_SS_ENABLED_PIXEL_CLOCK USE_NON_BUS_CLOCK_MASK
|
||||
|
||||
#define b3USE_NON_BUS_CLOCK_MASK 0x01 //Applicable to both memory and engine clock change, when set, it uses another clock as the temporary clock (engine uses memory and vice versa)
|
||||
#define b3USE_MEMORY_SELF_REFRESH 0x02 //Only applicable to memory clock change, when set, using memory self refresh during clock transition
|
||||
#define b3SKIP_INTERNAL_MEMORY_PARAMETER_CHANGE 0x04 //Only applicable to memory clock change, when set, the table will skip predefined internal memory parameter change
|
||||
#define b3FIRST_TIME_CHANGE_CLOCK 0x08 //Applicable to both memory and engine clock change,when set, it means this is 1st time to change clock after ASIC bootup
|
||||
#define b3FIRST_TIME_CHANGE_CLOCK 0x08 //Applicable to both memory and engine clock change,i when set, it means this is 1st time to change clock after ASIC bootup
|
||||
#define b3SKIP_SW_PROGRAM_PLL 0x10 //Applicable to both memory and engine clock change, when set, it means the table will not program SPLL/MPLL
|
||||
|
||||
typedef struct _ATOM_COMPUTE_CLOCK_FREQ
|
||||
@ -1711,9 +1711,9 @@ typedef struct _PIXEL_CLOCK_PARAMETERS_V6
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_BPP_MASK 0x0c
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_24BPP 0x00
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_36BPP 0x04
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_36BPP_V6 0x08 //for V6, the correct defintion for 36bpp should be 2 for 36bpp(2:1)
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_36BPP_V6 0x08 //for V6, the correct definition for 36bpp should be 2 for 36bpp(2:1)
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_30BPP 0x08
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_30BPP_V6 0x04 //for V6, the correct defintion for 30bpp should be 1 for 36bpp(5:4)
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_30BPP_V6 0x04 //for V6, the correct definition for 30bpp should be 1 for 36bpp(5:4)
|
||||
#define PIXEL_CLOCK_V6_MISC_HDMI_48BPP 0x0c
|
||||
#define PIXEL_CLOCK_V6_MISC_REF_DIV_SRC 0x10
|
||||
#define PIXEL_CLOCK_V6_MISC_GEN_DPREFCLK 0x40
|
||||
@ -2221,7 +2221,7 @@ typedef struct _SET_VOLTAGE_PARAMETERS
|
||||
typedef struct _SET_VOLTAGE_PARAMETERS_V2
|
||||
{
|
||||
UCHAR ucVoltageType; // To tell which voltage to set up, VDDC/MVDDC/MVDDQ
|
||||
UCHAR ucVoltageMode; // Not used, maybe use for state machine for differen power mode
|
||||
UCHAR ucVoltageMode; // Not used, maybe use for state machine for different power mode
|
||||
USHORT usVoltageLevel; // real voltage level
|
||||
}SET_VOLTAGE_PARAMETERS_V2;
|
||||
|
||||
@ -2247,7 +2247,7 @@ typedef struct _SET_VOLTAGE_PARAMETERS_V1_3
|
||||
#define ATOM_GET_VOLTAGE_LEVEL 6 //Get Voltage level from vitual voltage ID, not used for SetVoltage v1.4
|
||||
#define ATOM_GET_LEAKAGE_ID 8 //Get Leakage Voltage Id ( starting from SMU7x IP ), SetVoltage v1.4
|
||||
|
||||
// define vitual voltage id in usVoltageLevel
|
||||
// define virtual voltage id in usVoltageLevel
|
||||
#define ATOM_VIRTUAL_VOLTAGE_ID0 0xff01
|
||||
#define ATOM_VIRTUAL_VOLTAGE_ID1 0xff02
|
||||
#define ATOM_VIRTUAL_VOLTAGE_ID2 0xff03
|
||||
@ -2346,7 +2346,7 @@ typedef struct _TV_ENCODER_CONTROL_PS_ALLOCATION
|
||||
/****************************************************************************/
|
||||
typedef struct _ATOM_MASTER_LIST_OF_DATA_TABLES
|
||||
{
|
||||
USHORT UtilityPipeLine; // Offest for the utility to get parser info,Don't change this position!
|
||||
USHORT UtilityPipeLine; // Offest for the utility to get parser info, Don't change this position!
|
||||
USHORT MultimediaCapabilityInfo; // Only used by MM Lib,latest version 1.1, not configuable from Bios, need to include the table to build Bios
|
||||
USHORT MultimediaConfigInfo; // Only used by MM Lib,latest version 2.1, not configuable from Bios, need to include the table to build Bios
|
||||
USHORT StandardVESA_Timing; // Only used by Bios
|
||||
@ -2891,7 +2891,7 @@ ulOtherDisplayMisc: [15:8]- Bootup LCD Expansion selection; 0-center, 1-full pan
|
||||
ulDDISlot1Config: Describes the PCIE lane configuration on this DDI PCIE slot (ADD2 card) or connector (Mobile design).
|
||||
[3:0] - Bit vector to indicate PCIE lane config of the DDI slot/connector on chassis (bit 0=1 lane 3:0; bit 1=1 lane 7:4; bit 2=1 lane 11:8; bit 3=1 lane 15:12)
|
||||
[7:4] - Bit vector to indicate PCIE lane config of the same DDI slot/connector on docking station (bit 4=1 lane 3:0; bit 5=1 lane 7:4; bit 6=1 lane 11:8; bit 7=1 lane 15:12)
|
||||
When a DDI connector is not "paired" (meaming two connections mutualexclusive on chassis or docking, only one of them can be connected at one time.
|
||||
When a DDI connector is not "paired" (meaning two connections mutually exclusive on chassis or docking, only one of them can be connected at one time.
|
||||
in both chassis and docking, SBIOS has to duplicate the same PCIE lane info from chassis to docking or vice versa. For example:
|
||||
one DDI connector is only populated in docking with PCIE lane 8-11, but there is no paired connection on chassis, SBIOS has to copy bit 6 to bit 2.
|
||||
|
||||
@ -3584,7 +3584,7 @@ typedef struct _ATOM_LCD_INFO_V13
|
||||
//uceDPToLVDSRxId
|
||||
#define eDP_TO_LVDS_RX_DISABLE 0x00 // no eDP->LVDS translator chip
|
||||
#define eDP_TO_LVDS_COMMON_ID 0x01 // common eDP->LVDS translator chip without AMD SW init
|
||||
#define eDP_TO_LVDS_RT_ID 0x02 // RT tanslator which require AMD SW init
|
||||
#define eDP_TO_LVDS_RT_ID 0x02 // RT translator which require AMD SW init
|
||||
|
||||
typedef struct _ATOM_PATCH_RECORD_MODE
|
||||
{
|
||||
@ -3825,11 +3825,11 @@ typedef struct _ATOM_DPCD_INFO
|
||||
// note2: From RV770, the memory is more than 32bit addressable, so we will change
|
||||
// ucTableFormatRevision=1,ucTableContentRevision=4, the structure remains
|
||||
// exactly same as 1.1 and 1.2 (1.3 is never in use), but ulStartAddrUsedByFirmware
|
||||
// (in offset to start of memory address) is KB aligned instead of byte aligend.
|
||||
// (in offset to start of memory address) is KB aligned instead of byte aligned.
|
||||
/***********************************************************************************/
|
||||
// Note3:
|
||||
/* If we change usReserved to "usFBUsedbyDrvInKB", then to VBIOS this usFBUsedbyDrvInKB is a predefined, unchanged constant across VGA or non VGA adapter,
|
||||
for CAIL, The size of FB access area is known, only thing missing is the Offset of FB Access area, so we can have:
|
||||
for CAIL, The size of FB access area is known, only thing missing is the Offset of FB Access area, so we can have:
|
||||
|
||||
If (ulStartAddrUsedByFirmware!=0)
|
||||
FBAccessAreaOffset= ulStartAddrUsedByFirmware - usFBUsedbyDrvInKB;
|
||||
@ -3942,9 +3942,9 @@ typedef struct _ATOM_GPIO_INFO
|
||||
|
||||
#define ATOM_CV_LINE3_ASPECTRATIO_EXIST 0x80 //bit 7
|
||||
|
||||
//GPIO bit index in gpio setting per mode value, also represend the block no. in gpio blocks.
|
||||
#define ATOM_GPIO_INDEX_LINE3_ASPECRATIO_GPIO_A 3 //bit 3 in uc480i/uc480p/uc720p/uc1080i, which represend the default gpio bit setting for the mode.
|
||||
#define ATOM_GPIO_INDEX_LINE3_ASPECRATIO_GPIO_B 4 //bit 4 in uc480i/uc480p/uc720p/uc1080i, which represend the default gpio bit setting for the mode.
|
||||
//GPIO bit index in gpio setting per mode value, also represent the block no. in gpio blocks.
|
||||
#define ATOM_GPIO_INDEX_LINE3_ASPECRATIO_GPIO_A 3 //bit 3 in uc480i/uc480p/uc720p/uc1080i, which represent the default gpio bit setting for the mode.
|
||||
#define ATOM_GPIO_INDEX_LINE3_ASPECRATIO_GPIO_B 4 //bit 4 in uc480i/uc480p/uc720p/uc1080i, which represent the default gpio bit setting for the mode.
|
||||
|
||||
|
||||
typedef struct _ATOM_COMPONENT_VIDEO_INFO
|
||||
@ -4020,7 +4020,7 @@ typedef struct _ATOM_DISPLAY_OBJECT_PATH
|
||||
USHORT usSize; //the size of ATOM_DISPLAY_OBJECT_PATH
|
||||
USHORT usConnObjectId; //Connector Object ID
|
||||
USHORT usGPUObjectId; //GPU ID
|
||||
USHORT usGraphicObjIds[1]; //1st Encoder Obj source from GPU to last Graphic Obj destinate to connector.
|
||||
USHORT usGraphicObjIds[1]; //1st Encoder Obj source from GPU to last Graphic Obj destinate to connector.
|
||||
}ATOM_DISPLAY_OBJECT_PATH;
|
||||
|
||||
typedef struct _ATOM_DISPLAY_EXTERNAL_OBJECT_PATH
|
||||
@ -4191,12 +4191,12 @@ typedef struct _ATOM_COMMON_RECORD_HEADER
|
||||
#define ATOM_ROUTER_DATA_CLOCK_PATH_SELECT_RECORD_TYPE 15
|
||||
#define ATOM_CONNECTOR_HPDPIN_LUT_RECORD_TYPE 16 //This is for the case when connectors are not known to object table
|
||||
#define ATOM_CONNECTOR_AUXDDC_LUT_RECORD_TYPE 17 //This is for the case when connectors are not known to object table
|
||||
#define ATOM_OBJECT_LINK_RECORD_TYPE 18 //Once this record is present under one object, it indicats the oobject is linked to another obj described by the record
|
||||
#define ATOM_OBJECT_LINK_RECORD_TYPE 18 //Once this record is present under one object, it indicats the object is linked to another obj described by the record
|
||||
#define ATOM_CONNECTOR_REMOTE_CAP_RECORD_TYPE 19
|
||||
#define ATOM_ENCODER_CAP_RECORD_TYPE 20
|
||||
#define ATOM_BRACKET_LAYOUT_RECORD_TYPE 21
|
||||
|
||||
//Must be updated when new record type is added,equal to that record definition!
|
||||
//Must be updated when new record type is added, equal to that record definition!
|
||||
#define ATOM_MAX_OBJECT_RECORD_NUMBER ATOM_BRACKET_LAYOUT_RECORD_TYPE
|
||||
|
||||
typedef struct _ATOM_I2C_RECORD
|
||||
@ -4611,7 +4611,7 @@ typedef struct _ATOM_GPIO_VOLTAGE_OBJECT_V3
|
||||
{
|
||||
ATOM_VOLTAGE_OBJECT_HEADER_V3 sHeader; // voltage mode = VOLTAGE_OBJ_GPIO_LUT or VOLTAGE_OBJ_PHASE_LUT
|
||||
UCHAR ucVoltageGpioCntlId; // default is 0 which indicate control through CG VID mode
|
||||
UCHAR ucGpioEntryNum; // indiate the entry numbers of Votlage/Gpio value Look up table
|
||||
UCHAR ucGpioEntryNum; // indicate the entry numbers of Voltage/Gpio value Look up table
|
||||
UCHAR ucPhaseDelay; // phase delay in unit of micro second
|
||||
UCHAR ucReserved;
|
||||
ULONG ulGpioMaskVal; // GPIO Mask value
|
||||
@ -5139,7 +5139,7 @@ usNBP0Voltage: VID for voltage on NB P0 State
|
||||
usNBP1Voltage: VID for voltage on NB P1 State
|
||||
usNBP2Voltage: VID for voltage on NB P2 State
|
||||
usNBP3Voltage: VID for voltage on NB P3 State
|
||||
usBootUpNBVoltage: Voltage Index of GNB voltage configured by SBIOS, which is suffcient to support VBIOS DISPCLK requirement.
|
||||
usBootUpNBVoltage: Voltage Index of GNB voltage configured by SBIOS, which is sufficient to support VBIOS DISPCLK requirement.
|
||||
usExtDispConnInfoOffset: Offset to sExtDispConnInfo inside the structure
|
||||
usPanelRefreshRateRange: Bit vector for LCD supported refresh rate range. If DRR is requestd by the platform, at least two bits need to be set
|
||||
to indicate a range.
|
||||
@ -5152,9 +5152,9 @@ ucUMAChannelNumber: System memory channel numbers.
|
||||
ulCSR_M3_ARB_CNTL_DEFAULT[10]: Arrays with values for CSR M3 arbiter for default
|
||||
ulCSR_M3_ARB_CNTL_UVD[10]: Arrays with values for CSR M3 arbiter for UVD playback.
|
||||
ulCSR_M3_ARB_CNTL_FS3D[10]: Arrays with values for CSR M3 arbiter for Full Screen 3D applications.
|
||||
sAvail_SCLK[5]: Arrays to provide availabe list of SLCK and corresponding voltage, order from low to high
|
||||
sAvail_SCLK[5]: Arrays to provide available list of SLCK and corresponding voltage, order from low to high
|
||||
ulGMCRestoreResetTime: GMC power restore and GMC reset time to calculate data reconnection latency. Unit in ns.
|
||||
ulMinimumNClk: Minimum NCLK speed among all NB-Pstates to calcualte data reconnection latency. Unit in 10kHz.
|
||||
ulMinimumNClk: Minimum NCLK speed among all NB-Pstates to calculate data reconnection latency. Unit in 10kHz.
|
||||
ulIdleNClk: NCLK speed while memory runs in self-refresh state. Unit in 10kHz.
|
||||
ulDDR_DLL_PowerUpTime: DDR PHY DLL power up time. Unit in ns.
|
||||
ulDDR_PLL_PowerUpTime: DDR PHY PLL power up time. Unit in ns.
|
||||
@ -5206,7 +5206,7 @@ ucLVDSPwrOffSeqBLONtoVARY_BL_in4Ms:
|
||||
|
||||
ucMinAllowedBL_Level: Lowest LCD backlight PWM level. This is customer platform specific parameters. By default it is 0.
|
||||
|
||||
ulNbpStateMemclkFreq[4]: system memory clock frequncey in unit of 10Khz in different NB pstate.
|
||||
ulNbpStateMemclkFreq[4]: system memory clock frequency in unit of 10Khz in different NB pstate.
|
||||
|
||||
**********************************************************************************************************************/
|
||||
|
||||
@ -5312,7 +5312,7 @@ usRequestedPWMFreqInHz: When it's set to 0x0 by SBIOS: the LCD BackLig
|
||||
Any attempt to change BL using VBIOS function or enable VariBri from PP table is not effective since ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU==0;
|
||||
|
||||
When it's set to a non-zero frequency, the BackLight is controlled by GPU (SW) in one of two ways below:
|
||||
1. SW uses the GPU BL PWM output to control the BL, in chis case, this non-zero frequency determines what freq GPU should use;
|
||||
1. SW uses the GPU BL PWM output to control the BL, in this case, this non-zero frequency determines what freq GPU should use;
|
||||
VBIOS will set up proper PWM frequency and ATOM_BIOS_INFO_BL_CONTROLLED_BY_GPU==1,as the result,
|
||||
Changing BL using VBIOS function is functional in both driver and non-driver present environment;
|
||||
and enabling VariBri under the driver environment from PP table is optional.
|
||||
@ -5326,7 +5326,7 @@ usRequestedPWMFreqInHz: When it's set to 0x0 by SBIOS: the LCD BackLig
|
||||
|
||||
ucHtcTmpLmt: Refer to D18F3x64 bit[22:16], HtcTmpLmt. Threshold on value to enter HTC_active state.
|
||||
ucHtcHystLmt: Refer to D18F3x64 bit[27:24], HtcHystLmt.
|
||||
To calculate threshold off value to exit HTC_active state, which is Threshold on vlaue minus ucHtcHystLmt.
|
||||
To calculate threshold off value to exit HTC_active state, which is Threshold on value minus ucHtcHystLmt.
|
||||
|
||||
ulSystemConfig: Bit[0]=0: PCIE Power Gating Disabled
|
||||
=1: PCIE Power Gating Enabled
|
||||
@ -5339,7 +5339,7 @@ ulSystemConfig: Bit[0]=0: PCIE Power Gating Disabled
|
||||
ulCPUCapInfo: TBD
|
||||
|
||||
usExtDispConnInfoOffset: Offset to sExtDispConnInfo inside the structure
|
||||
usPanelRefreshRateRange: Bit vector for LCD supported refresh rate range. If DRR is requestd by the platform, at least two bits need to be set
|
||||
usPanelRefreshRateRange: Bit vector for LCD supported refresh rate range. If DRR is requested by the platform, at least two bits need to be set
|
||||
to indicate a range.
|
||||
SUPPORTED_LCD_REFRESHRATE_30Hz 0x0004
|
||||
SUPPORTED_LCD_REFRESHRATE_40Hz 0x0008
|
||||
@ -5351,7 +5351,7 @@ ucUMAChannelNumber: System memory channel numbers.
|
||||
|
||||
strVBIOSMsg[40]: VBIOS boot up customized message string
|
||||
|
||||
sAvail_SCLK[5]: Arrays to provide availabe list of SLCK and corresponding voltage, order from low to high
|
||||
sAvail_SCLK[5]: Arrays to provide available list of SLCK and corresponding voltage, order from low to high
|
||||
|
||||
ulGMCRestoreResetTime: GMC power restore and GMC reset time to calculate data reconnection latency. Unit in ns.
|
||||
ulIdleNClk: NCLK speed while memory runs in self-refresh state, used to calculate self-refresh latency. Unit in 10kHz.
|
||||
@ -5993,7 +5993,7 @@ typedef struct _ATOM_ASIC_INTERNAL_SS_INFO_V3
|
||||
#define GET_DATA_TABLE_MINOR_REVISION GET_COMMAND_TABLE_PARAMETER_REVISION
|
||||
|
||||
/****************************************************************************/
|
||||
//Portion III: Definitinos only used in VBIOS
|
||||
//Portion III: Definitions only used in VBIOS
|
||||
/****************************************************************************/
|
||||
#define ATOM_DAC_SRC 0x80
|
||||
#define ATOM_SRC_DAC1 0
|
||||
@ -6396,7 +6396,7 @@ typedef struct _ATOM_VRAM_MODULE_V1
|
||||
USHORT usReserved;
|
||||
UCHAR ucExtMemoryID; // An external indicator (by hardcode, callback or pin) to tell what is the current memory module
|
||||
UCHAR ucMemoryType; // [7:4]=0x1:DDR1;=0x2:DDR2;=0x3:DDR3;=0x4:DDR4;[3:0] reserved;
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vender
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vendor
|
||||
UCHAR ucMemoryDeviceCfg; // [7:4]=0x0:4M;=0x1:8M;=0x2:16M;0x3:32M....[3:0]=0x0:x4;=0x1:x8;=0x2:x16;=0x3:x32...
|
||||
UCHAR ucRow; // Number of Row,in power of 2;
|
||||
UCHAR ucColumn; // Number of Column,in power of 2;
|
||||
@ -6423,7 +6423,7 @@ typedef struct _ATOM_VRAM_MODULE_V2
|
||||
USHORT usReserved;
|
||||
UCHAR ucExtMemoryID; // An external indicator (by hardcode, callback or pin) to tell what is the current memory module
|
||||
UCHAR ucMemoryType; // [7:4]=0x1:DDR1;=0x2:DDR2;=0x3:DDR3;=0x4:DDR4;[3:0] - must not be used for now;
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vender. If not predefined, vendor detection table gets executed
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vendor. If not predefined, vendor detection table gets executed
|
||||
UCHAR ucMemoryDeviceCfg; // [7:4]=0x0:4M;=0x1:8M;=0x2:16M;0x3:32M....[3:0]=0x0:x4;=0x1:x8;=0x2:x16;=0x3:x32...
|
||||
UCHAR ucRow; // Number of Row,in power of 2;
|
||||
UCHAR ucColumn; // Number of Column,in power of 2;
|
||||
@ -6555,7 +6555,7 @@ typedef struct _ATOM_MEMORY_FORMAT
|
||||
USHORT usDDR3_MR3; // Used for DDR3 memory
|
||||
};
|
||||
UCHAR ucMemoryType; // [7:4]=0x1:DDR1;=0x2:DDR2;=0x3:DDR3;=0x4:DDR4;[3:0] - must not be used for now;
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vender. If not predefined, vendor detection table gets executed
|
||||
UCHAR ucMemoryVenderID; // Predefined,never change across designs or memory type/vendor. If not predefined, vendor detection table gets executed
|
||||
UCHAR ucRow; // Number of Row,in power of 2;
|
||||
UCHAR ucColumn; // Number of Column,in power of 2;
|
||||
UCHAR ucBank; // Nunber of Bank;
|
||||
@ -6565,7 +6565,7 @@ typedef struct _ATOM_MEMORY_FORMAT
|
||||
UCHAR ucRefreshRateFactor; // memory refresh rate in unit of ms
|
||||
UCHAR ucDensity; // _8Mx32, _16Mx32, _16Mx16, _32Mx16
|
||||
UCHAR ucPreamble; //[7:4] Write Preamble, [3:0] Read Preamble
|
||||
UCHAR ucMemAttrib; // Memory Device Addribute, like RDBI/WDBI etc
|
||||
UCHAR ucMemAttrib; // Memory Device Attribute, like RDBI/WDBI etc
|
||||
ATOM_MEMORY_TIMING_FORMAT asMemTiming[5]; //Memory Timing block sort from lower clock to higher clock
|
||||
}ATOM_MEMORY_FORMAT;
|
||||
|
||||
@ -6579,7 +6579,7 @@ typedef struct _ATOM_VRAM_MODULE_V3
|
||||
UCHAR ucExtMemoryID; // An external indicator (by hardcode, callback or pin) to tell what is the current memory module
|
||||
UCHAR ucChannelNum; // board dependent parameter:Number of channel;
|
||||
UCHAR ucChannelSize; // board dependent parameter:32bit or 64bit
|
||||
UCHAR ucVREFI; // board dependnt parameter: EXT or INT +160mv to -140mv
|
||||
UCHAR ucVREFI; // board dependent parameter: EXT or INT +160mv to -140mv
|
||||
UCHAR ucNPL_RT; // board dependent parameter:NPL round trip delay, used for calculate memory timing parameters
|
||||
UCHAR ucFlag; // To enable/disable functionalities based on memory type
|
||||
ATOM_MEMORY_FORMAT asMemory; // describ all of video memory parameters from memory spec
|
||||
@ -7092,7 +7092,7 @@ typedef struct _ATOM_DISP_OUT_INFO_V3
|
||||
UCHAR ucCoreRefClkSource; // value of CORE_REF_CLK_SOURCE
|
||||
UCHAR ucDispCaps;
|
||||
UCHAR ucReserved[2];
|
||||
ASIC_TRANSMITTER_INFO_V2 asTransmitterInfo[1]; // for alligment only
|
||||
ASIC_TRANSMITTER_INFO_V2 asTransmitterInfo[1]; // for alignment only
|
||||
}ATOM_DISP_OUT_INFO_V3;
|
||||
|
||||
//ucDispCaps
|
||||
@ -7382,7 +7382,7 @@ typedef struct _GFX_HAVESTING_PARAMETERS {
|
||||
#define GFX_HARVESTING_PRIM_ID 2
|
||||
|
||||
/****************************************************************************/
|
||||
//Portion VI: Definitinos for vbios MC scratch registers that driver used
|
||||
//Portion VI: Definitions for vbios MC scratch registers that driver used
|
||||
/****************************************************************************/
|
||||
|
||||
#define MC_MISC0__MEMORY_TYPE_MASK 0xF0000000
|
||||
@ -7403,7 +7403,7 @@ typedef struct _GFX_HAVESTING_PARAMETERS {
|
||||
#define ATOM_MEM_TYPE_DDR3_STRING "DDR3"
|
||||
|
||||
/****************************************************************************/
|
||||
//Portion VI: Definitinos being oboselete
|
||||
//Portion VI: Definitions being obsolete
|
||||
/****************************************************************************/
|
||||
|
||||
//==========================================================================================
|
||||
@ -7597,7 +7597,7 @@ typedef struct _ATOM_XTMDS_INFO
|
||||
ATOM_I2C_ID_CONFIG_ACCESS sucI2cId; //Point the ID on which I2C is used to control external chip
|
||||
UCHAR ucXtransimitterID;
|
||||
UCHAR ucSupportedLink; // Bit field, bit0=1, single link supported;bit1=1,dual link supported
|
||||
UCHAR ucSequnceAlterID; // Even with the same external TMDS asic, it's possible that the program seqence alters
|
||||
UCHAR ucSequnceAlterID; // Even with the same external TMDS asic, it's possible that the program sequence alters
|
||||
// due to design. This ID is used to alert driver that the sequence is not "standard"!
|
||||
UCHAR ucMasterAddress; // Address to control Master xTMDS Chip
|
||||
UCHAR ucSlaveAddress; // Address to control Slave xTMDS Chip
|
||||
@ -7705,12 +7705,12 @@ typedef struct _ATOM_POWERMODE_INFO_V3
|
||||
ULONG ulMiscInfo2;
|
||||
ULONG ulEngineClock;
|
||||
ULONG ulMemoryClock;
|
||||
UCHAR ucVoltageDropIndex; // index to Core (VDDC) votage table
|
||||
UCHAR ucVoltageDropIndex; // index to Core (VDDC) voltage table
|
||||
UCHAR ucSelectedPanel_RefreshRate;// panel refresh rate
|
||||
UCHAR ucMinTemperature;
|
||||
UCHAR ucMaxTemperature;
|
||||
UCHAR ucNumPciELanes; // number of PCIE lanes
|
||||
UCHAR ucVDDCI_VoltageDropIndex; // index to VDDCI votage table
|
||||
UCHAR ucVDDCI_VoltageDropIndex; // index to VDDCI voltage table
|
||||
}ATOM_POWERMODE_INFO_V3;
|
||||
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: if_aq_pci.c,v 1.21 2023/05/01 08:25:55 kettenis Exp $ */
|
||||
/* $OpenBSD: if_aq_pci.c,v 1.22 2023/05/02 12:32:22 kettenis Exp $ */
|
||||
/* $NetBSD: if_aq.c,v 1.27 2021/06/16 00:21:18 riastradh Exp $ */
|
||||
|
||||
/*
|
||||
@ -1970,7 +1970,7 @@ aq2_fw_reboot(struct aq_softc *sc)
|
||||
snprintf(buf, sizeof(buf), "(unknown 0x%08x)", v);
|
||||
break;
|
||||
}
|
||||
printf(", Atlantic2 %s, F/W version %d.%d.%d\n", buf,
|
||||
printf(", Atlantic2 %s, F/W version %d.%d.%d", buf,
|
||||
FW_VERSION_MAJOR(sc), FW_VERSION_MINOR(sc), FW_VERSION_BUILD(sc));
|
||||
|
||||
aq2_interface_buffer_read(sc, AQ2_FW_INTERFACE_OUT_FILTER_CAPS_REG,
|
||||
|
@ -526,7 +526,7 @@ typedef uLong FAR uLongf;
|
||||
#if !defined(_WIN32) && defined(Z_LARGE64)
|
||||
# define z_off64_t off64_t
|
||||
#else
|
||||
# if defined(_WIN32) && !defined(__GNUC__) && !defined(Z_SOLO)
|
||||
# if defined(_WIN32) && !defined(__GNUC__)
|
||||
# define z_off64_t __int64
|
||||
# else
|
||||
# define z_off64_t z_off_t
|
||||
|
@ -729,7 +729,7 @@ ZEXTERN int ZEXPORT deflateParams(z_streamp strm,
|
||||
Then no more input data should be provided before the deflateParams() call.
|
||||
If this is done, the old level and strategy will be applied to the data
|
||||
compressed before deflateParams(), and the new level and strategy will be
|
||||
applied to the the data compressed after deflateParams().
|
||||
applied to the data compressed after deflateParams().
|
||||
|
||||
deflateParams returns Z_OK on success, Z_STREAM_ERROR if the source stream
|
||||
state was inconsistent or if a parameter was invalid, or Z_BUF_ERROR if
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: nd6.c,v 1.272 2023/04/05 23:01:03 kn Exp $ */
|
||||
/* $OpenBSD: nd6.c,v 1.273 2023/05/02 06:06:13 bluhm Exp $ */
|
||||
/* $KAME: nd6.c,v 1.280 2002/06/08 19:52:07 itojun Exp $ */
|
||||
|
||||
/*
|
||||
@ -303,7 +303,8 @@ nd6_llinfo_timer(struct rtentry *rt)
|
||||
if (ln->ln_asked < nd6_mmaxtries) {
|
||||
ln->ln_asked++;
|
||||
nd6_llinfo_settimer(ln, RETRANS_TIMER / 1000);
|
||||
nd6_ns_output(ifp, NULL, &dst->sin6_addr, ln, 0);
|
||||
nd6_ns_output(ifp, NULL, &dst->sin6_addr,
|
||||
&ln->ln_saddr6, 0);
|
||||
} else {
|
||||
struct mbuf_list ml;
|
||||
struct mbuf *m;
|
||||
@ -336,6 +337,7 @@ nd6_llinfo_timer(struct rtentry *rt)
|
||||
ln = NULL;
|
||||
}
|
||||
break;
|
||||
|
||||
case ND6_LLINFO_REACHABLE:
|
||||
if (!ND6_LLINFO_PERMANENT(ln)) {
|
||||
ln->ln_state = ND6_LLINFO_STALE;
|
||||
@ -357,14 +359,16 @@ nd6_llinfo_timer(struct rtentry *rt)
|
||||
ln->ln_asked = 1;
|
||||
ln->ln_state = ND6_LLINFO_PROBE;
|
||||
nd6_llinfo_settimer(ln, RETRANS_TIMER / 1000);
|
||||
nd6_ns_output(ifp, &dst->sin6_addr, &dst->sin6_addr, ln, 0);
|
||||
nd6_ns_output(ifp, &dst->sin6_addr, &dst->sin6_addr,
|
||||
&ln->ln_saddr6, 0);
|
||||
break;
|
||||
|
||||
case ND6_LLINFO_PROBE:
|
||||
if (ln->ln_asked < nd6_umaxtries) {
|
||||
ln->ln_asked++;
|
||||
nd6_llinfo_settimer(ln, RETRANS_TIMER / 1000);
|
||||
nd6_ns_output(ifp, &dst->sin6_addr,
|
||||
&dst->sin6_addr, ln, 0);
|
||||
nd6_ns_output(ifp, &dst->sin6_addr, &dst->sin6_addr,
|
||||
&ln->ln_saddr6, 0);
|
||||
} else {
|
||||
nd6_free(rt);
|
||||
ln = NULL;
|
||||
@ -1247,7 +1251,9 @@ nd6_resolve(struct ifnet *ifp, struct rtentry *rt0, struct mbuf *m,
|
||||
struct sockaddr_dl *sdl;
|
||||
struct rtentry *rt;
|
||||
struct llinfo_nd6 *ln = NULL;
|
||||
struct in6_addr saddr6;
|
||||
time_t uptime;
|
||||
int solicit = 0;
|
||||
|
||||
if (m->m_flags & M_MCAST) {
|
||||
ETHER_MAP_IPV6_MULTICAST(&satosin6(dst)->sin6_addr, desten);
|
||||
@ -1357,9 +1363,13 @@ nd6_resolve(struct ifnet *ifp, struct rtentry *rt0, struct mbuf *m,
|
||||
if (!ND6_LLINFO_PERMANENT(ln) && ln->ln_asked == 0) {
|
||||
ln->ln_asked++;
|
||||
nd6_llinfo_settimer(ln, RETRANS_TIMER / 1000);
|
||||
nd6_ns_output(ifp, NULL, &satosin6(dst)->sin6_addr, ln, 0);
|
||||
saddr6 = ln->ln_saddr6;
|
||||
solicit = 1;
|
||||
}
|
||||
KERNEL_UNLOCK();
|
||||
|
||||
if (solicit)
|
||||
nd6_ns_output(ifp, NULL, &satosin6(dst)->sin6_addr, &saddr6, 0);
|
||||
return (EAGAIN);
|
||||
|
||||
bad:
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: nd6.h,v 1.97 2023/04/05 21:51:47 bluhm Exp $ */
|
||||
/* $OpenBSD: nd6.h,v 1.98 2023/05/02 06:06:13 bluhm Exp $ */
|
||||
/* $KAME: nd6.h,v 1.95 2002/06/08 11:31:06 itojun Exp $ */
|
||||
|
||||
/*
|
||||
@ -141,7 +141,7 @@ void nd6_na_output(struct ifnet *, const struct in6_addr *,
|
||||
const struct in6_addr *, u_long, int, struct sockaddr *);
|
||||
void nd6_ns_input(struct mbuf *, int, int);
|
||||
void nd6_ns_output(struct ifnet *, const struct in6_addr *,
|
||||
const struct in6_addr *, const struct llinfo_nd6 *, int);
|
||||
const struct in6_addr *, const struct in6_addr *, int);
|
||||
caddr_t nd6_ifptomac(struct ifnet *);
|
||||
void nd6_dad_start(struct ifaddr *);
|
||||
void nd6_dad_stop(struct ifaddr *);
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: nd6_nbr.c,v 1.146 2023/04/28 14:09:06 phessler Exp $ */
|
||||
/* $OpenBSD: nd6_nbr.c,v 1.147 2023/05/02 06:06:13 bluhm Exp $ */
|
||||
/* $KAME: nd6_nbr.c,v 1.61 2001/02/10 16:06:14 jinmei Exp $ */
|
||||
|
||||
/*
|
||||
@ -360,7 +360,7 @@ nd6_ns_input(struct mbuf *m, int off, int icmp6len)
|
||||
*/
|
||||
void
|
||||
nd6_ns_output(struct ifnet *ifp, const struct in6_addr *daddr6,
|
||||
const struct in6_addr *taddr6, const struct llinfo_nd6 *ln, int dad)
|
||||
const struct in6_addr *taddr6, const struct in6_addr *saddr6, int dad)
|
||||
{
|
||||
struct mbuf *m;
|
||||
struct ip6_hdr *ip6;
|
||||
@ -423,7 +423,7 @@ nd6_ns_output(struct ifnet *ifp, const struct in6_addr *daddr6,
|
||||
bzero(&dst_sa, sizeof(dst_sa));
|
||||
src_sa.sin6_family = dst_sa.sin6_family = AF_INET6;
|
||||
src_sa.sin6_len = dst_sa.sin6_len = sizeof(struct sockaddr_in6);
|
||||
if (daddr6)
|
||||
if (daddr6 != NULL)
|
||||
dst_sa.sin6_addr = *daddr6;
|
||||
else {
|
||||
dst_sa.sin6_addr.s6_addr16[0] = __IPV6_ADDR_INT16_MLL;
|
||||
@ -451,14 +451,13 @@ nd6_ns_output(struct ifnet *ifp, const struct in6_addr *daddr6,
|
||||
* - if taddr is link local saddr6 must be link local as well
|
||||
* Otherwise, we perform the source address selection as usual.
|
||||
*/
|
||||
if (ln != NULL)
|
||||
src_sa.sin6_addr = ln->ln_saddr6;
|
||||
if (saddr6 != NULL)
|
||||
src_sa.sin6_addr = *saddr6;
|
||||
|
||||
if (!IN6_IS_ADDR_LINKLOCAL(taddr6) ||
|
||||
IN6_IS_ADDR_UNSPECIFIED(&src_sa.sin6_addr) ||
|
||||
IN6_IS_ADDR_LINKLOCAL(&src_sa.sin6_addr) ||
|
||||
!in6ifa_ifpwithaddr(ifp, &src_sa.sin6_addr)) {
|
||||
|
||||
struct rtentry *rt;
|
||||
|
||||
rt = rtalloc(sin6tosa(&dst_sa), RT_RESOLVE,
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: ttymsg.c,v 1.20 2021/10/24 21:24:17 deraadt Exp $ */
|
||||
/* $OpenBSD: ttymsg.c,v 1.21 2023/05/02 09:51:22 tb Exp $ */
|
||||
/* $NetBSD: ttymsg.c,v 1.3 1994/11/17 07:17:55 jtc Exp $ */
|
||||
|
||||
/*
|
||||
@ -54,11 +54,7 @@ char *ttymsg(struct iovec *, int, char *, int);
|
||||
* ignored (exclusive-use, lack of permission, etc.).
|
||||
*/
|
||||
char *
|
||||
ttymsg(iov, iovcnt, line, tmout)
|
||||
struct iovec *iov;
|
||||
int iovcnt;
|
||||
char *line;
|
||||
int tmout;
|
||||
ttymsg(struct iovec *iov, int iovcnt, char *line, int tmout)
|
||||
{
|
||||
static char device[MAXNAMLEN] = _PATH_DEV;
|
||||
static char errbuf[1024];
|
||||
|
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: vmctl.c,v 1.87 2023/04/28 19:46:41 dv Exp $ */
|
||||
/* $OpenBSD: vmctl.c,v 1.88 2023/05/02 13:02:51 jsg Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org>
|
||||
@ -202,7 +202,7 @@ vm_start(uint32_t start_id, const char *name, size_t memsize, int nnics,
|
||||
imsg_compose(ibuf, IMSG_VMDOP_START_VM_REQUEST, 0, 0, vmc->vmc_kernel,
|
||||
vmc, sizeof(struct vmop_create_params));
|
||||
|
||||
free(vcp);
|
||||
free(vmc);
|
||||
return (0);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user