Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp2361080ybi; Sun, 9 Jun 2019 09:51:36 -0700 (PDT) X-Google-Smtp-Source: APXvYqyAE/wBBvL8QOLM8Y4yndQURXKZD2fA1lRTR9WPGbUQ69PzrczUn3O2OaZkXQSaF85Ae+9Q X-Received: by 2002:a63:a055:: with SMTP id u21mr12239028pgn.5.1560099096125; Sun, 09 Jun 2019 09:51:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560099096; cv=none; d=google.com; s=arc-20160816; b=V2JpOo6wHUaO40f2w4HK5nRvpwK94Iw8gSaAXe+jRpyEEvQWEuPSVVmf/AZLa7UV39 RY1gvrSd97+40RSuZRty33l3yEq7TVQYUpZ2oNgUEad05lTE3aZs7eg9cJ+UXl5+KqWr Qc3Z2McCK62y0OeePq8s0EU3SOebUb6/X2gcJQFOwBsWkWI+C6PTul4A/LSwROg0BQ1D BAl0WAfDEd8v+j0Dr5D3H8QHvh/x+njnmPUspOgLvoDR7/OhVDrAgsXZ7SqujQyHp0hF nFwthci5AvUFnQMOgY6ci6vfbpGk0az0Go5E9WAkhkwVoNpT+1enpw9fkkO95HFRSLNs jHtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=cVdl58++ArRMTyYQfdV+qaqm6R8KiPTJhDLiZjQeZHY=; b=0ugjYbSOjArNa0cmMu6yTtw15Ihhy0FokoYo65lI4Cbvzq+v9VX3gbQv9NohrY9wqs J2WEJ/wZw9GcpaW3sJ0oUgPlCOvAoOAkk6AUEPQJiyMonsSf+eYGboj2MeYQSe1DDXEi ae4iFTE9g5dVpMOC6wHKNKLE+FWQPze+s3T8Pq/1rai2AJyUcwQ3AKyeQWYpn+zjgnXn 1Xefis0X1GsNg8Ereg/uxFpvFfnyJUSoAol7rNLCc5hiIUTwSBq2o8wuM/GJ5KxOtoS2 dXC8/+I/mx7xjhywktMmDLzx2gQxcUfRKnonP9cj1ilzKtGT24w8dBJmumSVJCnp8lzh FT5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=OmFoqRbD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a14si7686609pff.135.2019.06.09.09.51.20; Sun, 09 Jun 2019 09:51:36 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=OmFoqRbD; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731521AbfFIQth (ORCPT + 99 others); Sun, 9 Jun 2019 12:49:37 -0400 Received: from mail.kernel.org ([198.145.29.99]:49118 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731510AbfFIQte (ORCPT ); Sun, 9 Jun 2019 12:49:34 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 4292420833; Sun, 9 Jun 2019 16:49:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1560098973; bh=4kymL7ZV3nowkkvEaZZqhY+EJloa8d/XCIBUPXRKQIA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OmFoqRbDx3SKQBrC07QqPiCmK5nWFemx68h9/dFHfnzHtZPx2vNeZ95LI1iTPeuf0 OoLz8I75gJVPmvVjX/Ev9I91xvQcsF8yZy6oOBahVNNPNKQxIXsYmvaFa3iQ3+bfmb 5rNjdGbqT6aO3RuZ373fluos4++pS6KemW+DO2OU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, =?UTF-8?q?Christian=20K=C3=B6nig?= , Alex Deucher Subject: [PATCH 4.19 42/51] drm/amdgpu/psp: move psp version specific function pointers to early_init Date: Sun, 9 Jun 2019 18:42:23 +0200 Message-Id: <20190609164130.084287201@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190609164127.123076536@linuxfoundation.org> References: <20190609164127.123076536@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Alex Deucher commit 9d6fea5744d6798353f37ac42a8a653a2607ca69 upstream. In case we need to use them for GPU reset prior initializing the asic. Fixes a crash if the driver attempts to reset the GPU at driver load time. Acked-by: Christian König Signed-off-by: Alex Deucher Cc: stable@vger.kernel.org Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -37,18 +37,10 @@ static void psp_set_funcs(struct amdgpu_ static int psp_early_init(void *handle) { struct amdgpu_device *adev = (struct amdgpu_device *)handle; + struct psp_context *psp = &adev->psp; psp_set_funcs(adev); - return 0; -} - -static int psp_sw_init(void *handle) -{ - struct amdgpu_device *adev = (struct amdgpu_device *)handle; - struct psp_context *psp = &adev->psp; - int ret; - switch (adev->asic_type) { case CHIP_VEGA10: case CHIP_VEGA12: @@ -67,6 +59,15 @@ static int psp_sw_init(void *handle) if (adev->firmware.load_type != AMDGPU_FW_LOAD_PSP) return 0; + return 0; +} + +static int psp_sw_init(void *handle) +{ + struct amdgpu_device *adev = (struct amdgpu_device *)handle; + struct psp_context *psp = &adev->psp; + int ret; + ret = psp_init_microcode(psp); if (ret) { DRM_ERROR("Failed to load psp firmware!\n");