From 40a7832f44ebc672db7ff1c477fd011b7f29aad4 Mon Sep 17 00:00:00 2001 From: Miroslav Ondra Date: Wed, 31 Jul 2019 15:28:30 +0200 Subject: [PATCH] fix Makefiles and debian/rules to be conformed with ci/cd --- .gitignore | 1 + ...nel.changelog => .neuron-kernel.changelog} | 0 debian/rules | 42 +++++----- device_tree/Makefile | 38 +++++++-- ...spi-new.dts => neuron-spi-new-overlay.dts} | 0 device_tree/neuron-spi-new.dtbo | Bin 3928 -> 0 bytes device_tree/neuron-spi-new.dts.bck | 77 ------------------ modules/unipi/Makefile | 14 +++- 8 files changed, 63 insertions(+), 109 deletions(-) rename debian/{neuron-kernel.changelog => .neuron-kernel.changelog} (100%) rename device_tree/{neuron-spi-new.dts => neuron-spi-new-overlay.dts} (100%) delete mode 100644 device_tree/neuron-spi-new.dtbo delete mode 100644 device_tree/neuron-spi-new.dts.bck diff --git a/.gitignore b/.gitignore index 91a6deb..91818a1 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ modules/unipi/tmp* modules/unipi/.tmp_versions modules/unipi/unipi.mod.c modules/unipi/modules.order +debian/neuron-kernel.changelog \ No newline at end of file diff --git a/debian/neuron-kernel.changelog b/debian/.neuron-kernel.changelog similarity index 100% rename from debian/neuron-kernel.changelog rename to debian/.neuron-kernel.changelog diff --git a/debian/rules b/debian/rules index 56a541c..0988d56 100755 --- a/debian/rules +++ b/debian/rules @@ -15,56 +15,58 @@ MOD_VERSION=$(shell dpkg-parsechangelog |grep ^Version:|cut -d ' ' -f 2) +ifeq ($(shell dpkg-architecture -q DEB_BUILD_ARCH),armhf) + +RPI_FIRMWARE_VER = $(shell dpkg-query -f='$${Version}' -W raspberrypi-kernel-headers) +LINUX_DIR_PATH = $(shell dpkg -L raspberrypi-kernel-headers | sed -n '/^\/lib\/modules\/.*-v7.*\/build$$/p') +KERNEL_VERSION = $(subst /lib/modules/,,$(subst /build,,$(LINUX_DIR_PATH))) + +else + .raspbian-versions: misc/check-raspbian include ./.raspbian-versions +LINUX_DIR_PATH = ${PWD}/tmp/linux-raspberrypi-kernel_${RPI_FIRMWARE_VER} -DISTRIB=$(shell dpkg-parsechangelog -l debian/neuron-kernel.changelog -S Distribution) -NEURON_KERNEL_VERSION=$(shell dpkg-parsechangelog -l debian/neuron-kernel.changelog -S Version) +endif %: dh $@ --with dkms -# dh_make generated override targets -# This is example for Cmake (See https://bugs.debian.org/641051 ) -#override_dh_auto_configure: -# dh_auto_configure -- # -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH) override_dh_installmodules: DH_AUTOSCRIPTDIR=debian/autoscripts dh_installmodules override_dh_prep: - dh_prep --exclude=neuron-kernel.substvars - echo RPI-FIRMWARE-VER=${RPI_FIRMWARE_VER} >> debian/neuron-kernel.substvars - sed "s/#MOD_VERSION#/$(MOD_VERSION)/g" debian/unipi-kernel-modules-dkms.install.in > debian/unipi-kernel-modules-dkms.install - @if echo ${NEURON_KERNEL_VERSION} | grep -qve "^$(MOD_VERSION)"; then\ - ( sed '/^ -- /q;' debian/changelog; echo ""; cat debian/neuron-kernel.changelog )>debian/_cl;\ - mv debian/_cl debian/neuron-kernel.changelog;\ - fi - @if [ ${NEURON_KERNEL_VERSION} != $(MOD_VERSION).$(RPI_FIRMWARE_VER) ]; then\ - dch -mv $(MOD_VERSION).$(RPI_FIRMWARE_VER) --release-heuristic=log \ - -c debian/neuron-kernel.changelog "Compiled for raspberrypi-kernel ${RPI_FIRMWARE_VER}"; \ - fi; - @if [ ${DISTRIB} != "UNRELEASED" ]; then dch -rm -c debian/neuron-kernel.changelog ""; fi + @dh_prep --exclude=neuron-kernel.substvars + @echo RPI-FIRMWARE-VER=${RPI_FIRMWARE_VER} >> debian/neuron-kernel.substvars + @sed "s/#MOD_VERSION#/$(MOD_VERSION)/g" debian/unipi-kernel-modules-dkms.install.in > debian/unipi-kernel-modules-dkms.install + ( sed 's/)/-${RPI_FIRMWARE_VER})/;q' debian/changelog; \ + printf "\n * Compiled for raspberrypi-kernel\n";\ + printf "\n -- auto-generator %s\n\n" "`date -R`"; \ + cat debian/changelog;\ + ) >debian/neuron-kernel.changelog override_dh_dkms: dh_dkms -V $(MOD_VERSION) #override_dh_build: +ifneq ($(shell dpkg-architecture -q DEB_BUILD_ARCH),armhf) override_dh_auto_configure: misc/check-raspbian misc/current +endif override_dh_auto_build: dh_auto_build -- CCPREFIX=${DEB_TARGET_GNU_TYPE}- \ - LINUX_DIR_PATH=${PWD}/tmp/linux-raspberrypi-kernel_${RPI_FIRMWARE_VER} ARCH=${DEB_TARGET_ARCH_CPU} + LINUX_DIR_PATH=$(LINUX_DIR_PATH) ARCH=${DEB_TARGET_ARCH_CPU} override_dh_auto_install: dh_auto_install --destdir=debian/neuron-kernel -- CCPREFIX=${DEB_TARGET_GNU_TYPE}- \ - LINUX_DIR_PATH=${PWD}/tmp/linux-raspberrypi-kernel_${RPI_FIRMWARE_VER} ARCH=${DEB_TARGET_ARCH_CPU} + LINUX_DIR_PATH=$(LINUX_DIR_PATH) ARCH=${DEB_TARGET_ARCH_CPU} #override_dh_gencontrol: diff --git a/device_tree/Makefile b/device_tree/Makefile index f33db9e..75d7328 100644 --- a/device_tree/Makefile +++ b/device_tree/Makefile @@ -1,16 +1,36 @@ +### +### devicetree overlay for unipispi board on Raspberry Pi +### -CC = dtc -O dtb -@ +LINUX_DIR_PATH = /lib/modules/$(shell uname -r)/build +ifdef CCPREFIX + CCPAR = CROSS_COMPILE=${CCPREFIX} +endif +ifdef ARCH + CCPAR += ARCH=${ARCH} +endif -.PHONY = clean -.PHONY += all +PWD := $(shell pwd) -%.dtbo: %.dts - $(CC) -o $@ $< +dtbo-y += neuron-spi-new.dtbo -install: clean neuron-spi-new.dtbo - $(shell mount -o remount,rw /boot) \ - $(shell cp neuron-spi-new.dtbo /boot/overlays) +targets += $(dtbo-y) +always := $(dtbo-y) + + +all: + make $(CCPAR) -C $(LINUX_DIR_PATH) M=$(PWD) clean: - $(shell rm -r -f neuron-spi-new.dtbo) + make $(CCPAR) -C $(LINUX_DIR_PATH) M=$(PWD) clean + + +#DTC = dtc -O dtb -@ + +#%.dtbo: %.dts +# $(DTC) -o $@ $< + +#install: clean neuron-spi-new.dtbo +# $(shell mount -o remount,rw /boot) \ +# $(shell cp neuron-spi-new.dtbo /boot/overlays) diff --git a/device_tree/neuron-spi-new.dts b/device_tree/neuron-spi-new-overlay.dts similarity index 100% rename from device_tree/neuron-spi-new.dts rename to device_tree/neuron-spi-new-overlay.dts diff --git a/device_tree/neuron-spi-new.dtbo b/device_tree/neuron-spi-new.dtbo deleted file mode 100644 index 6d5a204204e2bcf415a3b2428ad334eac140e460..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3928 zcmbVPJCEc<5N_X-6I#KYc#42K9RWyd*7nRT%LG7%Kte<(L1cOCp2a$k?Q`3AJ4A#C z5g`$iTtEOB5*ZmW`~gUb5Fr^*Uq9?#k3Al)rCxV+e^p)mO;vU8uLuA9$=FjLF~&|9 zJ9tFjSE*m8{xo%J&JQ%7sqwkLj+QRccaHJ0ir0tBcpaR~?%2X{C%oaE*utAob5>P! zy5@QPjt7y!-X-c!{{H<>f6>xS7%_T7ykW1esiPTR zzg1!@g9qrEb?^ZB0(FZEpG1k-hYRQ$d(&Lp`0z6e4=#-U|KZ|!(%Xj%g8?@~TwJky z0T+;aTm&?=Hy7aHakv;eJNU6}4#mZDgfZvb6&Hr*F)olx#&>W589JtS`7gtx#qP@g zzCYWxB)xmtx<g=ecKU2r=f%BuL zpq3bWztGrl4IY1^js`z;{)AqbR`+38u5`MviyXFX0b*p>vTY+*Z5h7_WP2}v$6m-0 zV;g>>8F^?g*fs0etL0Wz!7$jd7h=%p?z0!L29LckHv7r*sk@{~6E4(kqA)KL?hoph zV&R^aX(1MKhEgf7H2ju}?ryqCINVDe)<5onkzR7|TlD?=9Cq&Yu)c~^g}+JIf6w8A zlOCR~>DIP`Sh}3%HLt3sthJX;-|G(l4B@Zz@fXJN@c(Kbe{mbHxfPrBvdA>E;GW{# zdHtxn;Ex9G@>d8mAHf_A+@rw1J&kYg8sOib#<%tOHNxNR@H5+I?ayE?LT@#pHV;juF|unY{Pl$J=K3dS@*FFYLhQAXz4eTwmaTi9#NM@FfDg|3~Xs% z@rK*VJK&LbXvPoZ7MhWfKWIiqexO07dMa}O@^xztagJusA(qiFXZdxGJ=lDfY%aRr z!&}r*b;@g90o1;Tsn0Ep9U}{>7ja!>uBTLB^Gm{iHI1J$ZAcTfh=qrWzwqyDulQ=^ zczY!nU748`@`?O%-lP7_m|txz^w=bXs@NnZpyLgf0y?KIyE8h@Fvczgi?$@WWmM6> z4#f1dn*Vre!EUwLP<$YU9(5l1W0>zcOwh-e7`+x3>oTfSdY&*9itKijBo!CJjd_*{ zc3Y&May=GxR5yaPF~|(HEKBp|?6CYK$`i6w@l!^R6?Yw-xvPrbZ+ISWTD3e{bHVy7 zcN2oC0^u%;s7l;4PxzUcDyw42-6(q)ZGc2kRq-wNkC`ZyF*Yi!5k)tx! z=_@0fzA}#KE2CDMmyZR{7JOR>7^26l<29yNX=s2n42(|qsM4>Iu0rdHuJpnh@<)KU R?v;o40%j8az|&u!{Rdw07v=x} diff --git a/device_tree/neuron-spi-new.dts.bck b/device_tree/neuron-spi-new.dts.bck deleted file mode 100644 index 73a74a3..0000000 --- a/device_tree/neuron-spi-new.dts.bck +++ /dev/null @@ -1,77 +0,0 @@ -/dts-v1/; -/plugin/; - -/ { - compatible = "brcm,bcm2835", "brcm,bcm2836", "brcm,bcm2708", -"brcm,bcm2709"; - - fragment@0 { - target = <&spi0>; - frag0: __overlay__ { - #address-cells = <1>; - #size-cells = <0>; - status = "okay"; - pinctrl-0 = <&spi0_pins &spi0_cs_pins>; - cs-gpios = <&gpio 8 1>, <&gpio 7 1>, <&gpio 24 1>, <&gpio 25 1>; - neuronspi0: neuronspi@0 { - compatible = "unipi,neuron"; - reg = <1>; - #address-cells = <1>; - #size-cells = <0>; - spi-max-frequency = <12000000>; - status = "okay"; - }; - neuronspi1: neuronspi@1 { - compatible = "unipi,neuron"; - reg = <2>; - #address-cells = <1>; - #size-cells = <0>; - spi-max-frequency = <1200000>; - status = "okay"; - }; - neuronspi2: neuronspi@2 { - compatible = "unipi,neuron"; - reg = <3>; - #address-cells = <1>; - #size-cells = <0>; - spi-max-frequency = <1200000>; - status = "okay"; - }; - }; - }; - - fragment@1 { - target = <&spidev0>; - __overlay__ { - status = "disabled"; - }; - }; - - fragment@2 { - target = <&spidev1>; - __overlay__ { - status = "disabled"; - }; - }; - - fragment@3 { - target = <&gpio>; - __overlay__ { - spi0_cs_pins { - brcm,pins = <8 7 24 25>; - brcm,function = <1>; - }; - }; - - }; - - __overrides__ { - cs0_pin = <&frag0>,"cs-gpios:4", <&spi0_cs_pins>, "brcm,pins:0"; - cs1_pin = <&frag0>,"cs-gpios:16", <&spi0_cs_pins>,"brcm,pins:4"; - cs2_pin = <&frag0>,"cs-gpios:40", <&spi0_cs_pins>,"brcm,pins:12"; - cs3_pin = <&frag0>,"cs-gpios:28", <&spi0_cs_pins>,"brcm,pins:8"; - }; - - -}; - diff --git a/modules/unipi/Makefile b/modules/unipi/Makefile index eb0e349..5c3ffd3 100644 --- a/modules/unipi/Makefile +++ b/modules/unipi/Makefile @@ -2,8 +2,16 @@ # filesystems (notably VirtualBox vmfs); therefore we allow using /run/ through the 'symlink' target, # if necessary. +LINUX_DIR_PATH = /lib/modules/$(shell uname -r)/build +ifdef CCPREFIX + CCPAR = CROSS_COMPILE=${CCPREFIX} +endif +ifdef ARCH + CCPAR += ARCH=${ARCH} +endif + SYMLINK_DIR_PATH = /run/kernel/unipi_spi -LINUX_DIR_PATH = /root/linux/4_9_14/linux/ + SRC_DIR_PATH = $(PWD)/src BIN_DIR_PATH = $(PWD)/bin @@ -47,10 +55,10 @@ TARGET_PLC_PATH = tomunipi: default: all ; all: - make ARCH=${ARCH} CROSS_COMPILE=${CCPREFIX} -C ${LINUX_DIR_PATH} M=${PWD} modules + make $(CCPAR) -C $(LINUX_DIR_PATH) M=${PWD} modules modules_install: - make ARCH=${ARCH} CROSS_COMPILE=${CCPREFIX} -C ${LINUX_DIR_PATH} M=${PWD} modules_install + make $(CCPAR) -C $(LINUX_DIR_PATH) M=${PWD} modules_install clean: rm -f ${unipi-objs} src/.*.o.cmd -- 2.34.1