Am 13.02.2017 um 13:46 schrieb Tom St Denis: > Adds mullins, kabini, and hawaii ASICs to the library. > > Signed-off-by: Tom St Denis <tom.stdenis at amd.com> Acked-by: Christian König <christian.koenig at amd.com>. > --- > src/lib/asic/CMakeLists.txt | 3 +++ > src/lib/asic/hawaii.c | 40 ++++++++++++++++++++++++++++++++++++++++ > src/lib/asic/kabini.c | 40 ++++++++++++++++++++++++++++++++++++++++ > src/lib/asic/mullins.c | 40 ++++++++++++++++++++++++++++++++++++++++ > src/lib/discover_by_did.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ > src/lib/discover_by_name.c | 3 +++ > src/umr.h | 3 +++ > 7 files changed, 173 insertions(+) > create mode 100644 src/lib/asic/hawaii.c > create mode 100644 src/lib/asic/kabini.c > create mode 100644 src/lib/asic/mullins.c > > diff --git a/src/lib/asic/CMakeLists.txt b/src/lib/asic/CMakeLists.txt > index 6cfec309b6a5..07e9ad8cca4f 100644 > --- a/src/lib/asic/CMakeLists.txt > +++ b/src/lib/asic/CMakeLists.txt > @@ -6,7 +6,10 @@ add_library(asic OBJECT > carrizo.c > fiji.c > hainan.c > + hawaii.c > + kabini.c > kaveri.c > + mullins.c > oland.c > pitcairn.c > polaris10.c > diff --git a/src/lib/asic/hawaii.c b/src/lib/asic/hawaii.c > new file mode 100644 > index 000000000000..07cbcac31a07 > --- /dev/null > +++ b/src/lib/asic/hawaii.c > @@ -0,0 +1,40 @@ > +/* > + * Copyright 2017 Advanced Micro Devices, Inc. > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice shall be included in > + * all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR > + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, > + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + * > + * Authors: Tom St Denis <tom.stdenis at amd.com> > + * > + */ > +#include "umr.h" > + > +struct umr_asic *umr_create_hawaii(struct umr_options *options) > +{ > + return > + umr_create_asic_helper("hawaii", FAMILY_CIK, > + umr_create_uvd42(options), > + umr_create_vce2(options), > + umr_create_gmc70(options), > + umr_create_dce80(options), > + umr_create_gfx72(options), > + umr_create_smu700(options), > + umr_create_oss20(options), > + umr_create_bif41(options), > + NULL); > +} > diff --git a/src/lib/asic/kabini.c b/src/lib/asic/kabini.c > new file mode 100644 > index 000000000000..08c3eb4da684 > --- /dev/null > +++ b/src/lib/asic/kabini.c > @@ -0,0 +1,40 @@ > +/* > + * Copyright 2017 Advanced Micro Devices, Inc. > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice shall be included in > + * all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR > + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, > + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + * > + * Authors: Tom St Denis <tom.stdenis at amd.com> > + * > + */ > +#include "umr.h" > + > +struct umr_asic *umr_create_kabini(struct umr_options *options) > +{ > + return > + umr_create_asic_helper("kabini", FAMILY_CIK, > + umr_create_uvd42(options), > + umr_create_vce2(options), > + umr_create_gmc70(options), > + umr_create_dce80(options), > + umr_create_gfx72(options), > + umr_create_smu700(options), > + umr_create_oss20(options), > + umr_create_bif41(options), > + NULL); > +} > diff --git a/src/lib/asic/mullins.c b/src/lib/asic/mullins.c > new file mode 100644 > index 000000000000..cca883fdb0f0 > --- /dev/null > +++ b/src/lib/asic/mullins.c > @@ -0,0 +1,40 @@ > +/* > + * Copyright 2017 Advanced Micro Devices, Inc. > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice shall be included in > + * all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR > + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, > + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + * > + * Authors: Tom St Denis <tom.stdenis at amd.com> > + * > + */ > +#include "umr.h" > + > +struct umr_asic *umr_create_mullins(struct umr_options *options) > +{ > + return > + umr_create_asic_helper("mullins", FAMILY_CIK, > + umr_create_uvd42(options), > + umr_create_vce2(options), > + umr_create_gmc70(options), > + umr_create_dce80(options), > + umr_create_gfx72(options), > + umr_create_smu700(options), > + umr_create_oss20(options), > + umr_create_bif41(options), > + NULL); > +} > diff --git a/src/lib/discover_by_did.c b/src/lib/discover_by_did.c > index 2afb118f6ca4..271e8adce35d 100644 > --- a/src/lib/discover_by_did.c > +++ b/src/lib/discover_by_did.c > @@ -88,6 +88,18 @@ static const struct { > { 0x679B, &umr_create_tahiti }, > { 0x679E, &umr_create_tahiti }, > { 0x679F, &umr_create_tahiti }, > + { 0x67A0, &umr_create_hawaii }, > + { 0x67A1, &umr_create_hawaii }, > + { 0x67A2, &umr_create_hawaii }, > + { 0x67A8, &umr_create_hawaii }, > + { 0x67A9, &umr_create_hawaii }, > + { 0x67AA, &umr_create_hawaii }, > + { 0x67B0, &umr_create_hawaii }, > + { 0x67B1, &umr_create_hawaii }, > + { 0x67B8, &umr_create_hawaii }, > + { 0x67B9, &umr_create_hawaii }, > + { 0x67BA, &umr_create_hawaii }, > + { 0x67BE, &umr_create_hawaii }, > { 0x67C0, &umr_create_polaris10 }, > { 0x67C1, &umr_create_polaris10 }, > { 0x67C2, &umr_create_polaris10 }, > @@ -165,6 +177,38 @@ static const struct { > { 0x698F, &umr_create_polaris12 }, > { 0x7300, &umr_create_fiji }, > { 0x730F, &umr_create_fiji }, > + { 0x9830, &umr_create_kabini }, > + { 0x9831, &umr_create_kabini }, > + { 0x9832, &umr_create_kabini }, > + { 0x9833, &umr_create_kabini }, > + { 0x9834, &umr_create_kabini }, > + { 0x9835, &umr_create_kabini }, > + { 0x9836, &umr_create_kabini }, > + { 0x9837, &umr_create_kabini }, > + { 0x9838, &umr_create_kabini }, > + { 0x9839, &umr_create_kabini }, > + { 0x983a, &umr_create_kabini }, > + { 0x983b, &umr_create_kabini }, > + { 0x983c, &umr_create_kabini }, > + { 0x983d, &umr_create_kabini }, > + { 0x983e, &umr_create_kabini }, > + { 0x983f, &umr_create_kabini }, > + { 0x9850, &umr_create_mullins }, > + { 0x9851, &umr_create_mullins }, > + { 0x9852, &umr_create_mullins }, > + { 0x9853, &umr_create_mullins }, > + { 0x9854, &umr_create_mullins }, > + { 0x9855, &umr_create_mullins }, > + { 0x9856, &umr_create_mullins }, > + { 0x9857, &umr_create_mullins }, > + { 0x9858, &umr_create_mullins }, > + { 0x9859, &umr_create_mullins }, > + { 0x985A, &umr_create_mullins }, > + { 0x985B, &umr_create_mullins }, > + { 0x985C, &umr_create_mullins }, > + { 0x985D, &umr_create_mullins }, > + { 0x985E, &umr_create_mullins }, > + { 0x985F, &umr_create_mullins }, > { 0x9870, &umr_create_carrizo }, > { 0x9874, &umr_create_carrizo }, > { 0x9875, &umr_create_carrizo }, > diff --git a/src/lib/discover_by_name.c b/src/lib/discover_by_name.c > index 856948c38ca4..13836534cdbf 100644 > --- a/src/lib/discover_by_name.c > +++ b/src/lib/discover_by_name.c > @@ -28,10 +28,13 @@ static const struct { > char *name; > struct umr_asic *(*create)(struct umr_options *option); > } devices[] = { > + { "kabini", &umr_create_kabini }, > { "kaveri", &umr_create_kaveri }, > + { "mullins", &umr_create_mullins }, > { "oland", &umr_create_oland }, > { "bonaire", &umr_create_bonaire }, > { "hainan", &umr_create_hainan }, > + { "hawaii", &umr_create_hawaii }, > { "tahiti", &umr_create_tahiti }, > { "polaris10", &umr_create_polaris10 }, > { "polaris11", &umr_create_polaris11 }, > diff --git a/src/umr.h b/src/umr.h > index 34e8809eb415..c30839d6e116 100644 > --- a/src/umr.h > +++ b/src/umr.h > @@ -387,7 +387,10 @@ struct umr_asic *umr_create_bonaire(struct umr_options *options); > struct umr_asic *umr_create_carrizo(struct umr_options *options); > struct umr_asic *umr_create_fiji(struct umr_options *options); > struct umr_asic *umr_create_hainan(struct umr_options *options); > +struct umr_asic *umr_create_hawaii(struct umr_options *options); > +struct umr_asic *umr_create_kabini(struct umr_options *options); > struct umr_asic *umr_create_kaveri(struct umr_options *options); > +struct umr_asic *umr_create_mullins(struct umr_options *options); > struct umr_asic *umr_create_oland(struct umr_options *options); > struct umr_asic *umr_create_pitcairn(struct umr_options *options); > struct umr_asic *umr_create_polaris10(struct umr_options *options);