Home
last modified time | relevance | path

Searched +full:meson +full:- +full:device (Results 1 – 25 of 133) sorted by relevance

123456

/linux-6.14.4/drivers/pwm/
Dpwm-meson.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
3 * PWM controller driver for Amlogic Meson SoCs.
13 * Setting the duty cycle will disable and re-enable the PWM output.
19 * https://dl.khadas.com/Hardware/VIM2/Datasheet/S912_Datasheet_V0.220170314publicversion-Wesion.pdf
23 * https://dn.odroid.com/S922X/ODROID-N2/Datasheet/S922X_Public_Datasheet_V0.2.pdf
33 #include <linux/clk-provider.h>
122 struct meson_pwm *meson = to_meson_pwm(chip); in meson_pwm_request() local
123 struct meson_pwm_channel *channel = &meson->channels[pwm->hwpwm]; in meson_pwm_request()
124 struct device *dev = pwmchip_parent(chip); in meson_pwm_request()
127 err = clk_prepare_enable(channel->clk); in meson_pwm_request()
[all …]
/linux-6.14.4/arch/arm64/boot/dts/amlogic/
Dmeson-gxm.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 #include "meson-gxl.dtsi"
10 compatible = "amlogic,meson-gxm";
13 cpu-map {
46 capacity-dmips-mhz = <1024>;
50 capacity-dmips-mhz = <1024>;
54 capacity-dmips-mhz = <1024>;
58 capacity-dmips-mhz = <1024>;
63 compatible = "arm,cortex-a53";
65 enable-method = "psci";
[all …]
Dmeson-gx.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/interrupt-controller/irq.h>
14 #include <dt-bindings/interrupt-controller/arm-gic.h>
15 #include <dt-bindings/power/meson-gxbb-power.h>
16 #include <dt-bindings/thermal/thermal.h>
19 interrupt-parent = <&gic>;
20 #address-cells = <2>;
21 #size-cells = <2>;
29 reserved-memory {
[all …]
Dmeson-s4.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
6 #include <dt-bindings/interrupt-controller/irq.h>
7 #include <dt-bindings/interrupt-controller/arm-gic.h>
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/gpio/meson-s4-gpio.h>
10 #include <dt-bindings/clock/amlogic,s4-pll-clkc.h>
11 #include <dt-bindings/clock/amlogic,s4-peripherals-clkc.h>
12 #include <dt-bindings/power/meson-s4-power.h>
13 #include <dt-bindings/reset/amlogic,meson-s4-reset.h>
17 #address-cells = <2>;
[all …]
Dmeson-sm1.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
7 #include "meson-g12-common.dtsi"
8 #include <dt-bindings/clock/axg-audio-clkc.h>
9 #include <dt-bindings/power/meson-sm1-power.h>
10 #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
11 #include <dt-bindings/reset/amlogic,meson-g12a-audio-reset.h>
16 tdmif_a: audio-controller-0 {
17 compatible = "amlogic,axg-tdm-iface";
18 #sound-dai-cells = <0>;
19 sound-name-prefix = "TDM_A";
[all …]
/linux-6.14.4/drivers/spi/
Dspi-meson-spifc.c1 // SPDX-License-Identifier: GPL-2.0+
3 // Driver for Amlogic Meson SPI flash controller (SPIFC)
10 #include <linux/device.h>
56 #define USER_UC_MASK ((BIT(5) - 1) << 27)
71 * @regmap: regmap for device registers
72 * @clk: input clock of the built-in baud rate generator
73 * @dev: the device structure
79 struct device *dev;
90 * meson_spifc_wait_ready() - wait for the current operation to terminate
91 * @spifc: the Meson SPI device
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/power/
Damlogic,meson-gx-pwrc.txt1 Amlogic Meson Power Controller (deprecated)
4 The Amlogic Meson SoCs embeds an internal Power domain controller.
7 ----------------
13 power-domain.yaml
15 Device Tree Bindings:
16 ---------------------
19 - compatible: should be one of the following :
20 - "amlogic,meson-gx-pwrc-vpu" for the Meson GX SoCs
21 - "amlogic,meson-g12a-pwrc-vpu" for the Meson G12A SoCs
22 - #power-domain-cells: should be 0
[all …]
/linux-6.14.4/drivers/gpu/drm/ci/
Dtest.yml1 .test-rules:
3 - if: '$FD_FARM == "offline" && $RUNNER_TAG =~ /^google-freedreno-/'
5 - if: '$COLLABORA_FARM == "offline" && $RUNNER_TAG =~ /^mesa-ci-x86-64-lava-/'
7 - !reference [.no_scheduled_pipelines-rules, rules]
8 - when: on_success
10 .lava-test:
12 - .test-rules
16 - rm -rf install
17 - tar -xf artifacts/install.tar
18 - mv install/* artifacts/.
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/mtd/
Damlogic,meson-nand.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/mtd/amlogic,meson-nand.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - $ref: nand-controller.yaml
13 - [email protected]
18 - amlogic,meson-gxl-nfc
19 - amlogic,meson-axg-nfc
24 reg-names:
26 - const: nfc
[all …]
/linux-6.14.4/drivers/gpu/drm/meson/
Dmeson_drv.c1 // SPDX-License-Identifier: GPL-2.0-or-later
17 #include <linux/soc/amlogic/meson-canvas.h>
43 #define DRIVER_NAME "meson"
44 #define DRIVER_DESC "Amlogic Meson DRM driver"
54 * - Full reset of entire video processing HW blocks
55 * - Scaling and setup of the VPU clock
56 * - Bus clock gates
57 * - Powering up video processing HW blocks
58 * - Powering Up HDMI controller and PHY
74 struct meson_drm *priv = dev->dev_private; in meson_irq()
[all …]
Dmeson_dw_hdmi.c1 // SPDX-License-Identifier: GPL-2.0-or-later
32 #define DRIVER_NAME "meson-dw-hdmi"
33 #define DRIVER_DESC "Amlogic Meson HDMI-TX DRM driver"
40 * - A Synopsys DesignWare HDMI Controller IP
41 * - A TOP control block controlling the Clocks and PHY
42 * - A custom HDMI PHY in order convert video to TMDS signal
79 * - HPD Rise & Fall interrupt
80 * - HDMI Controller Interrupt
81 * - HDMI PHY Init for 480i to 1080p60
82 * - VENC & HDMI Clock setup for 480i to 1080p60
[all …]
/linux-6.14.4/drivers/reset/amlogic/
Dreset-meson.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
3 * Amlogic Meson Reset Controller driver
5 * Copyright (c) 2016-2024 BayLibre, SAS.
16 #include <linux/reset-controller.h>
18 #include "reset-meson.h"
52 { .compatible = "amlogic,meson8b-reset", .data = &meson8b_param},
53 { .compatible = "amlogic,meson-gxbb-reset", .data = &meson8b_param},
54 { .compatible = "amlogic,meson-axg-reset", .data = &meson8b_param},
55 { .compatible = "amlogic,meson-a1-reset", .data = &meson_a1_param},
56 { .compatible = "amlogic,meson-s4-reset", .data = &meson_s4_param},
[all …]
Dreset-meson-common.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
3 * Amlogic Meson Reset core functions
5 * Copyright (c) 2016-2024 BayLibre, SAS.
10 #include <linux/device.h>
13 #include <linux/reset-controller.h>
15 #include "reset-meson.h"
28 unsigned int stride = regmap_get_reg_stride(data->map); in meson_reset_offset_and_bit()
42 offset += data->param->reset_offset; in meson_reset_reset()
44 return regmap_write(data->map, offset, BIT(bit)); in meson_reset_reset()
55 offset += data->param->level_offset; in meson_reset_level()
[all …]
/linux-6.14.4/Documentation/devicetree/bindings/reset/
Damlogic,meson-axg-audio-arb.yaml1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
4 ---
5 $id: http://devicetree.org/schemas/reset/amlogic,meson-axg-audio-arb.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
11 - Jerome Brunet <[email protected]>
13 description: The Amlogic Audio ARB is a simple device which enables or disables
19 - amlogic,meson-axg-audio-arb
20 - amlogic,meson-sm1-audio-arb
31 "#reset-cells":
35 - compatible
[all …]
/linux-6.14.4/drivers/nvmem/
Dmeson-efuse.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Amlogic Meson GX eFuse Driver
11 #include <linux/nvmem-provider.h>
15 #include <linux/firmware/meson/meson_sm.h>
42 { .compatible = "amlogic,meson-gxbb-efuse", },
49 struct device *dev = &pdev->dev; in meson_efuse_probe()
56 of_parse_phandle(pdev->dev.of_node, "secure-monitor", 0); in meson_efuse_probe()
59 dev_err(&pdev->dev, "no secure-monitor node\n"); in meson_efuse_probe()
60 return -ENODEV; in meson_efuse_probe()
65 return -EPROBE_DEFER; in meson_efuse_probe()
[all …]
/linux-6.14.4/drivers/pinctrl/meson/
Dpinctrl-meson8-pmx.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * First generation of pinmux driver for Amlogic Meson SoCs
13 #include <linux/device.h>
18 #include "pinctrl-meson.h"
19 #include "pinctrl-meson8-pmx.h"
22 * meson8_pmx_disable_other_groups() - disable other groups using a given pin
24 * @pc: meson pin controller device
26 * @sel_group: index of the selected group, or -1 if none
29 * selected one. If @sel_group is -1 all groups are disabled, leaving
39 for (i = 0; i < pc->data->num_groups; i++) { in meson8_pmx_disable_other_groups()
[all …]
Dpinctrl-meson-axg-pmx.c1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Second generation of pinmux driver for Amlogic Meson-AXG SoC.
14 * Meson-AXG SoC and later series, which use 4-width continuous
20 #include <linux/device.h>
25 #include "pinctrl-meson.h"
26 #include "pinctrl-meson-axg-pmx.h"
33 const struct meson_axg_pmx_data *pmx = pc->data->pmx_data; in meson_axg_pmx_get_bank()
35 for (i = 0; i < pmx->num_pmx_banks; i++) in meson_axg_pmx_get_bank()
36 if (pin >= pmx->pmx_banks[i].first && in meson_axg_pmx_get_bank()
37 pin <= pmx->pmx_banks[i].last) { in meson_axg_pmx_get_bank()
[all …]
/linux-6.14.4/drivers/char/hw_random/
Dmeson-rng.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
32 struct device *dev;
40 *(u32 *)buf = readl_relaxed(data->base + RNG_DATA); in meson_rng_read()
54 return -EBUSY; in meson_rng_wait_status()
64 void __iomem *cfg_addr = data->base + RNG_S4_CFG; in meson_s4_rng_read()
71 dev_err(data->dev, "Seed isn't ready, try again\n"); in meson_s4_rng_read()
77 dev_err(data->dev, "Can't get random number, try again\n"); in meson_s4_rng_read()
81 *(u32 *)buf = readl_relaxed(data->base + RNG_S4_DATA); in meson_s4_rng_read()
88 struct device *dev = &pdev->dev; in meson_rng_probe()
95 return -ENOMEM; in meson_rng_probe()
[all …]
/linux-6.14.4/drivers/media/cec/platform/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
18 tristate "Amlogic Meson AO CEC driver"
23 This is a driver for Amlogic Meson SoCs AO CEC interface. It uses the
28 tristate "Amlogic Meson G12A AO CEC driver"
36 This is a driver for Amlogic Meson G12A SoCs AO CEC interface.
37 This driver if for the new AO-CEC module found in G12A SoCs,
44 tristate "Generic GPIO-based CEC driver"
51 This is a generic GPIO-based CEC driver.
108 Selecting it will enable support for this device.
118 SECO Boards Consumer-IR in seco-cec driver.
[all …]
/linux-6.14.4/drivers/net/ethernet/stmicro/stmmac/
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
3 tristate "STMicroelectronics Multi-Gigabit Ethernet driver"
36 STi, Allwinner, Amlogic Meson, Altera SOCFPGA.
45 tristate "Support for snps,dwc-qos-ethernet.txt DT binding."
50 Support for chips using the snps,dwc-qos-ethernet.txt DT binding.
78 device driver. This driver is used on for the Ingenic SoCs
90 device driver. This driver does not use any of the hardware
92 will behave like standard non-accelerated ethernet interfaces.
114 tristate "Amlogic Meson dwmac support"
118 Support for Ethernet controller on Amlogic Meson SoCs.
[all …]
/linux-6.14.4/drivers/watchdog/
Dmeson_gxbb_wdt.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
26 #define GXBB_WDT_CTRL_DIV_MASK (BIT(18) - 1)
28 #define GXBB_WDT_TCNT_SETUP_MASK (BIT(16) - 1)
55 writel(readl(data->reg_base + GXBB_WDT_CTRL_REG) | GXBB_WDT_CTRL_EN, in meson_gxbb_wdt_start()
56 data->reg_base + GXBB_WDT_CTRL_REG); in meson_gxbb_wdt_start()
65 writel(readl(data->reg_base + GXBB_WDT_CTRL_REG) & ~GXBB_WDT_CTRL_EN, in meson_gxbb_wdt_stop()
66 data->reg_base + GXBB_WDT_CTRL_REG); in meson_gxbb_wdt_stop()
75 writel(0, data->reg_base + GXBB_WDT_RSET_REG); in meson_gxbb_wdt_ping()
89 wdt_dev->timeout = timeout; in meson_gxbb_wdt_set_timeout()
93 writel(tcnt, data->reg_base + GXBB_WDT_TCNT_REG); in meson_gxbb_wdt_set_timeout()
[all …]
/linux-6.14.4/drivers/media/rc/
Dmeson-ir-tx.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * meson-ir-tx.c - Amlogic Meson IR TX driver
10 #include <linux/device.h>
20 #include <media/rc-core.h>
22 #define DEVICE_NAME "Meson IR TX"
23 #define DRIVER_NAME "meson-ir-tx"
39 #define IRB_DELAY_MASK (IRB_MAX_DELAY - 1)
51 #define IRB_MOD_COUNT(lo, hi) ((((lo) - 1) << 16) | ((hi) - 1))
66 struct device *dev;
81 unsigned int cnt = DIV_ROUND_CLOSEST(ir->clk_rate, ir->carrier); in meson_irtx_set_mod()
[all …]
DKconfig1 # SPDX-License-Identifier: GPL-2.0-only
15 Say Y when you have a TV or an IR device.
25 Allow attaching eBPF programs to a lirc device using the bpf(2)
80 tristate "Enable IR raw decoder for the RC-5 protocol"
84 Enable this option if you have IR with RC-5 protocol, and
96 tristate "Enable IR raw decoder for the RC-MM protocol"
98 Enable this option when you have IR with RC-MM protocol, and
100 24 and 32 bits RC-MM variants. You can enable or disable the
102 'rc-mm-12', 'rc-mm-24' and 'rc-mm-32'.
105 will be called ir-rcmm-decoder.
[all …]
/linux-6.14.4/drivers/i2c/busses/
Di2c-meson.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * I2C bus driver for Amlogic Meson SoCs
21 /* Meson I2C register map */
68 * struct meson_i2c - Meson I2C device private data
71 * @dev: Pointer to device structure
72 * @regs: Base address of the device memory mapped registers
82 * @tokens: Sequence of tokens to be written to the device
88 struct device *dev;
116 data = readl(i2c->regs + reg); in meson_i2c_set_mask()
119 writel(data, i2c->regs + reg); in meson_i2c_set_mask()
[all …]
/linux-6.14.4/drivers/iio/adc/
Dmeson_saradc.c1 // SPDX-License-Identifier: GPL-2.0
3 * Amlogic Meson Successive Approximation Register (SAR) A/D Converter
10 #include <linux/clk-provider.h>
16 #include <linux/nvmem-consumer.h>
96 (8 + (((_chan) - 2) * 3))
153 * and u-boot source served as reference). These only seem to be relevant on
348 /* lock to protect against multiple access to the device */
378 for (i = 0; i < indio_dev->num_channels; i++) in find_channel_by_num()
379 if (indio_dev->channels[i].channel == num) in find_channel_by_num()
380 return &indio_dev->channels[i]; in find_channel_by_num()
[all …]

123456