# Makefile for staging directory

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

obj-$(CONFIG_ET131X)		+= et131x/
obj-$(CONFIG_SLICOSS)		+= slicoss/
obj-$(CONFIG_VIDEO_GO7007)	+= go7007/
obj-$(CONFIG_VIDEO_CX25821)	+= cx25821/
obj-$(CONFIG_VIDEO_TM6000)	+= tm6000/
obj-$(CONFIG_DVB_CXD2099)	+= cxd2099/
obj-$(CONFIG_LIRC_STAGING)	+= lirc/
obj-$(CONFIG_USBIP_CORE)	+= usbip/
obj-$(CONFIG_W35UND)		+= winbond/
obj-$(CONFIG_PRISM2_USB)	+= wlan-ng/
obj-$(CONFIG_ECHO)		+= echo/
obj-$(CONFIG_BRCMSMAC)		+= brcm80211/
obj-$(CONFIG_BRCMFMAC)		+= brcm80211/
obj-$(CONFIG_COMEDI)		+= comedi/
obj-$(CONFIG_FB_OLPC_DCON)	+= olpc_dcon/
obj-$(CONFIG_ASUS_OLED)		+= asus_oled/
obj-$(CONFIG_PANEL)		+= panel/
obj-$(CONFIG_R8187SE)		+= rtl8187se/
obj-$(CONFIG_RTL8192U)		+= rtl8192u/
obj-$(CONFIG_RTL8192E)		+= rtl8192e/
obj-$(CONFIG_R8712U)		+= rtl8712/
obj-$(CONFIG_RTS_PSTOR)		+= rts_pstor/
obj-$(CONFIG_SPECTRA)		+= spectra/
obj-$(CONFIG_TRANZPORT)		+= frontier/
obj-$(CONFIG_POHMELFS)		+= pohmelfs/
obj-$(CONFIG_IDE_PHISON)	+= phison/
obj-$(CONFIG_LINE6_USB)		+= line6/
obj-$(CONFIG_USB_SERIAL_QUATECH2)	+= serqt_usb2/
obj-$(CONFIG_USB_SERIAL_QUATECH_USB2)	+= quatech_usb2/
obj-$(CONFIG_OCTEON_ETHERNET)	+= octeon/
obj-$(CONFIG_VT6655)		+= vt6655/
obj-$(CONFIG_VT6656)		+= vt6656/
obj-$(CONFIG_HYPERV)		+= hv/
obj-$(CONFIG_VME_BUS)		+= vme/
obj-$(CONFIG_DX_SEP)            += sep/
obj-$(CONFIG_IIO)		+= iio/
obj-$(CONFIG_ZRAM)		+= zram/
obj-$(CONFIG_XVMALLOC)		+= zram/
obj-$(CONFIG_ZCACHE)		+= zcache/
obj-$(CONFIG_WLAGS49_H2)	+= wlags49_h2/
obj-$(CONFIG_WLAGS49_H25)	+= wlags49_h25/
obj-$(CONFIG_FB_SM7XX)		+= sm7xx/
obj-$(CONFIG_VIDEO_DT3155)	+= dt3155v4l/
obj-$(CONFIG_CRYSTALHD)		+= crystalhd/
obj-$(CONFIG_CXT1E1)		+= cxt1e1/
obj-$(CONFIG_FB_XGI)		+= xgifb/
obj-$(CONFIG_EASYCAP)		+= easycap/
obj-$(CONFIG_SOLO6X10)		+= solo6x10/
obj-$(CONFIG_TIDSPBRIDGE)	+= tidspbridge/
obj-$(CONFIG_ACPI_QUICKSTART)	+= quickstart/
obj-$(CONFIG_SBE_2T3E3)		+= sbe-2t3e3/
obj-$(CONFIG_ATH6K_LEGACY)	+= ath6kl/
obj-$(CONFIG_USB_ENESTORAGE)	+= keucr/
obj-$(CONFIG_BCM_WIMAX)		+= bcm/
obj-$(CONFIG_FT1000)		+= ft1000/
obj-$(CONFIG_SND_INTEL_SST)	+= intel_sst/
obj-$(CONFIG_SPEAKUP)		+= speakup/
obj-$(CONFIG_ALTERA_STAPL)	+=altera-stapl/
obj-$(CONFIG_TOUCHSCREEN_CLEARPAD_TM1217)	+= cptm1217/
obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_RMI4)	+= ste_rmi4/
obj-$(CONFIG_DRM_PSB)		+= gma500/
obj-$(CONFIG_INTEL_MEI)		+= mei/
obj-$(CONFIG_MFD_NVEC)		+= nvec/
