KRELEASE ?= $(shell uname -r)
MODULE_NAME := it87_serial
KERNEL_HEADER_DIR := /lib/modules/$(KRELEASE)/build
INSTALL_DIR := kernel/drivers/misc
MODULE_LOAD_CONFIG := it87_serial.conf
MODULE_PROBE_CONFIG := it87-serial-force-id-it8786.conf
obj-m += $(MODULE_NAME).o

modules:
	$(MAKE) -C $(KERNEL_HEADER_DIR) M=$(PWD) modules

install: modules
	$(MAKE) INSTALL_MOD_DIR=$(INSTALL_DIR) -C $(KERNEL_HEADER_DIR) M=$(PWD) modules_install
	/usr/bin/install -m 644 -D $(MODULE_LOAD_CONFIG) /usr/lib/modules-load.d/$(MODULE_LOAD_CONFIG)
	/usr/bin/install -m 644 -D $(MODULE_PROBE_CONFIG) /usr/lib/modprobe.d/$(MODULE_PROBE_CONFIG)
	/sbin/depmod -A

uninstall:
	rm /lib/modules/$(KRELEASE)/$(INSTALL_DIR)/$(MODULE_NAME).ko
	rm /usr/lib/modules-load.d/$(MODULE_LOAD_CONFIG)
	rm /usr/lib/modprobe.d/$(MODULE_PROBE_CONFIG)
	/sbin/depmod -A

clean:
	$(MAKE) -C $(KERNEL_HEADER_DIR) M=$(PWD) clean

load:
	/usr/sbin/modprobe $(MODULE_NAME)

unload:
	/usr/sbin/modprobe -r $(MODULE_NAME)

.PHONY: modules install uninstall clean load unload
