# Makefile for the kernel ISDN subsystem and device drivers.

# Object files in subdirectories

obj-$(CONFIG_ISDN_I4L)			+= i4l/
obj-$(CONFIG_ISDN_CAPI)			+= capi/
obj-$(CONFIG_MISDN)			+= mISDN/
obj-$(CONFIG_ISDN)			+= hardware/
obj-$(CONFIG_ISDN_DIVERSION)		+= divert/
obj-$(CONFIG_ISDN_DRV_HISAX)		+= hisax/
obj-$(CONFIG_ISDN_DRV_LOOP)		+= isdnloop/
obj-$(CONFIG_HYSDN)			+= hysdn/
obj-$(CONFIG_ISDN_DRV_GIGASET)		+= gigaset/
