Added pinephone patches
This commit is contained in:
		@@ -0,0 +1,50 @@
 | 
				
			|||||||
 | 
					diff --git a/drivers/clk/sunxi-ng/ccu-sun50i-a64.c b/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
 | 
				
			||||||
 | 
					index 149cfde817cb..0399d8714fd0 100644
 | 
				
			||||||
 | 
					--- a/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
 | 
				
			||||||
 | 
					+++ b/drivers/clk/sunxi-ng/ccu-sun50i-a64.c
 | 
				
			||||||
 | 
					@@ -984,6 +984,8 @@ static int sun50i_a64_ccu_probe(struct p
 | 
				
			||||||
 | 
					 	if (IS_ERR(reg))
 | 
				
			||||||
 | 
					 		return PTR_ERR(reg);
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+	platform_set_drvdata(pdev, reg);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 	/* Force the pll-audio variable divider to 3 */
 | 
				
			||||||
 | 
					 	val = readl(reg + SUN50I_A64_PLL_AUDIO_REG);
 | 
				
			||||||
 | 
					 	val &= ~GENMASK(19, 16);
 | 
				
			||||||
 | 
					@@ -1031,12 +1031,36 @@ static const struct of_device_id sun50i_
 | 
				
			||||||
 | 
					 	{ }
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+#define USBPHY_CFG_REG 0x0cc
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+static int sun50i_a64_ccu_suspend(struct device *dev)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+	void __iomem *reg = dev_get_drvdata(dev);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	writel(readl(reg + USBPHY_CFG_REG) | 0xa00000, reg + USBPHY_CFG_REG);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	return 0;
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+static int sun50i_a64_ccu_resume(struct device *dev)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+	void __iomem *reg = dev_get_drvdata(dev);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	writel(readl(reg + USBPHY_CFG_REG) & ~0xa00000, reg + USBPHY_CFG_REG);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	return 0;
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+static SIMPLE_DEV_PM_OPS(sun50i_a64_ccu_pm_ops,
 | 
				
			||||||
 | 
					+			 sun50i_a64_ccu_suspend, sun50i_a64_ccu_resume);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 static struct platform_driver sun50i_a64_ccu_driver = {
 | 
				
			||||||
 | 
					 	.probe	= sun50i_a64_ccu_probe,
 | 
				
			||||||
 | 
					 	.driver	= {
 | 
				
			||||||
 | 
					 		.name	= "sun50i-a64-ccu",
 | 
				
			||||||
 | 
					 		.suppress_bind_attrs = true,
 | 
				
			||||||
 | 
					 		.of_match_table	= sun50i_a64_ccu_ids,
 | 
				
			||||||
 | 
					+		.pm	= &sun50i_a64_ccu_pm_ops,
 | 
				
			||||||
 | 
					 	},
 | 
				
			||||||
 | 
					 };
 | 
				
			||||||
 | 
					 builtin_platform_driver(sun50i_a64_ccu_driver);
 | 
				
			||||||
@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
 | 
				
			||||||
 | 
					index 03b83aa91277..dfc6c7d1b0e7 100644
 | 
				
			||||||
 | 
					--- a/drivers/bluetooth/btusb.c
 | 
				
			||||||
 | 
					+++ b/drivers/bluetooth/btusb.c
 | 
				
			||||||
 | 
					@@ -4070,6 +4070,7 @@ static int btusb_setup_qca(struct hci_dev *hdev)
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 	if (!info) {
 | 
				
			||||||
 | 
					 		bt_dev_err(hdev, "don't support firmware rome 0x%x", ver_rom);
 | 
				
			||||||
 | 
					+		if (ver_rom & ~0xffffU) return 0;
 | 
				
			||||||
 | 
					 		return -ENODEV;
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
@@ -0,0 +1,49 @@
 | 
				
			|||||||
 | 
					From cb408fb65a08bd45543724c1e9b8f38ae1bebc4a Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Arnaud Ferraris <arnaud.ferraris@gmail.com>
 | 
				
			||||||
 | 
					Date: Tue, 4 Aug 2020 15:12:59 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH 177/183] leds-gpio: make max_brightness configurable
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 drivers/leds/leds-gpio.c | 4 ++++
 | 
				
			||||||
 | 
					 include/linux/leds.h     | 3 ++-
 | 
				
			||||||
 | 
					 2 files changed, 6 insertions(+), 1 deletion(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c
 | 
				
			||||||
 | 
					index 93f5b1b60fde..f8483fab1164 100644
 | 
				
			||||||
 | 
					--- a/drivers/leds/leds-gpio.c
 | 
				
			||||||
 | 
					+++ b/drivers/leds/leds-gpio.c
 | 
				
			||||||
 | 
					@@ -108,6 +108,8 @@ static int create_gpio_led(const struct gpio_led *template,
 | 
				
			||||||
 | 
					 	if (ret < 0)
 | 
				
			||||||
 | 
					 		return ret;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+	led_dat->cdev.max_brightness = template->max_brightness;
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 	if (template->name) {
 | 
				
			||||||
 | 
					 		led_dat->cdev.name = template->name;
 | 
				
			||||||
 | 
					 		ret = devm_led_classdev_register(parent, &led_dat->cdev);
 | 
				
			||||||
 | 
					@@ -177,6 +179,8 @@ static struct gpio_leds_priv *gpio_leds_create(struct platform_device *pdev)
 | 
				
			||||||
 | 
					 		if (fwnode_property_present(child, "panic-indicator"))
 | 
				
			||||||
 | 
					 			led.panic_indicator = 1;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+		fwnode_property_read_u32(child, "max-brightness", &led.max_brightness);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 		ret = create_gpio_led(&led, led_dat, dev, child, NULL);
 | 
				
			||||||
 | 
					 		if (ret < 0) {
 | 
				
			||||||
 | 
					 			fwnode_handle_put(child);
 | 
				
			||||||
 | 
					diff --git a/include/linux/leds.h b/include/linux/leds.h
 | 
				
			||||||
 | 
					index 6a8d6409c993..99a80092114d 100644
 | 
				
			||||||
 | 
					--- a/include/linux/leds.h
 | 
				
			||||||
 | 
					+++ b/include/linux/leds.h
 | 
				
			||||||
 | 
					@@ -513,7 +513,8 @@ typedef int (*gpio_blink_set_t)(struct gpio_desc *desc, int state,
 | 
				
			||||||
 | 
					 struct gpio_led {
 | 
				
			||||||
 | 
					 	const char *name;
 | 
				
			||||||
 | 
					 	const char *default_trigger;
 | 
				
			||||||
 | 
					-	unsigned 	gpio;
 | 
				
			||||||
 | 
					+	unsigned	gpio;
 | 
				
			||||||
 | 
					+	unsigned	max_brightness;
 | 
				
			||||||
 | 
					 	unsigned	active_low : 1;
 | 
				
			||||||
 | 
					 	unsigned	retain_state_suspended : 1;
 | 
				
			||||||
 | 
					 	unsigned	panic_indicator : 1;
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.30.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								sys-kernel/pinephone-sources/files/0106-panic-led.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								sys-kernel/pinephone-sources/files/0106-panic-led.patch
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
 | 
				
			||||||
 | 
					index 1c555456b..05fab5d79 100644
 | 
				
			||||||
 | 
					--- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
 | 
				
			||||||
 | 
					+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pinephone.dtsi
 | 
				
			||||||
 | 
					@@ -78,6 +78,7 @@ green {
 | 
				
			||||||
 | 
					 		};
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 		led-2 {
 | 
				
			||||||
 | 
					+			linux,default-trigger = "panic";
 | 
				
			||||||
 | 
					 			function = LED_FUNCTION_INDICATOR;
 | 
				
			||||||
 | 
					 			color = <LED_COLOR_ID_RED>;
 | 
				
			||||||
 | 
					 			gpios = <&pio 3 19 GPIO_ACTIVE_HIGH>; /* PD19 */
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -44,6 +44,13 @@ PATCHES=(
 | 
				
			|||||||
       	# PinePhonePro
 | 
					       	# PinePhonePro
 | 
				
			||||||
        ${FILESDIR}/0103-arm64-dts-rk3399-pinephone-pro-add-modem-RI-pin.patch
 | 
					        ${FILESDIR}/0103-arm64-dts-rk3399-pinephone-pro-add-modem-RI-pin.patch
 | 
				
			||||||
        
 | 
					        
 | 
				
			||||||
 | 
					        # Reparent clocks to lower speed-occillator
 | 
				
			||||||
 | 
					        ${FILESDIR}/0103-ccu-sun50i-a64-reparent-clocks-to-lower-speed-oscillator.patch
 | 
				
			||||||
 | 
					        # Quirk for Kernel-Bug 210681
 | 
				
			||||||
 | 
					        ${FILESDIR}/0104-quirk-kernel-org-bug-210681-firmware_rome_error.patch
 | 
				
			||||||
 | 
					        # LED patches
 | 
				
			||||||
 | 
					        ${FILESDIR}/0105-leds-gpio-make-max_brightness-configurable.patch
 | 
				
			||||||
 | 
					        ${FILESDIR}/0106-panic-led.patch
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
S="${WORKDIR}/linux-${MEGI_TAG}"
 | 
					S="${WORKDIR}/linux-${MEGI_TAG}"
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user