diff options
Diffstat (limited to 'dts/upstream/src/arm/amlogic')
| -rw-r--r-- | dts/upstream/src/arm/amlogic/meson8-fernsehfee3.dts | 306 | ||||
| -rw-r--r-- | dts/upstream/src/arm/amlogic/meson8.dtsi | 22 | ||||
| -rw-r--r-- | dts/upstream/src/arm/amlogic/meson8b.dtsi | 4 | 
3 files changed, 328 insertions, 4 deletions
| diff --git a/dts/upstream/src/arm/amlogic/meson8-fernsehfee3.dts b/dts/upstream/src/arm/amlogic/meson8-fernsehfee3.dts new file mode 100644 index 00000000000..4e52447d51b --- /dev/null +++ b/dts/upstream/src/arm/amlogic/meson8-fernsehfee3.dts @@ -0,0 +1,306 @@ +// SPDX-License-Identifier: GPL-2.0-only OR MIT +// Copyright (C) 2025 J. Neuschäfer <j.ne@posteo.net> + +/dts-v1/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/linux-event-codes.h> +#include <dt-bindings/leds/common.h> + +#include "meson8.dtsi" + +/ { +	model = "Fernsehfee 3.0"; +	compatible = "tcu,fernsehfee3", "amlogic,meson8"; + +	aliases { +		serial0 = &uart_AO; +		gpiochip0 = &gpio; +		gpiochip1 = &gpio_ao; +		i2c0 = &i2c_AO; +		i2c1 = &i2c_B; +		mmc0 = &sdhc; +		mmc1 = &sdio; +	}; + +	chosen { +		stdout-path = "serial0:115200n8"; +	}; + +	memory@0 { +		device_type = "memory"; +		reg = <0x0 0x40000000>;  /* 1 GiB */ +	}; + +	gpio-keys { +		compatible = "gpio-keys-polled"; +		poll-interval = <100>; + +		power-button { +			label = "Power button"; +			linux,code = <KEY_POWER>; +			gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_LOW>; +		}; +	}; + +	leds { +		compatible = "gpio-leds"; + +		led-0 { +			/* +			 * The power LED can be turned red, otherwise it is green. +			 */ +			gpios = <&gpio_ao GPIO_TEST_N GPIO_ACTIVE_LOW>; +			function = LED_FUNCTION_POWER; +			color = <LED_COLOR_ID_RED>; +		}; +	}; + +	vcc_5v: regulator-5v { +		/* 5V rail, always on as long as the system is running */ +		compatible = "regulator-fixed"; +		regulator-name = "5V"; +		regulator-min-microvolt = <5000000>; +		regulator-max-microvolt = <5000000>; +		regulator-always-on; +	}; + +	vcc_3v3: regulator-3v3 { +		/* Chipown AP2420 step-down converter */ +		compatible = "regulator-fixed"; +		regulator-name = "3.3V"; +		regulator-min-microvolt = <3300000>; +		regulator-max-microvolt = <3300000>; +		vin-supply = <&vcc_5v>; +	}; + +	wifi_3v3: regulator-wifi { +		compatible = "regulator-fixed"; +		regulator-name = "3.3V-WIFI"; +		regulator-min-microvolt = <3300000>; +		regulator-max-microvolt = <3300000>; +		vin-supply = <&vcc_3v3>; +		gpio = <&gpio GPIOX_11 GPIO_ACTIVE_HIGH>; +		enable-active-high; +	}; +}; + +&cpu0 { +	cpu-supply = <&vcck>; +}; + +ðmac { +	status = "okay"; +	pinctrl-0 = <ð_pins>; +	pinctrl-names = "default"; +	phy-handle = <ð_phy0>; +	phy-mode = "rmii"; + +	mdio { +		compatible = "snps,dwmac-mdio"; +		#address-cells = <1>; +		#size-cells = <0>; + +		eth_phy0: ethernet-phy@0 { +			/* IC Plus IP101A (0x02430c54) */ +			reg = <0>; + +			reset-assert-us = <10000>; +			reset-deassert-us = <10000>; +			reset-gpios = <&gpio GPIOH_4 GPIO_ACTIVE_LOW>; +		}; +	}; +}; + +&i2c_AO { +	status = "okay"; +	pinctrl-0 = <&i2c_ao_pins>; +	pinctrl-names = "default"; + +	pmic@32 { +		compatible = "ricoh,rn5t618"; +		reg = <0x32>; +		system-power-controller; + +		regulators { +			vcck: DCDC1 { +				regulator-name = "VCCK"; +				regulator-min-microvolt = <825000>; +				regulator-max-microvolt = <1150000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			vddee: DCDC2 { +				/* the output is also used as VDDAO */ +				regulator-name = "VDD_EE"; +				regulator-min-microvolt = <950000>; +				regulator-max-microvolt = <1150000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			DCDC3 { +				regulator-name = "VDD_DDR"; +				regulator-min-microvolt = <1500000>; +				regulator-max-microvolt = <1500000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			LDO1 { +				regulator-name = "VDDIO_AO28"; +				regulator-min-microvolt = <2900000>; +				regulator-max-microvolt = <2900000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			LDO2 { +				regulator-name = "VDDIO_AO18"; +				regulator-min-microvolt = <1800000>; +				regulator-max-microvolt = <1800000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			vcc1v8_usb: LDO3 { +				regulator-name = "VCC1V8_USB"; +				regulator-min-microvolt = <1800000>; +				regulator-max-microvolt = <1800000>; +				regulator-boot-on; +			}; + +			LDO4 { +				/* This one appears to be unused */ +				regulator-name = "VCC2V8"; +				regulator-min-microvolt = <2850000>; +				regulator-max-microvolt = <2850000>; +			}; + +			LDO5 { +				regulator-name = "AVDD1V8"; +				regulator-min-microvolt = <1800000>; +				regulator-max-microvolt = <1800000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			LDORTC1 { +				regulator-name = "VDD_LDO"; +				regulator-min-microvolt = <2700000>; +				regulator-max-microvolt = <2700000>; +				regulator-boot-on; +				regulator-always-on; +			}; + +			LDORTC2 { +				regulator-name = "RTC_0V9"; +				regulator-min-microvolt = <900000>; +				regulator-max-microvolt = <900000>; +				regulator-boot-on; +				regulator-always-on; +			}; +		}; +	}; + +	eeprom@50 { +		/* Fairchild FM24C08A */ +		compatible = "atmel,24c08"; +		reg = <0x50>; +		pagesize = <16>; +		wp-gpios = <&gpio GPIOH_3 GPIO_ACTIVE_HIGH>; +		num-addresses = <4>; +	}; +}; + +&i2c_B { +	status = "okay"; +	pinctrl-0 = <&i2c_b_pins>; +	pinctrl-names = "default"; + +	/* TODO: SiI9293 HDMI receiver @ 0x39 */ +}; + +&mali { +	mali-supply = <&vddee>; +}; + +&sdhc { +	status = "okay"; +	pinctrl-0 = <&sdxc_c_pins>; +	pinctrl-names = "default"; + +	/* eMMC */ +	bus-width = <8>; +	max-frequency = <100000000>; + +	disable-wp; +	cap-mmc-highspeed; +	mmc-hs200-1_8v; +	no-sdio; + +	vmmc-supply = <&vcc_3v3>; +	vqmmc-supply = <&vcc_3v3>; +}; + +&sdio { +	status = "okay"; +	pinctrl-0 = <&sd_b_pins>; + +	/* SD card */ +	slot@1 { +		compatible = "mmc-slot"; +		reg = <1>; +		status = "okay"; + +		bus-width = <4>; +		cap-mmc-highspeed; +		cap-sd-highspeed; +		disable-wp; + +		cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>; + +		vmmc-supply = <&vcc_3v3>; +	}; +}; + +&uart_AO { +	status = "okay"; +	pinctrl-0 = <&uart_ao_a_pins>; +	pinctrl-names = "default"; +}; + +&usb0 { +	status = "okay"; +}; + +&usb0_phy { +	status = "okay"; +	phy-supply = <&vcc1v8_usb>; +}; + +&usb1 { +	status = "okay"; +	dr_mode = "host"; +	#address-cells = <1>; +	#size-cells = <0>; + +	wifi: wifi@1 { +		/* Realtek RTL8188 2.4GHz WiFi module */ +		compatible = "usbbda,179"; +		reg = <1>; +		vdd-supply = <&wifi_3v3>; +	}; +}; + +&usb1_phy { +	status = "okay"; +	phy-supply = <&vcc1v8_usb>; +}; + +&ir_receiver { +	status = "okay"; +	pinctrl-0 = <&ir_recv_pins>; +	pinctrl-names = "default"; +}; diff --git a/dts/upstream/src/arm/amlogic/meson8.dtsi b/dts/upstream/src/arm/amlogic/meson8.dtsi index f785e0de084..a609b5a0fda 100644 --- a/dts/upstream/src/arm/amlogic/meson8.dtsi +++ b/dts/upstream/src/arm/amlogic/meson8.dtsi @@ -398,7 +398,7 @@  			mux {  				groups = "uart_tx_ao_a", "uart_rx_ao_a";  				function = "uart_ao"; -				bias-disable; +				bias-pull-up;  			};  		}; @@ -481,6 +481,14 @@  			gpio-ranges = <&pinctrl_cbus 0 0 120>;  		}; +		i2c_b_pins: i2c-b { +			mux { +				groups = "i2c_sda_b", "i2c_sck_b"; +				function = "i2c_b"; +				bias-disable; +			}; +		}; +  		sd_a_pins: sd-a {  			mux {  				groups = "sd_d0_a", "sd_d1_a", "sd_d2_a", @@ -526,6 +534,16 @@  			};  		}; +		sdxc_c_pins: sdxc-c { +			mux { +				groups = "sdxc_d0_c", "sdxc_d13_c", +					"sdxc_clk_c", "sdxc_cmd_c", +					"sdxc_d47_c"; +				function = "sdxc_c"; +				bias-pull-up; +			}; +		}; +  		spdif_out_pins: spdif-out {  			mux {  				groups = "spdif_out"; @@ -567,7 +585,7 @@  				groups = "uart_tx_a1",  				       "uart_rx_a1";  				function = "uart_a"; -				bias-disable; +				bias-pull-up;  			};  		}; diff --git a/dts/upstream/src/arm/amlogic/meson8b.dtsi b/dts/upstream/src/arm/amlogic/meson8b.dtsi index fdb0abe23a0..2d77b9876bf 100644 --- a/dts/upstream/src/arm/amlogic/meson8b.dtsi +++ b/dts/upstream/src/arm/amlogic/meson8b.dtsi @@ -368,7 +368,7 @@  			mux {  				groups = "uart_tx_ao_a", "uart_rx_ao_a";  				function = "uart_ao"; -				bias-disable; +				bias-pull-up;  			};  		}; @@ -521,7 +521,7 @@  				groups = "uart_tx_b0",  				       "uart_rx_b0";  				function = "uart_b"; -				bias-disable; +				bias-pull-up;  			};  		}; | 
