diff options
| author | Mark Brown <broonie@kernel.org> | 2026-05-29 18:08:46 +0100 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-05-29 18:08:46 +0100 |
| commit | edab04af1fb7cfb83d27ae39bbeb2c52c1c000be (patch) | |
| tree | 6e42678a0681c7261ba055f19ada58320c4be0f2 /arch | |
| parent | a53a66dce0512c84542e0bda87b5af9f2aaaffc9 (diff) | |
| parent | e28bf943a8c772c66cce977833607f4c7232edce (diff) | |
| download | linux-next-history-edab04af1fb7cfb83d27ae39bbeb2c52c1c000be.tar.gz | |
Merge branch 'for-next' of https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap.git
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/arm/boot/dts/ti/omap/am335x-sl50.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/ti/omap/dm8168-evm.dts | 4 | ||||
| -rw-r--r-- | arch/arm/boot/dts/ti/omap/motorola-cpcap-mapphone.dtsi | 6 | ||||
| -rw-r--r-- | arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts | 4 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_device.c | 29 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_device.h | 4 |
6 files changed, 25 insertions, 26 deletions
diff --git a/arch/arm/boot/dts/ti/omap/am335x-sl50.dts b/arch/arm/boot/dts/ti/omap/am335x-sl50.dts index 1dc4e344efd63..c5259eb7d21c7 100644 --- a/arch/arm/boot/dts/ti/omap/am335x-sl50.dts +++ b/arch/arm/boot/dts/ti/omap/am335x-sl50.dts @@ -558,8 +558,8 @@ remote-endpoint = <&codec_endpoint>; dai-format = "dsp_b"; - bitclock-master = <&codec_port>; - frame-master = <&codec_port>; + bitclock-master = <&codec_endpoint>; + frame-master = <&codec_endpoint>; bitclock-inversion; clocks = <&audio_mclk>; }; diff --git a/arch/arm/boot/dts/ti/omap/dm8168-evm.dts b/arch/arm/boot/dts/ti/omap/dm8168-evm.dts index 6130b9a5f6606..81450e15b889c 100644 --- a/arch/arm/boot/dts/ti/omap/dm8168-evm.dts +++ b/arch/arm/boot/dts/ti/omap/dm8168-evm.dts @@ -8,6 +8,10 @@ model = "DM8168 EVM"; compatible = "ti,dm8168-evm", "ti,dm8168", "ti,dm816"; + chosen { + stdout-path = &uart3; + }; + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x40000000 /* 1 GB */ diff --git a/arch/arm/boot/dts/ti/omap/motorola-cpcap-mapphone.dtsi b/arch/arm/boot/dts/ti/omap/motorola-cpcap-mapphone.dtsi index ea02fd403a9b4..73e27b95105e1 100644 --- a/arch/arm/boot/dts/ti/omap/motorola-cpcap-mapphone.dtsi +++ b/arch/arm/boot/dts/ti/omap/motorola-cpcap-mapphone.dtsi @@ -69,6 +69,8 @@ cpcap_audio: audio-codec { #sound-dai-cells = <1>; + interrupts-extended = <&cpcap 9 0>, <&cpcap 10 0>; + interrupt-names = "hs", "mb2"; port@0 { cpcap_audio_codec0: endpoint { @@ -267,6 +269,8 @@ regulator-min-microvolt = <2775000>; regulator-max-microvolt = <2775000>; regulator-enable-ramp-delay = <1000>; - regulator-initial-mode = <0x00>; /* NORMAL */ + regulator-allowed-modes = <0x00>, <0x40>; /* ON, LOW_PWR */ + regulator-initial-mode = <0x00>; /* ON */ + regulator-always-on; }; }; diff --git a/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts b/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts index 673df1b693f28..e253e0775ea95 100644 --- a/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts +++ b/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts @@ -351,7 +351,7 @@ pinctrl-names = "default"; pinctrl-0 = <&mpu9150h_pins>; interrupt-parent = <&gpio2>; - interrupt = <19 IRQ_TYPE_LEVEL_HIGH>; + interrupts = <19 IRQ_TYPE_LEVEL_HIGH>; }; }; @@ -413,7 +413,7 @@ pinctrl-names = "default"; pinctrl-0 = <&mpu9150_pins>; interrupt-parent = <&gpio2>; - interrupt = <7 IRQ_TYPE_LEVEL_HIGH>; + interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; vddio-supply = <&cb_v18>; vdd-supply = <&cb_v33>; invensense,level-shifter; diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c index 79db4c49ffc9c..77a75b0b9ae69 100644 --- a/arch/arm/mach-omap2/omap_device.c +++ b/arch/arm/mach-omap2/omap_device.c @@ -307,35 +307,27 @@ static struct omap_device *omap_device_alloc(struct platform_device *pdev, int ret = -ENOMEM; struct omap_device *od; int i; - struct omap_hwmod **hwmods; + struct omap_hwmod *hwmod; - od = kzalloc_obj(struct omap_device); - if (!od) - goto oda_exit1; + od = kzalloc_flex(*od, hwmods, oh_cnt); + if (!od) { + dev_err(&pdev->dev, "omap_device: build failed (%d)\n", ret); + return ERR_PTR(ret); + } od->hwmods_cnt = oh_cnt; + memcpy(od->hwmods, ohs, oh_cnt * sizeof(*od->hwmods)); - hwmods = kmemdup_array(ohs, oh_cnt, sizeof(*hwmods), GFP_KERNEL); - if (!hwmods) - goto oda_exit2; - - od->hwmods = hwmods; od->pdev = pdev; pdev->archdata.od = od; for (i = 0; i < oh_cnt; i++) { - hwmods[i]->od = od; - _add_hwmod_clocks_clkdev(od, hwmods[i]); + hwmod = od->hwmods[i]; + hwmod->od = od; + _add_hwmod_clocks_clkdev(od, hwmod); } return od; - -oda_exit2: - kfree(od); -oda_exit1: - dev_err(&pdev->dev, "omap_device: build failed (%d)\n", ret); - - return ERR_PTR(ret); } static void omap_device_delete(struct omap_device *od) @@ -344,7 +336,6 @@ static void omap_device_delete(struct omap_device *od) return; od->pdev->archdata.od = NULL; - kfree(od->hwmods); kfree(od); } diff --git a/arch/arm/mach-omap2/omap_device.h b/arch/arm/mach-omap2/omap_device.h index aa8096ecb23ca..fae09cfce137a 100644 --- a/arch/arm/mach-omap2/omap_device.h +++ b/arch/arm/mach-omap2/omap_device.h @@ -37,11 +37,11 @@ /** * struct omap_device - omap_device wrapper for platform_devices * @pdev: platform_device - * @hwmods: (one .. many per omap_device) * @hwmods_cnt: ARRAY_SIZE() of @hwmods * @_state: one of OMAP_DEVICE_STATE_* (see above) * @flags: device flags * @_driver_status: one of BUS_NOTIFY_*_DRIVER from <linux/device.h> + * @hwmods: (one .. many per omap_device) * * Integrates omap_hwmod data into Linux platform_device. * @@ -51,11 +51,11 @@ */ struct omap_device { struct platform_device *pdev; - struct omap_hwmod **hwmods; unsigned long _driver_status; u8 hwmods_cnt; u8 _state; u8 flags; + struct omap_hwmod *hwmods[] __counted_by(hwmods_cnt); }; /* Device driver interface (call via platform_data fn ptrs) */ |
