/ linux / krzk-request-pull.sh
krzk-request-pull.sh
  1  #!/bin/bash
  2  #
  3  # Copyright (c) 2016-2023 Krzysztof Kozlowski
  4  # Author: Krzysztof Kozlowski <k.kozlowski.k@gmail.com>
  5  #                             <krzk@kernel.org>
  6  #
  7  # SPDX-License-Identifier: GPL-2.0
  8  #
  9  
 10  die() {
 11  	echo "Fail: $1"
 12  	exit 1
 13  }
 14  
 15  usage() {
 16  	echo "$(basename $0) <tag> [start]"
 17  	exit 1
 18  }
 19  
 20  # One or more args needed
 21  test $# -ge 1 || usage
 22  TAG="$1"
 23  START="$2"
 24  START="${START:=master}"
 25  OUT="pull-$(date +%Y.%m.%d)-${TAG}.txt"
 26  
 27  REMOTE="$(git rev-parse --abbrev-ref --symbolic-full-name master@{upstream})"
 28  REMOTE="${REMOTE%%/*}"
 29  REMOTE_URL="$(git remote get-url ${REMOTE})"
 30  
 31  CC_KRZK="Krzysztof Kozlowski <krzk@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>"
 32  
 33  if [[ $REMOTE_URL == *"/krzk/linux.git"* ]]; then
 34  	TO="Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, arm@kernel.org, soc@kernel.org"
 35  	CC="linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org"
 36  	CC="Alim Akhtar <alim.akhtar@samsung.com>, Peter Griffin <peter.griffin@linaro.org>, $CC, $CC_KRZK"
 37  	if [[ $TAG == *"-clk-"* ]]; then
 38  		SUBJECT="clk: samsung:"
 39  		TO="Michael Turquette <mturquette@baylibre.com>, Stephen Boyd <sboyd@kernel.org>"
 40  		CC="Sylwester Nawrocki <snawrocki@kernel.org>, $CC"
 41  		CC="Chanwoo Choi <cw00.choi@samsung.com>, linux-clk@vger.kernel.org, $CC"
 42  	elif [[ $TAG == *"-drivers-"* ]]; then
 43  		SUBJECT="samsung: drivers"
 44  	elif [[ $TAG == *"-dt-"* ]]; then
 45  		SUBJECT="ARM: dts: samsung:"
 46  	elif [[ $TAG == *"-dt64-"* ]]; then
 47  		SUBJECT="arm64: dts: samsung:"
 48  	elif [[ $TAG == *"-fixes-"* ]]; then
 49  		SUBJECT="ARM: samsung:"
 50  	elif [[ $TAG == *"-soc-"* ]]; then
 51  		SUBJECT="ARM: samsung:"
 52  	fi
 53  elif [[ $REMOTE_URL == *"/krzk/linux-dt.git"* ]]; then
 54  	if [[ $TAG == *"qcom-pinctrl"* ]]; then
 55  		TO="Linus Walleij <linus.walleij@linaro.org>"
 56  		CC="Andy Gross <agross@kernel.org>, Bjorn Andersson <andersson@kernel.org>, Konrad Dybcio <konrad.dybcio@somainline.org>, linux-arm-msm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, $CC_KRZK"
 57  		SUBJECT="pinctrl: dt-bindings: qcom:"
 58  	elif [[ $TAG == *"dt-bindings-"* ]]; then
 59  		TO="Rob Herring <robh@kernel.org>"
 60  		CC="devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, $CC_KRZK"
 61  		SUBJECT="dt-bindings:"
 62  	elif [[ $TAG == *"dt-"* ]]; then
 63  		TO="Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, arm@kernel.org, soc@kernel.org"
 64  		CC="linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, $CC_KRZK"
 65  		SUBJECT="ARM: dts: "
 66  	elif [[ $TAG == *"dt64-"* ]]; then
 67  		TO="Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, arm@kernel.org, soc@kernel.org"
 68  		CC="linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, $CC_KRZK"
 69  		SUBJECT="arm64: dts: "
 70  	else
 71  		TO="Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, arm@kernel.org, soc@kernel.org"
 72  		CC="linux-kernel@vger.kernel.org, $CC_KRZK"
 73  		SUBJECT="drivers:"
 74  	fi
 75  elif [[ $REMOTE_URL == *"/krzk/linux-mem-ctrl.git"* ]]; then
 76  	TO="Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, arm@kernel.org, soc@kernel.org"
 77  	CC="linux-kernel@vger.kernel.org, $CC_KRZK"
 78  	if [[ $TAG == *"-fixes-"* ]]; then
 79  		SUBJECT="memory: fixes:"
 80  	else
 81  		SUBJECT="memory:"
 82  	fi
 83  elif [[ $REMOTE_URL == *"/krzk/linux-w1.git"* ]]; then
 84  	TO="Greg Kroah-Hartman <gregkh@linuxfoundation.org>"
 85  	CC="linux-kernel@vger.kernel.org, $CC_KRZK"
 86  	if [[ $TAG == *"-fixes-"* ]]; then
 87  		SUBJECT="w1: fixes:"
 88  	else
 89  		SUBJECT="w1:"
 90  	fi
 91  elif [[ $REMOTE_URL == *"/pinctrl/samsung.git"* ]]; then
 92  	TO="Linus Walleij <linus.walleij@linaro.org>"
 93  	CC="linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org"
 94  	CC="Sylwester Nawrocki <snawrocki@kernel.org>, Alim Akhtar <alim.akhtar@samsung.com>, Peter Griffin <peter.griffin@linaro.org>, $CC, $CC_KRZK"
 95  	SUBJECT="pinctrl: samsung:"
 96  else
 97  	usage
 98  fi
 99  
100  git tag -v $TAG &> /dev/null || die "Wrong tag or signature"
101  
102  echo "Output to: $OUT"
103  echo "Subject: [GIT PULL] $SUBJECT xxx for v6.x
104  From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
105  To: $TO
106  Cc: $CC
107  
108  Hi,
109  
110  
111  
112  Best regards,
113  Krzysztof
114  
115  " > $OUT
116  git request-pull $START $REMOTE $TAG >> $OUT