############################################################################ # drivers/power/Make.defs # # Copyright (C) 2011-2012 Gregory Nutt. All rights reserved. # Author: Gregory Nutt # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in # the documentation and/or other materials provided with the # distribution. # 3. Neither the name NuttX nor the names of its contributors may be # used to endorse or promote products derived from this software # without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS # OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # ############################################################################ # Include power management sources ifeq ($(CONFIG_PM),y) CSRCS += pm_initialize.c pm_activity.c pm_changestate.c pm_checkstate.c CSRCS += pm_register.c pm_unregister.c # Governor implementations ifeq ($(CONFIG_PM_GOVERNOR_ACTIVITY),y) CSRCS += activity_governor.c endif ifeq ($(CONFIG_PM_GOVERNOR_GREEDY),y) CSRCS += greedy_governor.c endif # Include power management in the build POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add switched-mode power supply support ifeq ($(CONFIG_DRIVERS_SMPS),y) CSRCS += smps.c POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add powerled support ifeq ($(CONFIG_DRIVERS_POWERLED),y) CSRCS += powerled.c POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add motor driver ifeq ($(CONFIG_DRIVERS_MOTOR),y) CSRCS += motor.c POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add battery charger drivers ifeq ($(CONFIG_BATTERY_CHARGER),y) CSRCS += battery_charger.c # Add the MCP73871 battery charger driver ifeq ($(CONFIG_MCP73871),y) CSRCS += mcp73871.c endif # Add I2C-based battery charger drivers ifeq ($(CONFIG_I2C),y) # Add the BQ2425x I2C-based battery charger driver ifeq ($(CONFIG_I2C_BQ2425X),y) CSRCS += bq2425x.c endif # Add the BQ2429x I2C-based battery charger driver ifeq ($(CONFIG_I2C_BQ2429X),y) CSRCS += bq2429x.c endif endif # Include power support in the build POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add battery gauge drivers ifeq ($(CONFIG_BATTERY_GAUGE),y) CSRCS += battery_gauge.c # Add I2C-based battery gauge drivers ifeq ($(CONFIG_I2C),y) # Add the MAX1704x I2C-based battery gauge driver ifeq ($(CONFIG_I2C_MAX1704X),y) CSRCS += max1704x.c endif # Add the bq27426 I2C-based battery guage driver ifeq ($(CONFIG_BQ27426),y) CSRCS += bq27426.c endif endif # Include battery support in the build POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Add battery monitor drivers ifeq ($(CONFIG_BATTERY_MONITOR),y) CSRCS += battery_monitor.c # Add I2C-based battery monitor drivers ifeq ($(CONFIG_I2C),y) # Add the BQ769x0 I2C-based battery monitor driver ifeq ($(CONFIG_I2C_BQ769X0),y) CSRCS += bq769x0.c endif endif # Include battery suport in the build POWER_DEPPATH := --dep-path power POWER_VPATH := :power POWER_CFLAGS := ${shell $(INCDIR) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)power} endif # Include power management in the build DEPPATH += $(POWER_DEPPATH) VPATH += $(POWER_VPATH) CFLAGS += $(POWER_CFLAGS)