# Makefile for staging directory

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

obj-$(CONFIG_ET131X)		+= et131x/
obj-$(CONFIG_SLICOSS)		+= slicoss/
obj-$(CONFIG_SXG)		+= sxg/
obj-$(CONFIG_ME4000)		+= me4000/
obj-$(CONFIG_MEILHAUS)		+= meilhaus/
obj-$(CONFIG_VIDEO_GO7007)	+= go7007/
obj-$(CONFIG_USB_IP_COMMON)	+= usbip/
obj-$(CONFIG_W35UND)		+= winbond/
obj-$(CONFIG_PRISM2_USB)	+= wlan-ng/
obj-$(CONFIG_ECHO)		+= echo/
obj-$(CONFIG_USB_ATMEL)		+= at76_usb/
obj-$(CONFIG_POCH)		+= poch/
obj-$(CONFIG_AGNX)		+= agnx/
obj-$(CONFIG_OTUS)		+= otus/
obj-$(CONFIG_RT2860)		+= rt2860/
obj-$(CONFIG_RT2870)		+= rt2870/
obj-$(CONFIG_RT3070)		+= rt3070/
obj-$(CONFIG_COMEDI)		+= comedi/
obj-$(CONFIG_ASUS_OLED)		+= asus_oled/
obj-$(CONFIG_PANEL)		+= panel/
obj-$(CONFIG_ALTERA_PCIE_CHDMA)	+= altpciechdma/
obj-$(CONFIG_RTL8187SE)		+= rtl8187se/
obj-$(CONFIG_RTL8192SU)		+= rtl8192su/
obj-$(CONFIG_USB_RSPI)		+= rspiusb/
obj-$(CONFIG_INPUT_MIMIO)	+= mimio/
obj-$(CONFIG_TRANZPORT)		+= frontier/
obj-$(CONFIG_EPL)		+= epl/
obj-$(CONFIG_ANDROID)		+= android/
obj-$(CONFIG_DST)		+= dst/
obj-$(CONFIG_POHMELFS)		+= pohmelfs/
obj-$(CONFIG_STLC45XX)		+= stlc45xx/
obj-$(CONFIG_B3DFG)		+= b3dfg/
obj-$(CONFIG_IDE_PHISON)	+= phison/
obj-$(CONFIG_PLAN9AUTH)		+= p9auth/
obj-$(CONFIG_HECI)		+= heci/
obj-$(CONFIG_LINE6_USB)		+= line6/
obj-$(CONFIG_USB_SERIAL_QUATECH2)	+= serqt_usb2/
obj-$(CONFIG_OCTEON_ETHERNET)	+= octeon/
obj-$(CONFIG_VT6655)		+= vt6655/
obj-$(CONFIG_USB_CPC)		+= cpc-usb/
obj-$(CONFIG_RDC_17F3101X)	+= pata_rdc/
obj-$(CONFIG_FB_UDL)		+= udlfb/
