# Makefile for staging directory

# fix for build system bug...
obj-$(CONFIG_STAGING)		+= staging.o

obj-y				+= media/
obj-$(CONFIG_ET131X)		+= et131x/
obj-$(CONFIG_SLICOSS)		+= slicoss/
obj-$(CONFIG_USBIP_CORE)	+= usbip/
obj-$(CONFIG_W35UND)		+= winbond/
obj-$(CONFIG_PRISM2_USB)	+= wlan-ng/
obj-$(CONFIG_COMEDI)		+= comedi/
obj-$(CONFIG_FB_OLPC_DCON)	+= olpc_dcon/
obj-$(CONFIG_PANEL)		+= panel/
obj-$(CONFIG_RTL8192U)		+= rtl8192u/
obj-$(CONFIG_RTL8192E)		+= rtl8192e/
obj-$(CONFIG_R8712U)		+= rtl8712/
obj-$(CONFIG_R8188EU)		+= rtl8188eu/
obj-$(CONFIG_R8192EE)		+= rtl8192ee/
obj-$(CONFIG_R8723AU)		+= rtl8723au/
obj-$(CONFIG_R8821AE)		+= rtl8821ae/
obj-$(CONFIG_RTS5208)		+= rts5208/
obj-$(CONFIG_TRANZPORT)		+= frontier/
obj-$(CONFIG_IDE_PHISON)	+= phison/
obj-$(CONFIG_LINE6_USB)		+= line6/
obj-$(CONFIG_NETLOGIC_XLR_NET)	+= netlogic/
obj-$(CONFIG_USB_SERIAL_QUATECH2)	+= serqt_usb2/
obj-$(CONFIG_OCTEON_ETHERNET)	+= octeon/
obj-$(CONFIG_OCTEON_USB)	+= octeon-usb/
obj-$(CONFIG_VT6655)		+= vt6655/
obj-$(CONFIG_VT6656)		+= vt6656/
obj-$(CONFIG_VME_BUS)		+= vme/
obj-$(CONFIG_DX_SEP)            += sep/
obj-$(CONFIG_IIO)		+= iio/
obj-$(CONFIG_WLAGS49_H2)	+= wlags49_h2/
obj-$(CONFIG_WLAGS49_H25)	+= wlags49_h25/
obj-$(CONFIG_CRYSTALHD)		+= crystalhd/
obj-$(CONFIG_CXT1E1)		+= cxt1e1/
obj-$(CONFIG_FB_XGI)		+= xgifb/
obj-$(CONFIG_TIDSPBRIDGE)	+= tidspbridge/
obj-$(CONFIG_ACPI_QUICKSTART)	+= quickstart/
obj-$(CONFIG_USB_ENESTORAGE)	+= keucr/
obj-$(CONFIG_BCM_WIMAX)		+= bcm/
obj-$(CONFIG_FT1000)		+= ft1000/
obj-$(CONFIG_SPEAKUP)		+= speakup/
obj-$(CONFIG_TOUCHSCREEN_CLEARPAD_TM1217)	+= cptm1217/
obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4)	+= ste_rmi4/
obj-$(CONFIG_MFD_NVEC)		+= nvec/
obj-$(CONFIG_ANDROID)		+= android/
obj-$(CONFIG_USB_WPAN_HCD)	+= ozwpan/
obj-$(CONFIG_WIMAX_GDM72XX)	+= gdm72xx/
obj-$(CONFIG_LTE_GDM724X)	+= gdm724x/
obj-$(CONFIG_NET_VENDOR_SILICOM)	+= silicom/
obj-$(CONFIG_CED1401)		+= ced1401/
obj-$(CONFIG_DRM_IMX)		+= imx-drm/
obj-$(CONFIG_DGRP)		+= dgrp/
obj-$(CONFIG_FIREWIRE_SERIAL)	+= fwserial/
obj-$(CONFIG_GOLDFISH)		+= goldfish/
obj-$(CONFIG_LUSTRE_FS)		+= lustre/
obj-$(CONFIG_XILLYBUS)		+= xillybus/
obj-$(CONFIG_DGNC)			+= dgnc/
obj-$(CONFIG_DGAP)			+= dgap/
obj-$(CONFIG_MTD_SPINAND_MT29F)	+= mt29f_spinand/
obj-$(CONFIG_GS_FPGABOOT)	+= gs_fpgaboot/
obj-$(CONFIG_BT_NOKIA_H4P)	+= nokia_h4p/
obj-$(CONFIG_CRYPTO_SKEIN)	+= skein/
obj-$(CONFIG_UNISYSSPAR)	+= unisys/
