# SPDX-License-Identifier: GPL-2.0+
#
# Copyright (C) 2012 Samsung Electronics
# R. Chandrasekar <rcsekar@samsung.com>

obj-$(CONFIG_SOUND)	+= sound.o
obj-$(CONFIG_SOUND)	+= codec-uclass.o
obj-$(CONFIG_SOUND)	+= i2s-uclass.o
obj-$(CONFIG_SOUND)	+= sound-uclass.o
obj-$(CONFIG_I2S_SAMSUNG)	+= samsung-i2s.o
obj-$(CONFIG_SOUND_SANDBOX)	+= sandbox.o
obj-$(CONFIG_I2S_ROCKCHIP)	+= rockchip_i2s.o rockchip_sound.o
obj-$(CONFIG_I2S_SAMSUNG)	+= samsung_sound.o
obj-$(CONFIG_SOUND_WM8994)	+= wm8994.o
obj-$(CONFIG_SOUND_MAX98088)	+= max98088.o maxim_codec.o
obj-$(CONFIG_SOUND_MAX98090)	+= max98090.o maxim_codec.o
obj-$(CONFIG_SOUND_MAX98095)	+= max98095.o maxim_codec.o
obj-$(CONFIG_SOUND_INTEL_HDA)	+= hda_codec.o
obj-$(CONFIG_SOUND_I8254)	+= i8254_beep.o
obj-$(CONFIG_SOUND_RT5677)	+= rt5677.o
obj-$(CONFIG_INTEL_BROADWELL)	+= broadwell_i2s.o broadwell_sound.o
obj-$(CONFIG_SOUND_IVYBRIDGE)	+= ivybridge_sound.o
