From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-19.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2876AC4338F for ; Sun, 8 Aug 2021 18:24:37 +0000 (UTC) Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 84E6060EBB for ; Sun, 8 Aug 2021 18:24:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 84E6060EBB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=chromium.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=lists.denx.de Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 00C8C8326F; Sun, 8 Aug 2021 20:22:13 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="S685/Mqs"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 8143D82D7C; Sun, 8 Aug 2021 20:21:41 +0200 (CEST) Received: from mail-oo1-xc2c.google.com (mail-oo1-xc2c.google.com [IPv6:2607:f8b0:4864:20::c2c]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 1798B82D96 for ; Sun, 8 Aug 2021 20:21:03 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=sjg@chromium.org Received: by mail-oo1-xc2c.google.com with SMTP id y16-20020a4ad6500000b0290258a7ff4058so3733778oos.10 for ; Sun, 08 Aug 2021 11:21:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=V6FbTjRlKP9x0pv0ZVJBg1eUdT7oLroEfwRvNcCvh60=; b=S685/MqsoPBkRuTGLkKs6LaGV8xKC1OmotZJVnwRyjJ0C8GY7INKJXD2iX6IbvMmSD iATX70ox6CPNyk1JHWRbQSdxJj6ipVCMc766MoO8LwenENVxuahmEF8E4pjRsCr6wZao VXUSoBS/JCb4obFP/JpiVisC9kHJ/hbKk8cXE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=V6FbTjRlKP9x0pv0ZVJBg1eUdT7oLroEfwRvNcCvh60=; b=Y05ru0IOIcVjiuaY/lTzBHMfOg1glElV1VovM6lZLrF/t1Jh1z5zjQ2F8LnlBBpcn2 KmpEHXrsbHmviMXDxknsCzWH67Y+jc+UOLzTp+v1rwyoOVqhWU3mkWfLeK7KIghrd1vH PjddXHZm1fjp3TDsD5br7mZb9nVjcNPKeseWIEvB8+VKd+rso75SfhtCIyBL2tU+hJ1s C/+HvPFPQ9x0tkN+FGglEQ1K4jwAEJMchQpnfvv5DgcF2CySHAahpA6VtnHDz566YliR WX+HxYG683uYhECy/0/BgGp6cDqdfumGdOuPUF86ViC8/JtX7owxSqtziaWnznwYJd1h I0Kg== X-Gm-Message-State: AOAM5321lpqDoRM3GqoArduJzuv4GxuR8ZWINfGYvlqsnWyZ3+04CQGn diue8J35tzFF/NkfJi1ctqUaWVmqrRKVzrsL X-Google-Smtp-Source: ABdhPJxl0UwWJjOvRX6eSN2BaKm2FoG+FCMEMKMIR6xP31Nrdncl48fAiyZofGWraVf8dDAbM3OMRg== X-Received: by 2002:a4a:9c05:: with SMTP id y5mr12749737ooj.2.1628446861265; Sun, 08 Aug 2021 11:21:01 -0700 (PDT) Received: from kiwi.bld.corp.google.com (c-67-190-101-114.hsd1.co.comcast.net. [67.190.101.114]) by smtp.gmail.com with ESMTPSA id bc42sm2257147oob.39.2021.08.08.11.21.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 08 Aug 2021 11:21:00 -0700 (PDT) From: Simon Glass To: U-Boot Mailing List Cc: Tom Rini , Simon Glass , Lukasz Majewski Subject: [PATCH 21/23] power: Refactor Makefile rules Date: Sun, 8 Aug 2021 12:20:29 -0600 Message-Id: <20210808182031.3747270-22-sjg@chromium.org> X-Mailer: git-send-email 2.32.0.605.g8dce9f2422-goog In-Reply-To: <20210808182031.3747270-1-sjg@chromium.org> References: <20210808182031.3747270-1-sjg@chromium.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.2 at phobos.denx.de X-Virus-Status: Clean Move the power/ rules into drivers/power to avoid clutter in the Makefile and drivers/Makefile files. We must select SPL_POWER if SPL_POWER_DOMAIN is used, since the two are currently independent and boards do not necessarily enable SPL_POWER. Add a TPL_POWER as well, as that is used by one board. Signed-off-by: Simon Glass --- Makefile | 7 ------- common/spl/Kconfig | 13 +++++++++++++ configs/chromebook_coral_defconfig | 2 ++ drivers/Makefile | 5 +---- drivers/power/Makefile | 8 ++++++++ drivers/power/acpi_pmc/Makefile | 2 +- 6 files changed, 25 insertions(+), 12 deletions(-) diff --git a/Makefile b/Makefile index cc51265f1fc..c744ff8ee4e 100644 --- a/Makefile +++ b/Makefile @@ -815,13 +815,6 @@ libs-y += disk/ libs-y += drivers/ libs-y += drivers/net/ libs-y += drivers/net/phy/ -libs-y += drivers/power/ \ - drivers/power/domain/ \ - drivers/power/fuel_gauge/ \ - drivers/power/mfd/ \ - drivers/power/pmic/ \ - drivers/power/battery/ \ - drivers/power/regulator/ libs-$(CONFIG_FMAN_ENET) += drivers/net/fm/ libs-$(CONFIG_SYS_FSL_DDR) += drivers/ddr/fsl/ libs-$(CONFIG_SYS_FSL_MMDC) += drivers/ddr/fsl/ diff --git a/common/spl/Kconfig b/common/spl/Kconfig index 1ce74d07618..59672d2fdd3 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -1042,6 +1042,7 @@ config SPL_POWER config SPL_POWER_DOMAIN bool "Support power domain drivers" + select SPL_POWER help Enable support for power domain control in SPL. Many SoCs allow power to be applied to or removed from portions of the SoC (power @@ -1431,6 +1432,18 @@ config TPL_NEEDS_SEPARATE_STACK Enable, if the TPL stage should not inherit its initial stack-pointer from the settings for the SPL stage. +config TPL_POWER + bool "Support power drivers" + help + Enable support for power control in TPL. This includes support + for PMICs (Power-management Integrated Circuits) and some of the + features provided by PMICs. In particular, voltage regulators can + be used to enable/disable power and vary its voltage. That can be + useful in TPL to turn on boot peripherals and adjust CPU voltage + so that the clock speed can be increased. This enables the drivers + in drivers/power, drivers/power/pmic and drivers/power/regulator + as part of an TPL build. + config TPL_TEXT_BASE hex "Base address for the .text section of the TPL stage" depends on TPL_NEEDS_SEPARATE_TEXT_BASE diff --git a/configs/chromebook_coral_defconfig b/configs/chromebook_coral_defconfig index eb0884f1f5d..321ad7de5b7 100644 --- a/configs/chromebook_coral_defconfig +++ b/configs/chromebook_coral_defconfig @@ -44,7 +44,9 @@ CONFIG_SPL_SEPARATE_BSS=y CONFIG_SPL_CPU=y CONFIG_SPL_DM_SPI_FLASH=y CONFIG_SPL_PCI=y +CONFIG_SPL_POWER=y # CONFIG_SPL_SPI_FLASH_TINY is not set +CONFIG_TPL_POWER=y CONFIG_HUSH_PARSER=y CONFIG_CMD_CPU=y CONFIG_CMD_PMC=y diff --git a/drivers/Makefile b/drivers/Makefile index d63cc48f5f4..c256cd97210 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -22,6 +22,7 @@ obj-$(CONFIG_$(SPL_TPL_)PCH) += pch/ obj-$(CONFIG_$(SPL_TPL_)PCI) += pci/ obj-$(CONFIG_$(SPL_TPL_)PHY) += phy/ obj-$(CONFIG_$(SPL_TPL_)PINCTRL) += pinctrl/ +obj-$(CONFIG_$(SPL_TPL_)POWER) += power/ obj-$(CONFIG_$(SPL_TPL_)RAM) += ram/ obj-$(CONFIG_$(SPL_TPL_)RTC) += rtc/ obj-$(CONFIG_$(SPL_TPL_)SERIAL) += serial/ @@ -32,7 +33,6 @@ obj-$(CONFIG_$(SPL_)DM_MAILBOX) += mailbox/ obj-$(CONFIG_$(SPL_)REMOTEPROC) += remoteproc/ obj-$(CONFIG_$(SPL_)SYSINFO) += sysinfo/ obj-$(CONFIG_$(SPL_TPL_)TPM) += tpm/ -obj-$(CONFIG_$(SPL_TPL_)ACPI_PMC) += power/acpi_pmc/ obj-$(CONFIG_XEN) += xen/ obj-$(CONFIG_$(SPL_)FPGA) += fpga/ @@ -46,9 +46,6 @@ obj-$(CONFIG_ARMADA_38X) += ddr/marvell/a38x/ obj-$(CONFIG_ARMADA_XP) += ddr/marvell/axp/ obj-$(CONFIG_$(SPL_)ALTERA_SDRAM) += ddr/altera/ obj-$(CONFIG_ARCH_IMX8M) += ddr/imx/imx8m/ -obj-$(CONFIG_SPL_POWER) += power/ power/pmic/ -obj-$(CONFIG_SPL_POWER) += power/regulator/ -obj-$(CONFIG_SPL_POWER_DOMAIN) += power/domain/ obj-$(CONFIG_SPL_DM_RESET) += reset/ obj-$(CONFIG_SPL_ETH) += net/ obj-$(CONFIG_SPL_ETH) += net/phy/ diff --git a/drivers/power/Makefile b/drivers/power/Makefile index 09fe2a958d0..5c6d6bc3ec9 100644 --- a/drivers/power/Makefile +++ b/drivers/power/Makefile @@ -3,6 +3,14 @@ # Copyright (c) 2009 Wind River Systems, Inc. # Tom Rix +obj-$(CONFIG_$(SPL_TPL_)ACPI_PMC) += acpi_pmc/ +obj-y += battery/ +obj-$(CONFIG_$(SPL_TPL_)POWER_DOMAIN) += domain/ +obj-y += fuel_gauge/ +obj-y += mfd/ +obj-y += pmic/ +obj-y += regulator/ + obj-$(CONFIG_AXP152_POWER) += axp152.o obj-$(CONFIG_AXP209_POWER) += axp209.o obj-$(CONFIG_AXP221_POWER) += axp221.o diff --git a/drivers/power/acpi_pmc/Makefile b/drivers/power/acpi_pmc/Makefile index 115788f109a..0db52a65824 100644 --- a/drivers/power/acpi_pmc/Makefile +++ b/drivers/power/acpi_pmc/Makefile @@ -2,5 +2,5 @@ # # Copyright 2019 Google LLC -obj-$(CONFIG_$(SPL_TPL_)ACPI_PMC) += acpi-pmc-uclass.o +obj-y += acpi-pmc-uclass.o obj-$(CONFIG_$(SPL_TPL_)ACPI_PMC_SANDBOX) += sandbox.o pmc_emul.o -- 2.32.0.605.g8dce9f2422-goog