diff options
| author | Mark Brown <broonie@kernel.org> | 2026-07-01 13:44:25 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-07-01 13:44:25 +0100 |
| commit | a09a089a6a79935e8caa01f501de2ddda8fe4af4 (patch) | |
| tree | 3b0b96827963915753edf66a24e6c4207ef0a39a | |
| parent | e01881f64d755778c5eecd008b5bee417bc9097a (diff) | |
| parent | 5346a27fed4d8f0d781b0035ab066f6684cc641e (diff) | |
| download | linux-next-a09a089a6a79935e8caa01f501de2ddda8fe4af4.tar.gz linux-next-a09a089a6a79935e8caa01f501de2ddda8fe4af4.zip | |
Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git
| -rw-r--r-- | Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml | 1 | ||||
| -rw-r--r-- | arch/arm/boot/dts/samsung/exynos5250-manta.dts | 41 | ||||
| -rw-r--r-- | arch/arm/mach-s3c/map-base.h | 2 | ||||
| -rw-r--r-- | arch/arm64/boot/dts/exynos/exynosautov920.dtsi | 6 | ||||
| -rw-r--r-- | drivers/soc/samsung/exynos-pmu.c | 4 | ||||
| -rw-r--r-- | include/linux/serial_s3c.h | 4 |
6 files changed, 52 insertions, 6 deletions
diff --git a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml index 9c63dbcd4d77..fcdb9ffd2644 100644 --- a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml +++ b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml @@ -37,6 +37,7 @@ properties: - samsung,exynos8895-peric1-sysreg - samsung,exynos990-peric0-sysreg - samsung,exynos990-peric1-sysreg + - samsung,exynosautov920-hsi0-sysreg - samsung,exynosautov920-hsi2-sysreg - samsung,exynosautov920-peric0-sysreg - samsung,exynosautov920-peric1-sysreg diff --git a/arch/arm/boot/dts/samsung/exynos5250-manta.dts b/arch/arm/boot/dts/samsung/exynos5250-manta.dts index 24a27b342227..76d3657eb22f 100644 --- a/arch/arm/boot/dts/samsung/exynos5250-manta.dts +++ b/arch/arm/boot/dts/samsung/exynos5250-manta.dts @@ -461,6 +461,13 @@ samsung,pin-pud = <EXYNOS_PIN_PULL_UP>; }; + bt_host_wakeup: bt-host-wakeup-pins { + samsung,pins = "gpx2-6"; + samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>; + samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; + samsung,pin-drv = <EXYNOS4_PIN_DRV_LV1>; + }; + max77686_irq: max77686-irq-pins { samsung,pins = "gpx0-2"; samsung,pin-function = <EXYNOS_PIN_FUNC_F>; @@ -488,6 +495,20 @@ samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>; }; + bt_reg_on: bt-reg-on-pins { + samsung,pins = "gph0-0"; + samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; + samsung,pin-con-pdn = <EXYNOS_PIN_PDN_PREV>; + samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; + }; + + bt_wake: bt-wake-pins { + samsung,pins = "gph1-3"; + samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; + samsung,pin-con-pdn = <EXYNOS_PIN_PDN_PREV>; + samsung,pin-pud-pdn = <EXYNOS_PIN_PULL_NONE>; + }; + msense_reset: msense-reset-pins { samsung,pins = "gpg2-0"; samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>; @@ -536,7 +557,25 @@ /* Bluetooth */ &serial_0 { - status = "disabled"; + pinctrl-0 = <&uart0_data &uart0_fctl>; + pinctrl-names = "default"; + + bluetooth { + compatible = "brcm,bcm4330-bt"; + + pinctrl-0 = <&bt_reg_on &bt_wake &bt_host_wakeup>; + pinctrl-names = "default"; + + shutdown-gpios = <&gph0 0 GPIO_ACTIVE_HIGH>; + device-wakeup-gpios = <&gph1 3 GPIO_ACTIVE_HIGH>; + + interrupt-parent = <&gpx2>; + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; + interrupt-names = "host-wakeup"; + + clocks = <&max77686 MAX77686_CLK_PMIC>; + clock-names = "lpo"; + }; }; /* GPS */ diff --git a/arch/arm/mach-s3c/map-base.h b/arch/arm/mach-s3c/map-base.h index 463a995b399b..beb58e6f12e1 100644 --- a/arch/arm/mach-s3c/map-base.h +++ b/arch/arm/mach-s3c/map-base.h @@ -20,7 +20,7 @@ #define S3C_ADDR_BASE 0xF6000000 -#ifndef __ASSEMBLY__ +#ifndef __ASSEMBLER__ #define S3C_ADDR(x) ((void __iomem __force *)S3C_ADDR_BASE + (x)) #else #define S3C_ADDR(x) (S3C_ADDR_BASE + (x)) diff --git a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi index f1f5efcdb91e..e2f962dc1b3d 100644 --- a/arch/arm64/boot/dts/exynos/exynosautov920.dtsi +++ b/arch/arm64/boot/dts/exynos/exynosautov920.dtsi @@ -1382,6 +1382,12 @@ "noc"; }; + syscon_hsi0: syscon@16030000 { + compatible = "samsung,exynosautov920-hsi0-sysreg", + "syscon"; + reg = <0x16030000 0x1000>; + }; + pinctrl_hsi0: pinctrl@16040000 { compatible = "samsung,exynosautov920-pinctrl"; reg = <0x16040000 0x10000>; diff --git a/drivers/soc/samsung/exynos-pmu.c b/drivers/soc/samsung/exynos-pmu.c index d58376c38179..f5fcdde9750e 100644 --- a/drivers/soc/samsung/exynos-pmu.c +++ b/drivers/soc/samsung/exynos-pmu.c @@ -167,8 +167,8 @@ static const struct mfd_cell exynos_pmu_devs[] = { */ struct regmap *exynos_get_pmu_regmap(void) { - struct device_node *np = of_find_matching_node(NULL, - exynos_pmu_of_device_ids); + struct device_node *np __free(device_node) = + of_find_matching_node(NULL, exynos_pmu_of_device_ids); if (np) return exynos_get_pmu_regmap_by_phandle(np, NULL); return ERR_PTR(-ENODEV); diff --git a/include/linux/serial_s3c.h b/include/linux/serial_s3c.h index 102aa33d956c..f54cb6e23f85 100644 --- a/include/linux/serial_s3c.h +++ b/include/linux/serial_s3c.h @@ -269,7 +269,7 @@ #define APPLE_S5L_UTRSTAT_RXTO BIT(9) #define APPLE_S5L_UTRSTAT_ALL_FLAGS GENMASK(9, 3) -#ifndef __ASSEMBLY__ +#ifndef __ASSEMBLER__ #include <linux/serial_core.h> @@ -294,7 +294,7 @@ struct s3c2410_uartcfg { unsigned long ufcon; /* value of ufcon for port */ }; -#endif /* __ASSEMBLY__ */ +#endif /* __ASSEMBLER__ */ #endif /* __ASM_ARM_REGS_SERIAL_H */ |
