Skip to content
Snippets Groups Projects
Commit bcbe1431 authored by Rohmindo's avatar Rohmindo
Browse files

library management Pi

parent f228d35d
No related branches found
No related tags found
No related merge requests found
No preview for this file type
......@@ -45,8 +45,8 @@ int main(void)
memset(&server_addr, 0, sizeof(server_addr));
server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(4026);
server_addr.sin_addr.s_addr = inet_addr("192.168.0.9");
server_addr.sin_port = htons(4029);
server_addr.sin_addr.s_addr = inet_addr("192.168.10.6");
if(connect(client_socket, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) {
printf("connect error\n");
......
cmd_/home/pi/Desktop/project/hum/hum_dev.ko := ld -r -EL -T ./scripts/module-common.lds -T ./arch/arm/kernel/module.lds --build-id -o /home/pi/Desktop/project/hum/hum_dev.ko /home/pi/Desktop/project/hum/hum_dev.o /home/pi/Desktop/project/hum/hum_dev.mod.o ; true
cmd_/home/pi/Desktop/project/hum/hum_dev.mod.o := gcc -Wp,-MD,/home/pi/Desktop/project/hum/.hum_dev.mod.o.d -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabihf/8/include -I./arch/arm/include -I./arch/arm/include/generated -I./include -I./arch/arm/include/uapi -I./arch/arm/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-dwarf2-cfi-asm -fno-omit-frame-pointer -mapcs -mno-sched-prolog -fno-ipa-sra -mabi=aapcs-linux -mfpu=vfp -funwind-tables -marm -Wa,-mno-warn-deprecated -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-int-in-bool-context -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -Wdeclaration-after-statement -Wno-pointer-sign -Wno-stringop-truncation -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -fmacro-prefix-map=./= -Wno-packed-not-aligned -DKBUILD_BASENAME='"hum_dev.mod"' -DKBUILD_MODNAME='"hum_dev"' -DMODULE -c -o /home/pi/Desktop/project/hum/hum_dev.mod.o /home/pi/Desktop/project/hum/hum_dev.mod.c
source_/home/pi/Desktop/project/hum/hum_dev.mod.o := /home/pi/Desktop/project/hum/hum_dev.mod.c
deps_/home/pi/Desktop/project/hum/hum_dev.mod.o := \
$(wildcard include/config/module/unload.h) \
$(wildcard include/config/retpoline.h) \
include/linux/kconfig.h \
$(wildcard include/config/cpu/big/endian.h) \
$(wildcard include/config/booger.h) \
$(wildcard include/config/foo.h) \
include/linux/compiler_types.h \
$(wildcard include/config/have/arch/compiler/h.h) \
$(wildcard include/config/enable/must/check.h) \
$(wildcard include/config/arch/supports/optimized/inlining.h) \
$(wildcard include/config/optimize/inlining.h) \
include/linux/compiler-gcc.h \
$(wildcard include/config/arch/use/builtin/bswap.h) \
include/linux/build-salt.h \
$(wildcard include/config/build/salt.h) \
include/linux/elfnote.h \
include/linux/elf.h \
arch/arm/include/asm/elf.h \
$(wildcard include/config/mmu.h) \
$(wildcard include/config/vdso.h) \
arch/arm/include/asm/auxvec.h \
arch/arm/include/uapi/asm/auxvec.h \
arch/arm/include/asm/hwcap.h \
arch/arm/include/uapi/asm/hwcap.h \
arch/arm/include/asm/vdso_datapage.h \
arch/arm/include/asm/page.h \
$(wildcard include/config/cpu/copy/v4wt.h) \
$(wildcard include/config/cpu/copy/v4wb.h) \
$(wildcard include/config/cpu/copy/feroceon.h) \
$(wildcard include/config/cpu/copy/fa.h) \
$(wildcard include/config/cpu/sa1100.h) \
$(wildcard include/config/cpu/xscale.h) \
$(wildcard include/config/cpu/xsc3.h) \
$(wildcard include/config/cpu/copy/v6.h) \
$(wildcard include/config/kuser/helpers.h) \
$(wildcard include/config/arm/lpae.h) \
$(wildcard include/config/have/arch/pfn/valid.h) \
arch/arm/include/asm/glue.h \
arch/arm/include/asm/pgtable-2level-types.h \
arch/arm/include/uapi/asm/types.h \
include/asm-generic/int-ll64.h \
include/uapi/asm-generic/int-ll64.h \
arch/arm/include/generated/uapi/asm/bitsperlong.h \
include/asm-generic/bitsperlong.h \
$(wildcard include/config/64bit.h) \
include/uapi/asm-generic/bitsperlong.h \
arch/arm/include/asm/memory.h \
$(wildcard include/config/need/mach/memory/h.h) \
$(wildcard include/config/page/offset.h) \
$(wildcard include/config/thumb2/kernel.h) \
$(wildcard include/config/highmem.h) \
$(wildcard include/config/smp.h) \
$(wildcard include/config/dram/base.h) \
$(wildcard include/config/dram/size.h) \
$(wildcard include/config/xip/kernel.h) \
$(wildcard include/config/have/tcm.h) \
$(wildcard include/config/arm/patch/phys/virt.h) \
$(wildcard include/config/phys/offset.h) \
$(wildcard include/config/xip/phys/addr.h) \
$(wildcard include/config/debug/virtual.h) \
include/linux/compiler.h \
$(wildcard include/config/trace/branch/profiling.h) \
$(wildcard include/config/profile/all/branches.h) \
$(wildcard include/config/stack/validation.h) \
$(wildcard include/config/kasan.h) \
include/linux/compiler_types.h \
include/uapi/linux/types.h \
include/uapi/linux/posix_types.h \
include/linux/stddef.h \
include/uapi/linux/stddef.h \
arch/arm/include/uapi/asm/posix_types.h \
include/uapi/asm-generic/posix_types.h \
arch/arm/include/asm/barrier.h \
$(wildcard include/config/cpu/32v6k.h) \
$(wildcard include/config/cpu/fa526.h) \
$(wildcard include/config/arm/heavy/mb.h) \
$(wildcard include/config/arm/dma/mem/bufferable.h) \
$(wildcard include/config/cpu/spectre.h) \
include/asm-generic/barrier.h \
include/linux/kasan-checks.h \
include/linux/const.h \
include/uapi/linux/const.h \
include/linux/types.h \
$(wildcard include/config/have/uid16.h) \
$(wildcard include/config/uid16.h) \
$(wildcard include/config/lbdaf.h) \
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
$(wildcard include/config/phys/addr/t/64bit.h) \
include/linux/sizes.h \
include/asm-generic/memory_model.h \
$(wildcard include/config/flatmem.h) \
$(wildcard include/config/discontigmem.h) \
$(wildcard include/config/sparsemem/vmemmap.h) \
$(wildcard include/config/sparsemem.h) \
include/linux/pfn.h \
include/asm-generic/getorder.h \
include/linux/log2.h \
$(wildcard include/config/arch/has/ilog2/u32.h) \
$(wildcard include/config/arch/has/ilog2/u64.h) \
include/linux/bitops.h \
include/linux/bits.h \
arch/arm/include/asm/bitops.h \
include/linux/irqflags.h \
$(wildcard include/config/prove/locking.h) \
$(wildcard include/config/trace/irqflags.h) \
$(wildcard include/config/irqsoff/tracer.h) \
$(wildcard include/config/preempt/tracer.h) \
$(wildcard include/config/trace/irqflags/support.h) \
include/linux/typecheck.h \
arch/arm/include/asm/irqflags.h \
$(wildcard include/config/cpu/v7m.h) \
arch/arm/include/asm/ptrace.h \
$(wildcard include/config/arm/thumb.h) \
arch/arm/include/uapi/asm/ptrace.h \
$(wildcard include/config/cpu/endian/be8.h) \
include/asm-generic/irqflags.h \
include/asm-generic/bitops/non-atomic.h \
include/asm-generic/bitops/builtin-__fls.h \
include/asm-generic/bitops/builtin-__ffs.h \
include/asm-generic/bitops/builtin-fls.h \
include/asm-generic/bitops/builtin-ffs.h \
include/asm-generic/bitops/ffz.h \
include/asm-generic/bitops/fls64.h \
include/asm-generic/bitops/sched.h \
include/asm-generic/bitops/hweight.h \
include/asm-generic/bitops/arch_hweight.h \
include/asm-generic/bitops/const_hweight.h \
include/asm-generic/bitops/lock.h \
include/linux/atomic.h \
$(wildcard include/config/generic/atomic64.h) \
arch/arm/include/asm/atomic.h \
include/linux/prefetch.h \
arch/arm/include/asm/processor.h \
$(wildcard include/config/have/hw/breakpoint.h) \
$(wildcard include/config/binfmt/elf/fdpic.h) \
$(wildcard include/config/arm/errata/754327.h) \
arch/arm/include/asm/hw_breakpoint.h \
arch/arm/include/asm/unified.h \
arch/arm/include/asm/cache.h \
$(wildcard include/config/arm/l1/cache/shift.h) \
$(wildcard include/config/aeabi.h) \
arch/arm/include/asm/cmpxchg.h \
$(wildcard include/config/cpu/sa110.h) \
$(wildcard include/config/cpu/v6.h) \
include/asm-generic/cmpxchg-local.h \
include/asm-generic/atomic-long.h \
include/asm-generic/bitops/find.h \
$(wildcard include/config/generic/find/first/bit.h) \
include/asm-generic/bitops/le.h \
arch/arm/include/uapi/asm/byteorder.h \
include/linux/byteorder/little_endian.h \
include/uapi/linux/byteorder/little_endian.h \
include/linux/swab.h \
include/uapi/linux/swab.h \
arch/arm/include/asm/swab.h \
arch/arm/include/uapi/asm/swab.h \
include/linux/byteorder/generic.h \
include/asm-generic/bitops/ext2-atomic-setbit.h \
arch/arm/include/asm/user.h \
include/uapi/linux/elf.h \
include/uapi/linux/elf-em.h \
include/linux/module.h \
$(wildcard include/config/modules.h) \
$(wildcard include/config/sysfs.h) \
$(wildcard include/config/modules/tree/lookup.h) \
$(wildcard include/config/livepatch.h) \
$(wildcard include/config/unused/symbols.h) \
$(wildcard include/config/module/sig.h) \
$(wildcard include/config/generic/bug.h) \
$(wildcard include/config/kallsyms.h) \
$(wildcard include/config/tracepoints.h) \
$(wildcard include/config/jump/label.h) \
$(wildcard include/config/tracing.h) \
$(wildcard include/config/event/tracing.h) \
$(wildcard include/config/ftrace/mcount/record.h) \
$(wildcard include/config/constructors.h) \
$(wildcard include/config/function/error/injection.h) \
$(wildcard include/config/strict/module/rwx.h) \
include/linux/list.h \
$(wildcard include/config/debug/list.h) \
include/linux/poison.h \
$(wildcard include/config/illegal/pointer/value.h) \
$(wildcard include/config/page/poisoning/zero.h) \
include/linux/kernel.h \
$(wildcard include/config/preempt/voluntary.h) \
$(wildcard include/config/debug/atomic/sleep.h) \
$(wildcard include/config/arch/has/refcount.h) \
$(wildcard include/config/panic/timeout.h) \
/usr/lib/gcc/arm-linux-gnueabihf/8/include/stdarg.h \
include/linux/linkage.h \
include/linux/stringify.h \
include/linux/export.h \
$(wildcard include/config/modversions.h) \
$(wildcard include/config/module/rel/crcs.h) \
$(wildcard include/config/have/arch/prel32/relocations.h) \
$(wildcard include/config/trim/unused/ksyms.h) \
arch/arm/include/asm/linkage.h \
include/linux/printk.h \
$(wildcard include/config/message/loglevel/default.h) \
$(wildcard include/config/console/loglevel/default.h) \
$(wildcard include/config/console/loglevel/quiet.h) \
$(wildcard include/config/early/printk.h) \
$(wildcard include/config/printk/nmi.h) \
$(wildcard include/config/printk.h) \
$(wildcard include/config/dynamic/debug.h) \
include/linux/init.h \
$(wildcard include/config/strict/kernel/rwx.h) \
include/linux/kern_levels.h \
include/linux/cache.h \
$(wildcard include/config/arch/has/cache/line/size.h) \
include/uapi/linux/kernel.h \
include/uapi/linux/sysinfo.h \
include/linux/build_bug.h \
arch/arm/include/asm/div64.h \
arch/arm/include/asm/compiler.h \
include/asm-generic/div64.h \
include/linux/stat.h \
arch/arm/include/uapi/asm/stat.h \
include/uapi/linux/stat.h \
include/linux/time.h \
$(wildcard include/config/arch/uses/gettimeoffset.h) \
include/linux/seqlock.h \
$(wildcard include/config/debug/lock/alloc.h) \
include/linux/spinlock.h \
$(wildcard include/config/debug/spinlock.h) \
$(wildcard include/config/preempt.h) \
include/linux/preempt.h \
$(wildcard include/config/preempt/count.h) \
$(wildcard include/config/debug/preempt.h) \
$(wildcard include/config/trace/preempt/toggle.h) \
$(wildcard include/config/preempt/notifiers.h) \
arch/arm/include/generated/asm/preempt.h \
include/asm-generic/preempt.h \
include/linux/thread_info.h \
$(wildcard include/config/thread/info/in/task.h) \
$(wildcard include/config/have/arch/within/stack/frames.h) \
$(wildcard include/config/hardened/usercopy.h) \
include/linux/bug.h \
$(wildcard include/config/bug/on/data/corruption.h) \
arch/arm/include/asm/bug.h \
$(wildcard include/config/debug/bugverbose.h) \
arch/arm/include/asm/opcodes.h \
$(wildcard include/config/cpu/endian/be32.h) \
include/asm-generic/bug.h \
$(wildcard include/config/bug.h) \
$(wildcard include/config/generic/bug/relative/pointers.h) \
include/linux/restart_block.h \
include/linux/time64.h \
$(wildcard include/config/64bit/time.h) \
include/linux/math64.h \
$(wildcard include/config/arch/supports/int128.h) \
include/uapi/linux/time.h \
arch/arm/include/asm/thread_info.h \
$(wildcard include/config/crunch.h) \
$(wildcard include/config/arm/thumbee.h) \
arch/arm/include/asm/fpstate.h \
$(wildcard include/config/vfpv3.h) \
$(wildcard include/config/iwmmxt.h) \
include/linux/bottom_half.h \
include/linux/spinlock_types.h \
arch/arm/include/asm/spinlock_types.h \
include/linux/lockdep.h \
$(wildcard include/config/lockdep.h) \
$(wildcard include/config/lock/stat.h) \
include/linux/rwlock_types.h \
arch/arm/include/asm/spinlock.h \
include/linux/rwlock.h \
include/linux/spinlock_api_smp.h \
$(wildcard include/config/inline/spin/lock.h) \
$(wildcard include/config/inline/spin/lock/bh.h) \
$(wildcard include/config/inline/spin/lock/irq.h) \
$(wildcard include/config/inline/spin/lock/irqsave.h) \
$(wildcard include/config/inline/spin/trylock.h) \
$(wildcard include/config/inline/spin/trylock/bh.h) \
$(wildcard include/config/uninline/spin/unlock.h) \
$(wildcard include/config/inline/spin/unlock/bh.h) \
$(wildcard include/config/inline/spin/unlock/irq.h) \
$(wildcard include/config/inline/spin/unlock/irqrestore.h) \
$(wildcard include/config/generic/lockbreak.h) \
include/linux/rwlock_api_smp.h \
$(wildcard include/config/inline/read/lock.h) \
$(wildcard include/config/inline/write/lock.h) \
$(wildcard include/config/inline/read/lock/bh.h) \
$(wildcard include/config/inline/write/lock/bh.h) \
$(wildcard include/config/inline/read/lock/irq.h) \
$(wildcard include/config/inline/write/lock/irq.h) \
$(wildcard include/config/inline/read/lock/irqsave.h) \
$(wildcard include/config/inline/write/lock/irqsave.h) \
$(wildcard include/config/inline/read/trylock.h) \
$(wildcard include/config/inline/write/trylock.h) \
$(wildcard include/config/inline/read/unlock.h) \
$(wildcard include/config/inline/write/unlock.h) \
$(wildcard include/config/inline/read/unlock/bh.h) \
$(wildcard include/config/inline/write/unlock/bh.h) \
$(wildcard include/config/inline/read/unlock/irq.h) \
$(wildcard include/config/inline/write/unlock/irq.h) \
$(wildcard include/config/inline/read/unlock/irqrestore.h) \
$(wildcard include/config/inline/write/unlock/irqrestore.h) \
include/linux/time32.h \
include/linux/uidgid.h \
$(wildcard include/config/multiuser.h) \
$(wildcard include/config/user/ns.h) \
include/linux/highuid.h \
include/linux/kmod.h \
include/linux/umh.h \
include/linux/gfp.h \
$(wildcard include/config/zone/dma.h) \
$(wildcard include/config/zone/dma32.h) \
$(wildcard include/config/zone/device.h) \
$(wildcard include/config/numa.h) \
$(wildcard include/config/pm/sleep.h) \
$(wildcard include/config/memory/isolation.h) \
$(wildcard include/config/compaction.h) \
$(wildcard include/config/cma.h) \
include/linux/mmdebug.h \
$(wildcard include/config/debug/vm.h) \
$(wildcard include/config/debug/vm/pgflags.h) \
include/linux/mmzone.h \
$(wildcard include/config/force/max/zoneorder.h) \
$(wildcard include/config/zsmalloc.h) \
$(wildcard include/config/memcg.h) \
$(wildcard include/config/memory/hotplug.h) \
$(wildcard include/config/flat/node/mem/map.h) \
$(wildcard include/config/page/extension.h) \
$(wildcard include/config/no/bootmem.h) \
$(wildcard include/config/deferred/struct/page/init.h) \
$(wildcard include/config/transparent/hugepage.h) \
$(wildcard include/config/have/memory/present.h) \
$(wildcard include/config/have/memoryless/nodes.h) \
$(wildcard include/config/have/memblock/node/map.h) \
$(wildcard include/config/need/multiple/nodes.h) \
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
$(wildcard include/config/sparsemem/extreme.h) \
$(wildcard include/config/memory/hotremove.h) \
$(wildcard include/config/holes/in/zone.h) \
$(wildcard include/config/arch/has/holes/memorymodel.h) \
include/linux/wait.h \
arch/arm/include/generated/asm/current.h \
include/asm-generic/current.h \
include/uapi/linux/wait.h \
include/linux/threads.h \
$(wildcard include/config/nr/cpus.h) \
$(wildcard include/config/base/small.h) \
include/linux/numa.h \
$(wildcard include/config/nodes/shift.h) \
include/linux/nodemask.h \
include/linux/bitmap.h \
include/linux/string.h \
$(wildcard include/config/binary/printf.h) \
$(wildcard include/config/fortify/source.h) \
include/uapi/linux/string.h \
arch/arm/include/asm/string.h \
$(wildcard include/config/bcm2835/fast/memcpy.h) \
include/linux/pageblock-flags.h \
$(wildcard include/config/hugetlb/page.h) \
$(wildcard include/config/hugetlb/page/size/variable.h) \
include/linux/page-flags-layout.h \
$(wildcard include/config/numa/balancing.h) \
include/generated/bounds.h \
include/linux/memory_hotplug.h \
$(wildcard include/config/arch/has/add/pages.h) \
$(wildcard include/config/have/arch/nodedata/extension.h) \
$(wildcard include/config/have/bootmem/info/node.h) \
include/linux/notifier.h \
$(wildcard include/config/tree/srcu.h) \
include/linux/errno.h \
include/uapi/linux/errno.h \
arch/arm/include/generated/uapi/asm/errno.h \
include/uapi/asm-generic/errno.h \
include/uapi/asm-generic/errno-base.h \
include/linux/mutex.h \
$(wildcard include/config/mutex/spin/on/owner.h) \
$(wildcard include/config/debug/mutexes.h) \
include/linux/osq_lock.h \
include/linux/debug_locks.h \
$(wildcard include/config/debug/locking/api/selftests.h) \
include/linux/rwsem.h \
$(wildcard include/config/rwsem/spin/on/owner.h) \
$(wildcard include/config/rwsem/generic/spinlock.h) \
include/linux/err.h \
arch/arm/include/generated/asm/rwsem.h \
include/asm-generic/rwsem.h \
include/linux/srcu.h \
$(wildcard include/config/tiny/srcu.h) \
$(wildcard include/config/srcu.h) \
include/linux/rcupdate.h \
$(wildcard include/config/preempt/rcu.h) \
$(wildcard include/config/rcu/stall/common.h) \
$(wildcard include/config/no/hz/full.h) \
$(wildcard include/config/rcu/nocb/cpu.h) \
$(wildcard include/config/tasks/rcu.h) \
$(wildcard include/config/tree/rcu.h) \
$(wildcard include/config/tiny/rcu.h) \
$(wildcard include/config/debug/objects/rcu/head.h) \
$(wildcard include/config/hotplug/cpu.h) \
$(wildcard include/config/prove/rcu.h) \
$(wildcard include/config/rcu/boost.h) \
$(wildcard include/config/arch/weak/release/acquire.h) \
include/linux/cpumask.h \
$(wildcard include/config/cpumask/offstack.h) \
$(wildcard include/config/debug/per/cpu/maps.h) \
include/linux/rcutree.h \
include/linux/workqueue.h \
$(wildcard include/config/debug/objects/work.h) \
$(wildcard include/config/freezer.h) \
$(wildcard include/config/wq/watchdog.h) \
include/linux/timer.h \
$(wildcard include/config/debug/objects/timers.h) \
$(wildcard include/config/no/hz/common.h) \
include/linux/ktime.h \
include/linux/jiffies.h \
include/linux/timex.h \
include/uapi/linux/timex.h \
include/uapi/linux/param.h \
arch/arm/include/generated/uapi/asm/param.h \
include/asm-generic/param.h \
$(wildcard include/config/hz.h) \
include/uapi/asm-generic/param.h \
arch/arm/include/asm/timex.h \
include/generated/timeconst.h \
include/linux/timekeeping.h \
include/linux/timekeeping32.h \
include/linux/debugobjects.h \
$(wildcard include/config/debug/objects.h) \
$(wildcard include/config/debug/objects/free.h) \
include/linux/rcu_segcblist.h \
include/linux/srcutree.h \
include/linux/rcu_node_tree.h \
$(wildcard include/config/rcu/fanout.h) \
$(wildcard include/config/rcu/fanout/leaf.h) \
include/linux/completion.h \
include/linux/topology.h \
$(wildcard include/config/use/percpu/numa/node/id.h) \
$(wildcard include/config/sched/smt.h) \
include/linux/smp.h \
$(wildcard include/config/up/late/init.h) \
include/linux/llist.h \
$(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \
arch/arm/include/asm/smp.h \
include/linux/percpu.h \
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
$(wildcard include/config/have/setup/per/cpu/area.h) \
arch/arm/include/asm/percpu.h \
include/asm-generic/percpu.h \
include/linux/percpu-defs.h \
$(wildcard include/config/debug/force/weak/per/cpu.h) \
$(wildcard include/config/virtualization.h) \
$(wildcard include/config/amd/mem/encrypt.h) \
arch/arm/include/asm/topology.h \
$(wildcard include/config/arm/cpu/topology.h) \
include/linux/arch_topology.h \
include/asm-generic/topology.h \
include/linux/sysctl.h \
$(wildcard include/config/sysctl.h) \
include/linux/rbtree.h \
include/uapi/linux/sysctl.h \
include/linux/kobject.h \
$(wildcard include/config/uevent/helper.h) \
$(wildcard include/config/debug/kobject/release.h) \
include/linux/sysfs.h \
include/linux/kernfs.h \
$(wildcard include/config/kernfs.h) \
include/linux/idr.h \
include/linux/radix-tree.h \
$(wildcard include/config/radix/tree/multiorder.h) \
include/linux/kobject_ns.h \
include/linux/kref.h \
include/linux/refcount.h \
$(wildcard include/config/refcount/full.h) \
include/linux/moduleparam.h \
$(wildcard include/config/alpha.h) \
$(wildcard include/config/ia64.h) \
$(wildcard include/config/ppc64.h) \
include/linux/jump_label.h \
arch/arm/include/asm/jump_label.h \
include/linux/rbtree_latch.h \
include/linux/error-injection.h \
include/asm-generic/error-injection.h \
include/linux/tracepoint-defs.h \
include/linux/static_key.h \
arch/arm/include/asm/module.h \
$(wildcard include/config/arm/unwind.h) \
$(wildcard include/config/arm/module/plts.h) \
include/asm-generic/module.h \
$(wildcard include/config/have/mod/arch/specific.h) \
$(wildcard include/config/modules/use/elf/rel.h) \
$(wildcard include/config/modules/use/elf/rela.h) \
include/linux/vermagic.h \
include/generated/utsrelease.h \
/home/pi/Desktop/project/hum/hum_dev.mod.o: $(deps_/home/pi/Desktop/project/hum/hum_dev.mod.o)
$(deps_/home/pi/Desktop/project/hum/hum_dev.mod.o):
cmd_/home/pi/Desktop/project/hum/hum_dev.o := gcc -Wp,-MD,/home/pi/Desktop/project/hum/.hum_dev.o.d -nostdinc -isystem /usr/lib/gcc/arm-linux-gnueabihf/8/include -I./arch/arm/include -I./arch/arm/include/generated -I./include -I./arch/arm/include/uapi -I./arch/arm/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -mlittle-endian -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -Werror-implicit-function-declaration -Wno-format-security -std=gnu89 -fno-PIE -fno-dwarf2-cfi-asm -fno-omit-frame-pointer -mapcs -mno-sched-prolog -fno-ipa-sra -mabi=aapcs-linux -mfpu=vfp -funwind-tables -marm -Wa,-mno-warn-deprecated -D__LINUX_ARM_ARCH__=7 -march=armv7-a -msoft-float -Uarm -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-int-in-bool-context -O2 --param=allow-store-data-races=0 -Wframe-larger-than=1024 -fstack-protector-strong -Wno-unused-but-set-variable -Wno-unused-const-variable -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-var-tracking-assignments -pg -Wdeclaration-after-statement -Wno-pointer-sign -Wno-stringop-truncation -fno-strict-overflow -fno-merge-all-constants -fmerge-constants -fno-stack-check -fconserve-stack -Werror=implicit-int -Werror=strict-prototypes -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -fmacro-prefix-map=./= -Wno-packed-not-aligned -DMODULE -DKBUILD_BASENAME='"hum_dev"' -DKBUILD_MODNAME='"hum_dev"' -c -o /home/pi/Desktop/project/hum/.tmp_hum_dev.o /home/pi/Desktop/project/hum/hum_dev.c
source_/home/pi/Desktop/project/hum/hum_dev.o := /home/pi/Desktop/project/hum/hum_dev.c
deps_/home/pi/Desktop/project/hum/hum_dev.o := \
include/linux/kconfig.h \
$(wildcard include/config/cpu/big/endian.h) \
$(wildcard include/config/booger.h) \
$(wildcard include/config/foo.h) \
include/linux/compiler_types.h \
$(wildcard include/config/have/arch/compiler/h.h) \
$(wildcard include/config/enable/must/check.h) \
$(wildcard include/config/arch/supports/optimized/inlining.h) \
$(wildcard include/config/optimize/inlining.h) \
include/linux/compiler-gcc.h \
$(wildcard include/config/retpoline.h) \
$(wildcard include/config/arch/use/builtin/bswap.h) \
include/linux/init.h \
$(wildcard include/config/have/arch/prel32/relocations.h) \
$(wildcard include/config/strict/kernel/rwx.h) \
$(wildcard include/config/strict/module/rwx.h) \
include/linux/compiler.h \
$(wildcard include/config/trace/branch/profiling.h) \
$(wildcard include/config/profile/all/branches.h) \
$(wildcard include/config/stack/validation.h) \
$(wildcard include/config/kasan.h) \
include/linux/compiler_types.h \
include/uapi/linux/types.h \
arch/arm/include/uapi/asm/types.h \
include/asm-generic/int-ll64.h \
include/uapi/asm-generic/int-ll64.h \
arch/arm/include/generated/uapi/asm/bitsperlong.h \
include/asm-generic/bitsperlong.h \
$(wildcard include/config/64bit.h) \
include/uapi/asm-generic/bitsperlong.h \
include/uapi/linux/posix_types.h \
include/linux/stddef.h \
include/uapi/linux/stddef.h \
arch/arm/include/uapi/asm/posix_types.h \
include/uapi/asm-generic/posix_types.h \
arch/arm/include/asm/barrier.h \
$(wildcard include/config/cpu/32v6k.h) \
$(wildcard include/config/thumb2/kernel.h) \
$(wildcard include/config/cpu/xsc3.h) \
$(wildcard include/config/cpu/fa526.h) \
$(wildcard include/config/arm/heavy/mb.h) \
$(wildcard include/config/arm/dma/mem/bufferable.h) \
$(wildcard include/config/smp.h) \
$(wildcard include/config/cpu/spectre.h) \
include/asm-generic/barrier.h \
include/linux/kasan-checks.h \
include/linux/types.h \
$(wildcard include/config/have/uid16.h) \
$(wildcard include/config/uid16.h) \
$(wildcard include/config/lbdaf.h) \
$(wildcard include/config/arch/dma/addr/t/64bit.h) \
$(wildcard include/config/phys/addr/t/64bit.h) \
include/linux/kernel.h \
$(wildcard include/config/preempt/voluntary.h) \
$(wildcard include/config/debug/atomic/sleep.h) \
$(wildcard include/config/mmu.h) \
$(wildcard include/config/prove/locking.h) \
$(wildcard include/config/arch/has/refcount.h) \
$(wildcard include/config/panic/timeout.h) \
$(wildcard include/config/tracing.h) \
$(wildcard include/config/ftrace/mcount/record.h) \
/usr/lib/gcc/arm-linux-gnueabihf/8/include/stdarg.h \
include/linux/linkage.h \
include/linux/stringify.h \
include/linux/export.h \
$(wildcard include/config/modules.h) \
$(wildcard include/config/modversions.h) \
$(wildcard include/config/module/rel/crcs.h) \
$(wildcard include/config/trim/unused/ksyms.h) \
$(wildcard include/config/unused/symbols.h) \
arch/arm/include/asm/linkage.h \
include/linux/bitops.h \
include/linux/bits.h \
arch/arm/include/asm/bitops.h \
include/linux/irqflags.h \
$(wildcard include/config/trace/irqflags.h) \
$(wildcard include/config/irqsoff/tracer.h) \
$(wildcard include/config/preempt/tracer.h) \
$(wildcard include/config/trace/irqflags/support.h) \
include/linux/typecheck.h \
arch/arm/include/asm/irqflags.h \
$(wildcard include/config/cpu/v7m.h) \
arch/arm/include/asm/ptrace.h \
$(wildcard include/config/arm/thumb.h) \
arch/arm/include/uapi/asm/ptrace.h \
$(wildcard include/config/cpu/endian/be8.h) \
arch/arm/include/asm/hwcap.h \
arch/arm/include/uapi/asm/hwcap.h \
include/asm-generic/irqflags.h \
include/asm-generic/bitops/non-atomic.h \
include/asm-generic/bitops/builtin-__fls.h \
include/asm-generic/bitops/builtin-__ffs.h \
include/asm-generic/bitops/builtin-fls.h \
include/asm-generic/bitops/builtin-ffs.h \
include/asm-generic/bitops/ffz.h \
include/asm-generic/bitops/fls64.h \
include/asm-generic/bitops/sched.h \
include/asm-generic/bitops/hweight.h \
include/asm-generic/bitops/arch_hweight.h \
include/asm-generic/bitops/const_hweight.h \
include/asm-generic/bitops/lock.h \
include/linux/atomic.h \
$(wildcard include/config/generic/atomic64.h) \
arch/arm/include/asm/atomic.h \
$(wildcard include/config/arm/lpae.h) \
include/linux/prefetch.h \
arch/arm/include/asm/processor.h \
$(wildcard include/config/have/hw/breakpoint.h) \
$(wildcard include/config/binfmt/elf/fdpic.h) \
$(wildcard include/config/arm/errata/754327.h) \
arch/arm/include/asm/hw_breakpoint.h \
arch/arm/include/asm/unified.h \
arch/arm/include/asm/cache.h \
$(wildcard include/config/arm/l1/cache/shift.h) \
$(wildcard include/config/aeabi.h) \
arch/arm/include/asm/cmpxchg.h \
$(wildcard include/config/cpu/sa1100.h) \
$(wildcard include/config/cpu/sa110.h) \
$(wildcard include/config/cpu/v6.h) \
include/asm-generic/cmpxchg-local.h \
include/asm-generic/atomic-long.h \
include/asm-generic/bitops/find.h \
$(wildcard include/config/generic/find/first/bit.h) \
include/asm-generic/bitops/le.h \
arch/arm/include/uapi/asm/byteorder.h \
include/linux/byteorder/little_endian.h \
include/uapi/linux/byteorder/little_endian.h \
include/linux/swab.h \
include/uapi/linux/swab.h \
arch/arm/include/asm/swab.h \
arch/arm/include/uapi/asm/swab.h \
include/linux/byteorder/generic.h \
include/asm-generic/bitops/ext2-atomic-setbit.h \
include/linux/log2.h \
$(wildcard include/config/arch/has/ilog2/u32.h) \
$(wildcard include/config/arch/has/ilog2/u64.h) \
include/linux/printk.h \
$(wildcard include/config/message/loglevel/default.h) \
$(wildcard include/config/console/loglevel/default.h) \
$(wildcard include/config/console/loglevel/quiet.h) \
$(wildcard include/config/early/printk.h) \
$(wildcard include/config/printk/nmi.h) \
$(wildcard include/config/printk.h) \
$(wildcard include/config/dynamic/debug.h) \
include/linux/kern_levels.h \
include/linux/cache.h \
$(wildcard include/config/arch/has/cache/line/size.h) \
include/uapi/linux/kernel.h \
include/uapi/linux/sysinfo.h \
include/linux/build_bug.h \
arch/arm/include/asm/div64.h \
arch/arm/include/asm/compiler.h \
include/asm-generic/div64.h \
include/linux/module.h \
$(wildcard include/config/sysfs.h) \
$(wildcard include/config/modules/tree/lookup.h) \
$(wildcard include/config/livepatch.h) \
$(wildcard include/config/module/sig.h) \
$(wildcard include/config/generic/bug.h) \
$(wildcard include/config/kallsyms.h) \
$(wildcard include/config/tracepoints.h) \
$(wildcard include/config/jump/label.h) \
$(wildcard include/config/event/tracing.h) \
$(wildcard include/config/module/unload.h) \
$(wildcard include/config/constructors.h) \
$(wildcard include/config/function/error/injection.h) \
include/linux/list.h \
$(wildcard include/config/debug/list.h) \
include/linux/poison.h \
$(wildcard include/config/illegal/pointer/value.h) \
$(wildcard include/config/page/poisoning/zero.h) \
include/linux/const.h \
include/uapi/linux/const.h \
include/linux/stat.h \
arch/arm/include/uapi/asm/stat.h \
include/uapi/linux/stat.h \
include/linux/time.h \
$(wildcard include/config/arch/uses/gettimeoffset.h) \
include/linux/seqlock.h \
$(wildcard include/config/debug/lock/alloc.h) \
include/linux/spinlock.h \
$(wildcard include/config/debug/spinlock.h) \
$(wildcard include/config/preempt.h) \
include/linux/preempt.h \
$(wildcard include/config/preempt/count.h) \
$(wildcard include/config/debug/preempt.h) \
$(wildcard include/config/trace/preempt/toggle.h) \
$(wildcard include/config/preempt/notifiers.h) \
arch/arm/include/generated/asm/preempt.h \
include/asm-generic/preempt.h \
include/linux/thread_info.h \
$(wildcard include/config/thread/info/in/task.h) \
$(wildcard include/config/have/arch/within/stack/frames.h) \
$(wildcard include/config/hardened/usercopy.h) \
include/linux/bug.h \
$(wildcard include/config/bug/on/data/corruption.h) \
arch/arm/include/asm/bug.h \
$(wildcard include/config/debug/bugverbose.h) \
arch/arm/include/asm/opcodes.h \
$(wildcard include/config/cpu/endian/be32.h) \
include/asm-generic/bug.h \
$(wildcard include/config/bug.h) \
$(wildcard include/config/generic/bug/relative/pointers.h) \
include/linux/restart_block.h \
include/linux/time64.h \
$(wildcard include/config/64bit/time.h) \
include/linux/math64.h \
$(wildcard include/config/arch/supports/int128.h) \
include/uapi/linux/time.h \
arch/arm/include/asm/thread_info.h \
$(wildcard include/config/crunch.h) \
$(wildcard include/config/arm/thumbee.h) \
arch/arm/include/asm/fpstate.h \
$(wildcard include/config/vfpv3.h) \
$(wildcard include/config/iwmmxt.h) \
arch/arm/include/asm/page.h \
$(wildcard include/config/cpu/copy/v4wt.h) \
$(wildcard include/config/cpu/copy/v4wb.h) \
$(wildcard include/config/cpu/copy/feroceon.h) \
$(wildcard include/config/cpu/copy/fa.h) \
$(wildcard include/config/cpu/xscale.h) \
$(wildcard include/config/cpu/copy/v6.h) \
$(wildcard include/config/kuser/helpers.h) \
$(wildcard include/config/have/arch/pfn/valid.h) \
arch/arm/include/asm/glue.h \
arch/arm/include/asm/pgtable-2level-types.h \
arch/arm/include/asm/memory.h \
$(wildcard include/config/need/mach/memory/h.h) \
$(wildcard include/config/page/offset.h) \
$(wildcard include/config/highmem.h) \
$(wildcard include/config/dram/base.h) \
$(wildcard include/config/dram/size.h) \
$(wildcard include/config/xip/kernel.h) \
$(wildcard include/config/have/tcm.h) \
$(wildcard include/config/arm/patch/phys/virt.h) \
$(wildcard include/config/phys/offset.h) \
$(wildcard include/config/xip/phys/addr.h) \
$(wildcard include/config/debug/virtual.h) \
include/linux/sizes.h \
include/asm-generic/memory_model.h \
$(wildcard include/config/flatmem.h) \
$(wildcard include/config/discontigmem.h) \
$(wildcard include/config/sparsemem/vmemmap.h) \
$(wildcard include/config/sparsemem.h) \
include/linux/pfn.h \
include/asm-generic/getorder.h \
include/linux/bottom_half.h \
include/linux/spinlock_types.h \
arch/arm/include/asm/spinlock_types.h \
include/linux/lockdep.h \
$(wildcard include/config/lockdep.h) \
$(wildcard include/config/lock/stat.h) \
include/linux/rwlock_types.h \
arch/arm/include/asm/spinlock.h \
include/linux/rwlock.h \
include/linux/spinlock_api_smp.h \
$(wildcard include/config/inline/spin/lock.h) \
$(wildcard include/config/inline/spin/lock/bh.h) \
$(wildcard include/config/inline/spin/lock/irq.h) \
$(wildcard include/config/inline/spin/lock/irqsave.h) \
$(wildcard include/config/inline/spin/trylock.h) \
$(wildcard include/config/inline/spin/trylock/bh.h) \
$(wildcard include/config/uninline/spin/unlock.h) \
$(wildcard include/config/inline/spin/unlock/bh.h) \
$(wildcard include/config/inline/spin/unlock/irq.h) \
$(wildcard include/config/inline/spin/unlock/irqrestore.h) \
$(wildcard include/config/generic/lockbreak.h) \
include/linux/rwlock_api_smp.h \
$(wildcard include/config/inline/read/lock.h) \
$(wildcard include/config/inline/write/lock.h) \
$(wildcard include/config/inline/read/lock/bh.h) \
$(wildcard include/config/inline/write/lock/bh.h) \
$(wildcard include/config/inline/read/lock/irq.h) \
$(wildcard include/config/inline/write/lock/irq.h) \
$(wildcard include/config/inline/read/lock/irqsave.h) \
$(wildcard include/config/inline/write/lock/irqsave.h) \
$(wildcard include/config/inline/read/trylock.h) \
$(wildcard include/config/inline/write/trylock.h) \
$(wildcard include/config/inline/read/unlock.h) \
$(wildcard include/config/inline/write/unlock.h) \
$(wildcard include/config/inline/read/unlock/bh.h) \
$(wildcard include/config/inline/write/unlock/bh.h) \
$(wildcard include/config/inline/read/unlock/irq.h) \
$(wildcard include/config/inline/write/unlock/irq.h) \
$(wildcard include/config/inline/read/unlock/irqrestore.h) \
$(wildcard include/config/inline/write/unlock/irqrestore.h) \
include/linux/time32.h \
include/linux/uidgid.h \
$(wildcard include/config/multiuser.h) \
$(wildcard include/config/user/ns.h) \
include/linux/highuid.h \
include/linux/kmod.h \
include/linux/umh.h \
include/linux/gfp.h \
$(wildcard include/config/zone/dma.h) \
$(wildcard include/config/zone/dma32.h) \
$(wildcard include/config/zone/device.h) \
$(wildcard include/config/numa.h) \
$(wildcard include/config/pm/sleep.h) \
$(wildcard include/config/memory/isolation.h) \
$(wildcard include/config/compaction.h) \
$(wildcard include/config/cma.h) \
include/linux/mmdebug.h \
$(wildcard include/config/debug/vm.h) \
$(wildcard include/config/debug/vm/pgflags.h) \
include/linux/mmzone.h \
$(wildcard include/config/force/max/zoneorder.h) \
$(wildcard include/config/zsmalloc.h) \
$(wildcard include/config/memcg.h) \
$(wildcard include/config/memory/hotplug.h) \
$(wildcard include/config/flat/node/mem/map.h) \
$(wildcard include/config/page/extension.h) \
$(wildcard include/config/no/bootmem.h) \
$(wildcard include/config/deferred/struct/page/init.h) \
$(wildcard include/config/transparent/hugepage.h) \
$(wildcard include/config/have/memory/present.h) \
$(wildcard include/config/have/memoryless/nodes.h) \
$(wildcard include/config/have/memblock/node/map.h) \
$(wildcard include/config/need/multiple/nodes.h) \
$(wildcard include/config/have/arch/early/pfn/to/nid.h) \
$(wildcard include/config/sparsemem/extreme.h) \
$(wildcard include/config/memory/hotremove.h) \
$(wildcard include/config/holes/in/zone.h) \
$(wildcard include/config/arch/has/holes/memorymodel.h) \
include/linux/wait.h \
arch/arm/include/generated/asm/current.h \
include/asm-generic/current.h \
include/uapi/linux/wait.h \
include/linux/threads.h \
$(wildcard include/config/nr/cpus.h) \
$(wildcard include/config/base/small.h) \
include/linux/numa.h \
$(wildcard include/config/nodes/shift.h) \
include/linux/nodemask.h \
include/linux/bitmap.h \
include/linux/string.h \
$(wildcard include/config/binary/printf.h) \
$(wildcard include/config/fortify/source.h) \
include/uapi/linux/string.h \
arch/arm/include/asm/string.h \
$(wildcard include/config/bcm2835/fast/memcpy.h) \
include/linux/pageblock-flags.h \
$(wildcard include/config/hugetlb/page.h) \
$(wildcard include/config/hugetlb/page/size/variable.h) \
include/linux/page-flags-layout.h \
$(wildcard include/config/numa/balancing.h) \
include/generated/bounds.h \
include/linux/memory_hotplug.h \
$(wildcard include/config/arch/has/add/pages.h) \
$(wildcard include/config/have/arch/nodedata/extension.h) \
$(wildcard include/config/have/bootmem/info/node.h) \
include/linux/notifier.h \
$(wildcard include/config/tree/srcu.h) \
include/linux/errno.h \
include/uapi/linux/errno.h \
arch/arm/include/generated/uapi/asm/errno.h \
include/uapi/asm-generic/errno.h \
include/uapi/asm-generic/errno-base.h \
include/linux/mutex.h \
$(wildcard include/config/mutex/spin/on/owner.h) \
$(wildcard include/config/debug/mutexes.h) \
include/linux/osq_lock.h \
include/linux/debug_locks.h \
$(wildcard include/config/debug/locking/api/selftests.h) \
include/linux/rwsem.h \
$(wildcard include/config/rwsem/spin/on/owner.h) \
$(wildcard include/config/rwsem/generic/spinlock.h) \
include/linux/err.h \
arch/arm/include/generated/asm/rwsem.h \
include/asm-generic/rwsem.h \
include/linux/srcu.h \
$(wildcard include/config/tiny/srcu.h) \
$(wildcard include/config/srcu.h) \
include/linux/rcupdate.h \
$(wildcard include/config/preempt/rcu.h) \
$(wildcard include/config/rcu/stall/common.h) \
$(wildcard include/config/no/hz/full.h) \
$(wildcard include/config/rcu/nocb/cpu.h) \
$(wildcard include/config/tasks/rcu.h) \
$(wildcard include/config/tree/rcu.h) \
$(wildcard include/config/tiny/rcu.h) \
$(wildcard include/config/debug/objects/rcu/head.h) \
$(wildcard include/config/hotplug/cpu.h) \
$(wildcard include/config/prove/rcu.h) \
$(wildcard include/config/rcu/boost.h) \
$(wildcard include/config/arch/weak/release/acquire.h) \
include/linux/cpumask.h \
$(wildcard include/config/cpumask/offstack.h) \
$(wildcard include/config/debug/per/cpu/maps.h) \
include/linux/rcutree.h \
include/linux/workqueue.h \
$(wildcard include/config/debug/objects/work.h) \
$(wildcard include/config/freezer.h) \
$(wildcard include/config/wq/watchdog.h) \
include/linux/timer.h \
$(wildcard include/config/debug/objects/timers.h) \
$(wildcard include/config/no/hz/common.h) \
include/linux/ktime.h \
include/linux/jiffies.h \
include/linux/timex.h \
include/uapi/linux/timex.h \
include/uapi/linux/param.h \
arch/arm/include/generated/uapi/asm/param.h \
include/asm-generic/param.h \
$(wildcard include/config/hz.h) \
include/uapi/asm-generic/param.h \
arch/arm/include/asm/timex.h \
include/generated/timeconst.h \
include/linux/timekeeping.h \
include/linux/timekeeping32.h \
include/linux/debugobjects.h \
$(wildcard include/config/debug/objects.h) \
$(wildcard include/config/debug/objects/free.h) \
include/linux/rcu_segcblist.h \
include/linux/srcutree.h \
include/linux/rcu_node_tree.h \
$(wildcard include/config/rcu/fanout.h) \
$(wildcard include/config/rcu/fanout/leaf.h) \
include/linux/completion.h \
include/linux/topology.h \
$(wildcard include/config/use/percpu/numa/node/id.h) \
$(wildcard include/config/sched/smt.h) \
include/linux/smp.h \
$(wildcard include/config/up/late/init.h) \
include/linux/llist.h \
$(wildcard include/config/arch/have/nmi/safe/cmpxchg.h) \
arch/arm/include/asm/smp.h \
include/linux/percpu.h \
$(wildcard include/config/need/per/cpu/embed/first/chunk.h) \
$(wildcard include/config/need/per/cpu/page/first/chunk.h) \
$(wildcard include/config/have/setup/per/cpu/area.h) \
arch/arm/include/asm/percpu.h \
include/asm-generic/percpu.h \
include/linux/percpu-defs.h \
$(wildcard include/config/debug/force/weak/per/cpu.h) \
$(wildcard include/config/virtualization.h) \
$(wildcard include/config/amd/mem/encrypt.h) \
arch/arm/include/asm/topology.h \
$(wildcard include/config/arm/cpu/topology.h) \
include/linux/arch_topology.h \
include/asm-generic/topology.h \
include/linux/sysctl.h \
$(wildcard include/config/sysctl.h) \
include/linux/rbtree.h \
include/uapi/linux/sysctl.h \
include/linux/elf.h \
arch/arm/include/asm/elf.h \
$(wildcard include/config/vdso.h) \
arch/arm/include/asm/auxvec.h \
arch/arm/include/uapi/asm/auxvec.h \
arch/arm/include/asm/vdso_datapage.h \
arch/arm/include/asm/user.h \
include/uapi/linux/elf.h \
include/uapi/linux/elf-em.h \
include/linux/kobject.h \
$(wildcard include/config/uevent/helper.h) \
$(wildcard include/config/debug/kobject/release.h) \
include/linux/sysfs.h \
include/linux/kernfs.h \
$(wildcard include/config/kernfs.h) \
include/linux/idr.h \
include/linux/radix-tree.h \
$(wildcard include/config/radix/tree/multiorder.h) \
include/linux/kobject_ns.h \
include/linux/kref.h \
include/linux/refcount.h \
$(wildcard include/config/refcount/full.h) \
include/linux/moduleparam.h \
$(wildcard include/config/alpha.h) \
$(wildcard include/config/ia64.h) \
$(wildcard include/config/ppc64.h) \
include/linux/jump_label.h \
arch/arm/include/asm/jump_label.h \
include/linux/rbtree_latch.h \
include/linux/error-injection.h \
include/asm-generic/error-injection.h \
include/linux/tracepoint-defs.h \
include/linux/static_key.h \
arch/arm/include/asm/module.h \
$(wildcard include/config/arm/unwind.h) \
$(wildcard include/config/arm/module/plts.h) \
include/asm-generic/module.h \
$(wildcard include/config/have/mod/arch/specific.h) \
$(wildcard include/config/modules/use/elf/rel.h) \
$(wildcard include/config/modules/use/elf/rela.h) \
include/linux/fs.h \
$(wildcard include/config/fs/posix/acl.h) \
$(wildcard include/config/security.h) \
$(wildcard include/config/cgroup/writeback.h) \
$(wildcard include/config/ima.h) \
$(wildcard include/config/fsnotify.h) \
$(wildcard include/config/fs/encryption.h) \
$(wildcard include/config/epoll.h) \
$(wildcard include/config/file/locking.h) \
$(wildcard include/config/quota.h) \
$(wildcard include/config/fs/dax.h) \
$(wildcard include/config/block.h) \
$(wildcard include/config/mandatory/file/locking.h) \
$(wildcard include/config/migration.h) \
include/linux/wait_bit.h \
include/linux/kdev_t.h \
include/uapi/linux/kdev_t.h \
include/linux/dcache.h \
include/linux/rculist.h \
include/linux/rculist_bl.h \
include/linux/list_bl.h \
include/linux/bit_spinlock.h \
include/linux/lockref.h \
$(wildcard include/config/arch/use/cmpxchg/lockref.h) \
include/linux/stringhash.h \
$(wildcard include/config/dcache/word/access.h) \
include/linux/hash.h \
$(wildcard include/config/have/arch/hash.h) \
include/linux/path.h \
include/linux/list_lru.h \
$(wildcard include/config/memcg/kmem.h) \
include/linux/shrinker.h \
include/linux/xarray.h \
include/linux/pid.h \
include/linux/mm_types.h \
$(wildcard include/config/have/aligned/struct/page.h) \
$(wildcard include/config/userfaultfd.h) \
$(wildcard include/config/have/arch/compat/mmap/bases.h) \
$(wildcard include/config/membarrier.h) \
$(wildcard include/config/aio.h) \
$(wildcard include/config/mmu/notifier.h) \
$(wildcard include/config/arch/want/batched/unmap/tlb/flush.h) \
$(wildcard include/config/hmm.h) \
include/linux/mm_types_task.h \
$(wildcard include/config/split/ptlock/cpus.h) \
$(wildcard include/config/arch/enable/split/pmd/ptlock.h) \
include/linux/auxvec.h \
include/uapi/linux/auxvec.h \
include/linux/uprobes.h \
$(wildcard include/config/uprobes.h) \
arch/arm/include/asm/mmu.h \
$(wildcard include/config/cpu/has/asid.h) \
include/linux/capability.h \
include/uapi/linux/capability.h \
include/linux/semaphore.h \
include/linux/fcntl.h \
include/uapi/linux/fcntl.h \
arch/arm/include/uapi/asm/fcntl.h \
include/uapi/asm-generic/fcntl.h \
include/uapi/linux/fiemap.h \
include/linux/migrate_mode.h \
include/linux/percpu-rwsem.h \
include/linux/rcuwait.h \
include/linux/rcu_sync.h \
include/linux/delayed_call.h \
include/linux/uuid.h \
include/uapi/linux/uuid.h \
include/linux/errseq.h \
include/linux/ioprio.h \
include/linux/sched.h \
$(wildcard include/config/virt/cpu/accounting/native.h) \
$(wildcard include/config/sched/info.h) \
$(wildcard include/config/schedstats.h) \
$(wildcard include/config/fair/group/sched.h) \
$(wildcard include/config/rt/group/sched.h) \
$(wildcard include/config/cgroup/sched.h) \
$(wildcard include/config/blk/dev/io/trace.h) \
$(wildcard include/config/compat/brk.h) \
$(wildcard include/config/cgroups.h) \
$(wildcard include/config/blk/cgroup.h) \
$(wildcard include/config/stackprotector.h) \
$(wildcard include/config/arch/has/scaled/cputime.h) \
$(wildcard include/config/virt/cpu/accounting/gen.h) \
$(wildcard include/config/posix/timers.h) \
$(wildcard include/config/sysvipc.h) \
$(wildcard include/config/detect/hung/task.h) \
$(wildcard include/config/auditsyscall.h) \
$(wildcard include/config/rt/mutexes.h) \
$(wildcard include/config/ubsan.h) \
$(wildcard include/config/task/xacct.h) \
$(wildcard include/config/cpusets.h) \
$(wildcard include/config/intel/rdt.h) \
$(wildcard include/config/futex.h) \
$(wildcard include/config/compat.h) \
$(wildcard include/config/perf/events.h) \
$(wildcard include/config/rseq.h) \
$(wildcard include/config/task/delay/acct.h) \
$(wildcard include/config/fault/injection.h) \
$(wildcard include/config/latencytop.h) \
$(wildcard include/config/function/graph/tracer.h) \
$(wildcard include/config/kcov.h) \
$(wildcard include/config/bcache.h) \
$(wildcard include/config/vmap/stack.h) \
$(wildcard include/config/arch/task/struct/on/stack.h) \
$(wildcard include/config/debug/rseq.h) \
include/uapi/linux/sched.h \
include/linux/sem.h \
include/uapi/linux/sem.h \
include/linux/ipc.h \
include/linux/rhashtable-types.h \
include/uapi/linux/ipc.h \
arch/arm/include/generated/uapi/asm/ipcbuf.h \
include/uapi/asm-generic/ipcbuf.h \
arch/arm/include/generated/uapi/asm/sembuf.h \
include/uapi/asm-generic/sembuf.h \
include/linux/shm.h \
include/uapi/linux/shm.h \
include/uapi/asm-generic/hugetlb_encode.h \
arch/arm/include/generated/uapi/asm/shmbuf.h \
include/uapi/asm-generic/shmbuf.h \
arch/arm/include/asm/shmparam.h \
include/linux/kcov.h \
include/uapi/linux/kcov.h \
include/linux/plist.h \
$(wildcard include/config/debug/pi/list.h) \
include/linux/hrtimer.h \
$(wildcard include/config/high/res/timers.h) \
$(wildcard include/config/time/low/res.h) \
$(wildcard include/config/timerfd.h) \
include/linux/timerqueue.h \
include/linux/seccomp.h \
$(wildcard include/config/seccomp.h) \
$(wildcard include/config/have/arch/seccomp/filter.h) \
$(wildcard include/config/seccomp/filter.h) \
$(wildcard include/config/checkpoint/restore.h) \
include/uapi/linux/seccomp.h \
arch/arm/include/generated/asm/seccomp.h \
include/asm-generic/seccomp.h \
include/uapi/linux/unistd.h \
arch/arm/include/asm/unistd.h \
$(wildcard include/config/oabi/compat.h) \
arch/arm/include/uapi/asm/unistd.h \
arch/arm/include/generated/uapi/asm/unistd-eabi.h \
arch/arm/include/generated/uapi/asm/unistd-common.h \
arch/arm/include/generated/asm/unistd-nr.h \
include/linux/resource.h \
include/uapi/linux/resource.h \
arch/arm/include/generated/uapi/asm/resource.h \
include/asm-generic/resource.h \
include/uapi/asm-generic/resource.h \
include/linux/latencytop.h \
include/linux/sched/prio.h \
include/linux/signal_types.h \
$(wildcard include/config/old/sigaction.h) \
include/uapi/linux/signal.h \
arch/arm/include/asm/signal.h \
arch/arm/include/uapi/asm/signal.h \
include/uapi/asm-generic/signal-defs.h \
arch/arm/include/uapi/asm/sigcontext.h \
arch/arm/include/generated/uapi/asm/siginfo.h \
include/uapi/asm-generic/siginfo.h \
include/linux/task_io_accounting.h \
$(wildcard include/config/task/io/accounting.h) \
include/uapi/linux/rseq.h \
include/linux/sched/rt.h \
include/linux/iocontext.h \
include/uapi/linux/fs.h \
include/uapi/linux/limits.h \
include/uapi/linux/ioctl.h \
arch/arm/include/generated/uapi/asm/ioctl.h \
include/asm-generic/ioctl.h \
include/uapi/asm-generic/ioctl.h \
include/linux/quota.h \
$(wildcard include/config/quota/netlink/interface.h) \
include/linux/percpu_counter.h \
include/uapi/linux/dqblk_xfs.h \
include/linux/dqblk_v1.h \
include/linux/dqblk_v2.h \
include/linux/dqblk_qtree.h \
include/linux/projid.h \
include/uapi/linux/quota.h \
include/linux/nfs_fs_i.h \
include/linux/uaccess.h \
arch/arm/include/asm/uaccess.h \
$(wildcard include/config/cpu/sw/domain/pan.h) \
$(wildcard include/config/cpu/use/domains.h) \
$(wildcard include/config/uaccess/with/memcpy.h) \
arch/arm/include/asm/domain.h \
$(wildcard include/config/io/36.h) \
$(wildcard include/config/cpu/cp15/mmu.h) \
arch/arm/include/generated/asm/extable.h \
include/asm-generic/extable.h \
include/linux/slab.h \
$(wildcard include/config/debug/slab.h) \
$(wildcard include/config/failslab.h) \
$(wildcard include/config/have/hardened/usercopy/allocator.h) \
$(wildcard include/config/slab.h) \
$(wildcard include/config/slub.h) \
$(wildcard include/config/slob.h) \
include/linux/overflow.h \
include/linux/kasan.h \
include/linux/delay.h \
arch/arm/include/asm/delay.h \
arch/arm/include/asm/mach/map.h \
$(wildcard include/config/debug/ll.h) \
arch/arm/include/asm/io.h \
$(wildcard include/config/pci.h) \
$(wildcard include/config/need/mach/io/h.h) \
$(wildcard include/config/pcmcia/soc/common.h) \
$(wildcard include/config/isa.h) \
$(wildcard include/config/pccard.h) \
include/asm-generic/pci_iomap.h \
$(wildcard include/config/no/generic/pci/ioport/map.h) \
$(wildcard include/config/generic/pci/iomap.h) \
include/xen/xen.h \
$(wildcard include/config/xen.h) \
$(wildcard include/config/xen/pvh.h) \
$(wildcard include/config/xen/dom0.h) \
include/asm-generic/io.h \
$(wildcard include/config/generic/iomap.h) \
$(wildcard include/config/has/ioport/map.h) \
$(wildcard include/config/virt/to/bus.h) \
include/linux/logic_pio.h \
$(wildcard include/config/indirect/pio.h) \
include/linux/fwnode.h \
include/linux/vmalloc.h \
/home/pi/Desktop/project/hum/hum_dev.o: $(deps_/home/pi/Desktop/project/hum/hum_dev.o)
$(deps_/home/pi/Desktop/project/hum/hum_dev.o):
/home/pi/Desktop/project/hum/hum_dev.ko
/home/pi/Desktop/project/hum/hum_dev.o
KERNEL_VER := $(shell uname -r)
KERNEL_DIR = '/lib/modules/$(KERNEL_VER)/build'
obj-m := hum_dev.o
PWD := $(shell pwd)
all :
make -C $(KERNEL_DIR) M=$(PWD) modules
clean :
make -C $(KERNEL_DIR) M=$(PWD) clean
in :
sudo insmod hydro_dev.ko
sudo mknod -m 666 /dev/hydro c 505 0
out :
sudo rmmod hydro_dev
in2 :
sudo insmod hydro_dev.ko
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/uaccess.h>
#include <linux/slab.h>
#include <linux/delay.h>
#include <asm/mach/map.h>
#include <asm/uaccess.h>
typedef struct{
unsigned int hydro_integer;
unsigned int hydro_float;
unsigned int temp_integer;
unsigned int temp_float;
}Data;
#define HIGH 1
#define LOW 0
#define HYDRO_MAJOR_NUMBER 505
#define HYDRO_DEV_NAME "hydro_dev"
#define IOCTL_HYDRO_MAGIC_NUMBER 'h'
#define IOCTL_CMD_HYDRO _IOR(IOCTL_HYDRO_MAGIC_NUMBER, 0, Data)
#define GPIO_BASE_ADDRESS 0x3F200000
#define GPFSEL0 0x00
#define GPFSEL1 0x04
#define GPSET1 0x1C
#define GPCLR1 0x28
#define GPLEV1 0x34
static void __iomem* gpio_base;
volatile unsigned int* gpsel0;
volatile unsigned int* gpsel1;
volatile unsigned int* gpset1;
volatile unsigned int* gpclr1;
volatile unsigned int* gplev1;
int hydro_open(struct inode * inode, struct file * filp){
printk(KERN_ALERT "\nhumidity driver open\n");
gpio_base = ioremap(GPIO_BASE_ADDRESS, 0xFF);
gpsel0 = (volatile unsigned int*)(gpio_base + GPFSEL0);
gpsel1 = (volatile unsigned int*)(gpio_base + GPFSEL1);
gpset1 = (volatile unsigned int*)(gpio_base + GPSET1);
gpclr1 = (volatile unsigned int*)(gpio_base + GPCLR1);
gplev1 = (volatile unsigned int*)(gpio_base + GPLEV1);
/*
*gpsel0 |= (1<<26);
*gpsel0 |= (1<<29);
*gpsel1 |= (1<<2);
*gpsel1 |= (1<<5);*/
return 0;
}
int hydro_release(struct inode * inode, struct file * filp) {
printk(KERN_ALERT "humidity driver closed\n\n");
iounmap((void *)gpio_base);
return 0;
}
long hydro_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
{
Data data;
int result[5] = {0};
int index = 0;
int pre_data = HIGH;
int counter = 0;
int i = 0;
switch (cmd){
case IOCTL_CMD_HYDRO:
*gpsel0 |= (1 << 12); //GPIO 4 SET OUTPUT MODE
*gpset1 |= (1 << 4); //GPIO 4 SET HIGH
mdelay(800); //SLEEP FOR 800 miliseconds to synchronize bits from loop
*gpclr1 |= (1 << 4); //GPIO 4 SET LOW
mdelay(18); //SLEEP FOR 18 miliseconds
*gpset1 |= (1 << 4); //GPIO 4 SET HIGH
udelay(30); //SLEEP FOR 30 microseconds
*gpsel0 &= ~(1 << 12); //GPIO 4 SET INPUT MODE
//except first 3(wait, response, ready) signals
for(i = 0; i < 3; i++){
if(((*gplev1 >> 4) & 0x01) == LOW){
while(((*gplev1 >> 4) & 0x01) == LOW){} continue;
}
if(((*gplev1 >> 4) & 0x01) == HIGH){
while(((*gplev1 >> 4) & 0x01) == HIGH){} continue;
}
}
//interpret '0' and '1' bits
while(index < 40){
if(((*gplev1 >> 4) & 0x01) == LOW) continue;
counter = 0;
while(((*gplev1 >> 4) & 0x01) == HIGH){
counter++;
udelay(1);
}
if(counter > 80) break;
result[index / 8] <<= 1;
if(counter > 28) result[index / 8] |= 1;
index++;
}
//printk(KERN_INFO "data[0]: %x data[1]: %x data[2]: %x data[3]: %x data[4]: %x\n", data[0], data[1], data[2], data[3], data[4]);
if(result[4] != ((result[0] + result[1] + result[2] + result[3]) & 0xFF))
break;
data.hydro_integer = result[0];
data.hydro_float = result[1];
data.temp_integer = result[2];
data.temp_float = result[3];
//printk(KERN_INFO "humidity: %d.%d%% temperature: %d.%d%%\n", info.humidity_integer, info.humidity_float, info.temperature_integer, info.temperature_float);
copy_to_user((void*)arg, (void*)&data, sizeof(data));
printk(KERN_ALERT "hydro done\n");
break;
default :
printk(KERN_ALERT "ioctl : command error\n");
}
return 0;
}
static struct file_operations hydro_fops = {
.owner = THIS_MODULE,
.open = hydro_open,
.release = hydro_release,
.unlocked_ioctl = hydro_ioctl
};
int __init hydro_init (void) {
if(register_chrdev(HYDRO_MAJOR_NUMBER, HYDRO_DEV_NAME, &hydro_fops) < 0)
printk(KERN_ALERT "hydro driver initalization failed\n");
else
printk(KERN_ALERT "hydro driver initalization succeed\n");
return 0;
}
void __exit hydro_exit(void){
unregister_chrdev(HYDRO_MAJOR_NUMBER, HYDRO_DEV_NAME);
printk(KERN_ALERT "hydro driver exit");
}
module_init(hydro_init);
module_exit(hydro_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("joreka");
MODULE_DESCRIPTION("hydro_dev");
File deleted
#include <linux/build-salt.h>
#include <linux/module.h>
#include <linux/vermagic.h>
#include <linux/compiler.h>
BUILD_SALT;
MODULE_INFO(vermagic, VERMAGIC_STRING);
MODULE_INFO(name, KBUILD_MODNAME);
__visible struct module __this_module
__attribute__((section(".gnu.linkonce.this_module"))) = {
.name = KBUILD_MODNAME,
.init = init_module,
#ifdef CONFIG_MODULE_UNLOAD
.exit = cleanup_module,
#endif
.arch = MODULE_ARCH_INIT,
};
#ifdef CONFIG_RETPOLINE
MODULE_INFO(retpoline, "Y");
#endif
static const struct modversion_info ____versions[]
__used
__attribute__((section("__versions"))) = {
{ 0xad1a7def, "module_layout" },
{ 0x6bc3fbc0, "__unregister_chrdev" },
{ 0xcfc78319, "__register_chrdev" },
{ 0xdb7305a1, "__stack_chk_fail" },
{ 0xf4fa543b, "arm_copy_to_user" },
{ 0x8e865d3c, "arm_delay_ops" },
{ 0x8f678b07, "__stack_chk_guard" },
{ 0xedc03953, "iounmap" },
{ 0x2e5810c6, "__aeabi_unwind_cpp_pr1" },
{ 0xe97c4103, "ioremap" },
{ 0x7c32d0f0, "printk" },
{ 0xb1ad28e0, "__gnu_mcount_nc" },
};
static const char __module_depends[]
__used
__attribute__((section(".modinfo"))) =
"depends=";
MODULE_INFO(srcversion, "848B380E4218A5ABA3C9C06");
File deleted
File deleted
kernel//home/pi/Desktop/project/hum/hum_dev.ko
......@@ -7,143 +7,141 @@
#include <linux/delay.h>
#include <asm/mach/map.h>
#include <asm/io.h>
#include <asm/uaccess.h>
typedef struct{
unsigned int tempi;
unsigned int tempf;
unsigned int hydroi;
unsigned int hydrof;
unsigned int hydro_integer;
unsigned int hydro_float;
unsigned int temp_integer;
unsigned int temp_float;
}Data;
#define HIGH 1
#define LOW 0
#define HYDRO_MAJOR_NUMBER 505
#define HYDRO_DEV_NAME "hydro_dev"
#define GPIO_BASE_ADDR 0x3F200000
#define IOCTL_HYDRO_MAGIC_NUMBER 'h'
#define IOCTL_CMD_HYDRO _IOR(IOCTL_HYDRO_MAGIC_NUMBER, 0, Data)
#define GPIO_BASE_ADDRESS 0x3F200000
#define GPFSEL0 0x00
#define GPFSEL1 0x04
#define GPSET0 0x1C
#define GPCLR0 0x28
#define GPLEV0 0x34
#define HIGH 1
#define LOW 0
#define GPSET1 0x1C
#define GPCLR1 0x28
#define GPLEV1 0x34
static void __iomem* gpio_base;
volatile unsigned int* gpsel0;
volatile unsigned int* gpsel1;
volatile unsigned int* gpset1;
volatile unsigned int* gpclr1;
volatile unsigned int* gplev1;
int hydro_open(struct inode *inode,struct file *flip){
printk(KERN_ALERT "HYDRO driver open!!\n");
int hydro_open(struct inode * inode, struct file * filp){
printk(KERN_ALERT "humidity driver open\n");
gpio_base = ioremap(GPIO_BASE_ADDRESS, 0xFF);
gpio_base = ioremap(GPIO_BASE_ADDR, 0x60);
gpsel0 = (volatile unsigned int*)(gpio_base + GPFSEL0);
gpsel1 = (volatile unsigned int*)(gpio_base + GPFSEL1);
gpset1 = (volatile unsigned int *)(gpio_base + GPSET0);
gpclr1 = (volatile unsigned int *)(gpio_base + GPCLR0);
gplev1 = (volatile unsigned int *)(gpio_base + GPLEV0);
*gpsel0 |= (1<<26);
*gpsel0 |= (1<<29);
*gpsel1 |= (1<<2);
*gpsel1 |= (1<<5);
gpset1 = (volatile unsigned int*)(gpio_base + GPSET1);
gpclr1 = (volatile unsigned int*)(gpio_base + GPCLR1);
gplev1 = (volatile unsigned int*)(gpio_base + GPLEV1);
return 0;
}
int hydro_release(struct inode *inode,struct file *flip){
printk(KERN_ALERT "HYDRO driver closed!!\n");
int hydro_release(struct inode * inode, struct file * filp) {
printk(KERN_ALERT "humidity driver closed\n\n");
iounmap((void *)gpio_base);
return 0;
}
ssize_t hydro_read(struct file *filp, char* buf, size_t counts, loff_t *f_pos) {
printk(KERN_ALERT "read function called!!\n");
long hydro_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
{
Data data;
int result[5] = {0, };
int time = 0;
int prev = HIGH;
int result[5] = {0};
int index = 0;
int counter = 0;
int i = 0;
switch (cmd){
case IOCTL_CMD_HYDRO:
*gpsel0 |= (1 << 12);
*gpset1 |= (1 << 4);
mdelay(800);
*gpclr1 |= (1 << 4);
mdelay(18);
*gpset1 |= (1 << 4);
udelay(30);
*gpsel0 = (0<<24);
*gpsel0 &= ~(1 << 12);
for(i = 0; i < 3; i++){
if(((*gplev1 >> 4) & HIGH) == LOW) {
while(((*gplev1 >> 4) & HIGH) == LOW){}
continue;
if(((*gplev1 >> 4) & 0x01) == LOW){
while(((*gplev1 >> 4) & 0x01) == LOW){} continue;
}
if(((*gplev1 >> 4) & HIGH) == HIGH) {
while(((*gplev1 >> 4) & HIGH) ==HIGH){}
continue;
if(((*gplev1 >> 4) & 0x01) == HIGH){
while(((*gplev1 >> 4) & 0x01) == HIGH){} continue;
}
}
//int status = LOW;
while(index < 40){
if(((*gplev1 >> 4) & 0x01) == LOW)
continue;
time = 0;
counter = 0;
while(((*gplev1 >> 4) & 0x01) == HIGH){
time++;
counter++;
udelay(1);
}
if(time > 70)
if(counter > 80)
break;
result[index / 8] <<= 1;
if(time > 28)
result[index/8] |= 1;
time++;
if(counter > 28) result[index / 8] |= 1;
index++;
}
int wrong = -1;
printk(KERN_ALERT "%d %d %d %d\n", result[0], result[1], result[2], result[3]);
if((result[4] == (result[0] + result[1] + result[2] + result[3])& 0xFF) && result[0] != 0) {
data.hydroi = result[0];
data.hydrof = result[1];
data.tempi = result[2];
data.tempf = result[3];
copy_to_user(buf, (const void*)&data, sizeof(data));
if(result[4] != ((result[0] + result[1] + result[2] + result[3]) & 0xFF))
break;
data.hydro_integer = result[0]; data.hydro_float = result[1];
data.temp_integer = result[2]; data.temp_float = result[3];
copy_to_user((void*)arg, (void*)&data, sizeof(data));
printk(KERN_ALERT "hydro done\n");
break;
default :
printk(KERN_ALERT "cannot hydro device driver\n");
}
else
copy_to_user(buf, &wrong, sizeof(int));
return counts;
return 0;
}
static struct file_operations hydro_fops = {
.owner = THIS_MODULE,
.open = hydro_open,
.release = hydro_release,
.read = hydro_read
.unlocked_ioctl = hydro_ioctl
};
int __init hydro_init (void) {
if(register_chrdev(HYDRO_MAJOR_NUMBER, HYDRO_DEV_NAME, &hydro_fops) < 0)
printk(KERN_ALERT "HYDRO driver initialization fail\n");
printk(KERN_ALERT "hydro driver initalization failed\n");
else
printk(KERN_ALERT "HYDRO driver intialization success\n");
printk(KERN_ALERT "hydro driver initalization succeed\n");
return 0;
}
void __exit hydro_exit(void){
unregister_chrdev(HYDRO_MAJOR_NUMBER, HYDRO_DEV_NAME);
printk(KERN_ALERT "HYDRO driver exit doen\n");
printk(KERN_ALERT "hydro driver exit");
}
module_init(hydro_init);
......@@ -151,7 +149,5 @@ module_exit(hydro_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("joreka");
MODULE_DESCRIPTION("HYDRO_DEV");
MODULE_DESCRIPTION("hydro_dev");
No preview for this file type
......@@ -45,4 +45,4 @@ __attribute__((section(".modinfo"))) =
"depends=";
MODULE_INFO(srcversion, "CBED33CF7ABA6C5B93EA66B");
MODULE_INFO(srcversion, "5D363F4F7E70F2B2C459F60");
No preview for this file type
No preview for this file type
......@@ -689,6 +689,8 @@ deps_/home/pi/Desktop/project/smoke/smoke_dev.o := \
$(wildcard include/config/slob.h) \
include/linux/overflow.h \
include/linux/kasan.h \
include/linux/delay.h \
arch/arm/include/asm/delay.h \
arch/arm/include/asm/mach/map.h \
$(wildcard include/config/debug/ll.h) \
arch/arm/include/asm/io.h \
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment