1

More Ux500 device tree updates for v6.8

The HREF520 reference design had the wrong analog baseband
 defined causing a boot regression.
 
 Was AB8500, but this board has AB8505.
 
 Rearrange the device trees to make it possible to define
 a different AB and slot it in.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEElDRnuGcz/wPCXQWMQRCzN7AZXXMFAmV8oEwACgkQQRCzN7AZ
 XXN6xhAAt0iSyMtZhJIRVFHYr6fMUzDvQ+QeaKsXAQ1L7gcs/UN1wYTcHsFATW7j
 6CK7OQsOQsjfi6QyhpnPMVBbhv1632LBHhe6IXmIz6C/npnC9uaedxpO9jEiCfb7
 W0EXEyleCg8uqKnFxyUy0shklH3XQBodv75ZKsHqqk59QHS+H7aBkUo8fWbNra1z
 pQsujNDSg1d2kjpmHLpDOwmE7NhbFxBeTlPs/4/Q81RCdeJaKQEoj7LoNq0tBcLr
 1JXXWoSJ5yY1U20CNYI48Pa7XzxT3uDbTsRt7TMqp67FZHHEPvdQLvp/q0cO6RV6
 eg3A/T61PO2stknDmPCYvsEh3KAEDpFpye3wMJ6bcQe9SPhtAmgyu0NItopF8xxc
 bOnl8TQAzh3GWACgdLwGCZ+YkVv6E41S8YlNi8sC457U8BG1Qi4n7QKReQWfBE6J
 LlYe2dO46J0b07BrWKlQq0eCMQB57UkTiHHpYiAS3X1eP/iSyZoEn+oD5gtrGL85
 vQuNOe9R1mT5AJB+OLa3OS6zUEHms1LWoih+VIoXors/+3idsOmga1CF31QEZCA/
 XvGhZg68C9CMYd8igKO/ToWTcdlLAOfx85QBr99yW05nJG7o1Cw7TCO5J/xay/1h
 glwGQe6es0ee/l+rkFGm4wDocfGnb8iB9t3JqVANViXDAJyzVBk=
 =zGCp
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmWEaPQACgkQYKtH/8kJ
 Uie9bw//X3UgWlngeeSnOKf8kYz6LXfKKHeX7vs17XEzfAtN8sz9QxFZBK7/5iUp
 +Pt9sEZ/h+aSpabmb9LAWL+4aC2Wi43rWnMCINhiANNKyaa36+S+wD5ll2HXn24Y
 Kd5I/sQQTSrY3fOuinQmc6hFS/PjSNGjjpsWW9lqW3pMTUJjeoNwYbiZTizx+jxz
 /idRc2UxN5jn9yYmCqG/81VZTNSDtFgfPn3cfXyou1etERD7BSlynZgR3+xDFSCw
 N0rzlDltS0klnDSD9sogC3ta2ps75Vc5WjZdF15kL6KIqyPOs65Zw9Yg625A9o/O
 xt3lR/Yr/EhWnSd0eIPuQ3kH82QIo995Hpu9DDItxn4OpiKYazZDxcbxS9KSEPma
 X6LeaHU7Vh8EItSIVLA5z2n6CeoUo6CpewTyTFZ25s2h5foAHqtMrz16p9BktCSZ
 Ck5x/a+AwDv0aV6SSulg3jmaU4lcqw4RGZZGF++RvGESDS3X/vlxGeot0s88ASZA
 P7o30CyGrXFLUS9hEajO+y28Qn9KusPu9biLf5LPVNxQoG4ug59/hyg4l/TLfwCi
 fZSDKm17hOew5+raeoLh5qcnopnfbekufy57L+DFJi+0WFhpdyTIBB90iR4PL1FX
 U5NwqREm+TKoP4QGZtwLgAhDRpoaunWaP3J9IQBAzmZeBtaFI/M=
 =kzja
 -----END PGP SIGNATURE-----

Merge tag 'ux500-dts-soc-for-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator into soc/dt

More Ux500 device tree updates for v6.8

The HREF520 reference design had the wrong analog baseband
defined causing a boot regression.

Was AB8500, but this board has AB8505.

Rearrange the device trees to make it possible to define
a different AB and slot it in.

* tag 'ux500-dts-soc-for-v6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-integrator:
  ARM: dts: ux500-href: Switch HREF520 to AB8505
  ARM: dts: ux500-href: Push AB8500 config out
  ARM: dts: ux500-href: Push AB8500 inclusion to the top

Link: https://lore.kernel.org/r/CACRpkdZ9wCV7oohF2KX6MFwmuSPR_i7et8O5SH=op6gyQ4mOvQ@mail.gmail.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2023-12-21 16:33:56 +00:00
commit 5a256cf710
9 changed files with 543 additions and 56 deletions

View File

@ -9,6 +9,54 @@
soc {
prcmu@80157000 {
ab8500 {
phy {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&usb_a_1_default>;
pinctrl-1 = <&usb_a_1_sleep>;
};
regulator {
ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
regulator-name = "V-DISPLAY";
};
ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
regulator-name = "V-eMMC1";
};
ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
regulator-name = "V-MMC-SD";
};
ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
regulator-name = "V-INTCORE";
};
ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
regulator-name = "V-TVOUT";
};
ab8500_ldo_audio_reg: ab8500_ldo_audio {
regulator-name = "V-AUD";
};
ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
regulator-name = "V-AMIC1";
};
ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
regulator-name = "V-AMIC2";
};
ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
regulator-name = "V-DMIC";
};
ab8500_ldo_ana_reg: ab8500_ldo_ana {
regulator-name = "V-CSI/DSI";
};
};
gpio {
/* Hog a few default settings */
pinctrl-names = "default";

View File

@ -0,0 +1,490 @@
// SPDX-License-Identifier: GPL-2.0-or-later
/*
* Copyright 2023 Linus Walleij <linus.walleij@linaro.org>
*/
#include "ste-ab8505.dtsi"
/ {
soc {
prcmu@80157000 {
ab8505 {
phy {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&usb_a_1_default>;
pinctrl-1 = <&usb_a_1_sleep>;
};
regulator {
ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
regulator-name = "V-DISPLAY";
};
ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
regulator-name = "V-eMMC1";
};
ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
regulator-name = "V-MMC-SD";
};
ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
regulator-name = "V-INTCORE";
};
ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
regulator-name = "V-TVOUT";
};
ab8500_ldo_audio_reg: ab8500_ldo_audio {
regulator-name = "V-AUD";
};
ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
regulator-name = "V-AMIC1";
};
ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
regulator-name = "V-AMIC2";
};
ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
regulator-name = "V-DMIC";
};
ab8500_ldo_ana_reg: ab8500_ldo_ana {
regulator-name = "V-CSI/DSI";
};
};
gpio {
/* Hog a few default settings */
pinctrl-names = "default";
pinctrl-0 = <&gpio2_default_mode>,
<&gpio4_default_mode>,
<&gpio10_default_mode>,
<&gpio11_default_mode>,
<&gpio12_default_mode>,
<&gpio13_default_mode>,
<&gpio16_default_mode>,
<&gpio24_default_mode>,
<&gpio25_default_mode>,
<&gpio36_default_mode>,
<&gpio37_default_mode>,
<&gpio38_default_mode>,
<&gpio39_default_mode>,
<&gpio42_default_mode>,
<&gpio26_default_mode>,
<&gpio35_default_mode>,
<&ycbcr_default_mode>,
<&pwm_default_mode>,
<&adi1_default_mode>,
<&usbuicc_default_mode>,
<&dmic_default_mode>,
<&extcpena_default_mode>,
<&modsclsda_default_mode>;
/*
* Pins 2, 4, 10, 11, 12, 13, 16, 24, 25, 36, 37, 38, 39 and 42
* are muxed in as GPIO, and configured as INPUT PULL DOWN
*/
gpio2 {
gpio2_default_mode: gpio2_default {
default_mux {
function = "gpio";
groups = "gpio2_a_1";
};
default_cfg {
pins = "GPIO2_T9";
input-enable;
bias-pull-down;
};
};
};
gpio4 {
gpio4_default_mode: gpio4_default {
default_mux {
function = "gpio";
groups = "gpio4_a_1";
};
default_cfg {
pins = "GPIO4_W2";
input-enable;
bias-pull-down;
};
};
};
gpio10 {
gpio10_default_mode: gpio10_default {
default_mux {
function = "gpio";
groups = "gpio10_d_1";
};
default_cfg {
pins = "GPIO10_U17";
input-enable;
bias-pull-down;
};
};
};
gpio11 {
gpio11_default_mode: gpio11_default {
default_mux {
function = "gpio";
groups = "gpio11_d_1";
};
default_cfg {
pins = "GPIO11_AA18";
input-enable;
bias-pull-down;
};
};
};
gpio12 {
gpio12_default_mode: gpio12_default {
default_mux {
function = "gpio";
groups = "gpio12_d_1";
};
default_cfg {
pins = "GPIO12_U16";
input-enable;
bias-pull-down;
};
};
};
gpio13 {
gpio13_default_mode: gpio13_default {
default_mux {
function = "gpio";
groups = "gpio13_d_1";
};
default_cfg {
pins = "GPIO13_W17";
input-enable;
bias-pull-down;
};
};
};
gpio16 {
gpio16_default_mode: gpio16_default {
default_mux {
function = "gpio";
groups = "gpio16_a_1";
};
default_cfg {
pins = "GPIO16_F15";
input-enable;
bias-pull-down;
};
};
};
gpio24 {
gpio24_default_mode: gpio24_default {
default_mux {
function = "gpio";
groups = "gpio24_a_1";
};
default_cfg {
pins = "GPIO24_T14";
input-enable;
bias-pull-down;
};
};
};
gpio25 {
gpio25_default_mode: gpio25_default {
default_mux {
function = "gpio";
groups = "gpio25_a_1";
};
default_cfg {
pins = "GPIO25_R16";
input-enable;
bias-pull-down;
};
};
};
gpio36 {
gpio36_default_mode: gpio36_default {
default_mux {
function = "gpio";
groups = "gpio36_a_1";
};
default_cfg {
pins = "GPIO36_A17";
input-enable;
bias-pull-down;
};
};
};
gpio37 {
gpio37_default_mode: gpio37_default {
default_mux {
function = "gpio";
groups = "gpio37_a_1";
};
default_cfg {
pins = "GPIO37_E15";
input-enable;
bias-pull-down;
};
};
};
gpio38 {
gpio38_default_mode: gpio38_default {
default_mux {
function = "gpio";
groups = "gpio38_a_1";
};
default_cfg {
pins = "GPIO38_C17";
input-enable;
bias-pull-down;
};
};
};
gpio39 {
gpio39_default_mode: gpio39_default {
default_mux {
function = "gpio";
groups = "gpio39_a_1";
};
default_cfg {
pins = "GPIO39_E16";
input-enable;
bias-pull-down;
};
};
};
gpio42 {
gpio42_default_mode: gpio42_default {
default_mux {
function = "gpio";
groups = "gpio42_a_1";
};
default_cfg {
pins = "GPIO42_U2";
input-enable;
bias-pull-down;
};
};
};
/*
* Pins 26 and 35 muxed in as GPIO, and configured as OUTPUT LOW
*/
gpio26 {
gpio26_default_mode: gpio26_default {
default_mux {
function = "gpio";
groups = "gpio26_d_1";
};
default_cfg {
pins = "GPIO26_M16";
output-low;
};
};
};
gpio35 {
gpio35_default_mode: gpio35_default {
default_mux {
function = "gpio";
groups = "gpio35_d_1";
};
default_cfg {
pins = "GPIO35_W15";
output-low;
};
};
};
/*
* This sets up the YCBCR connector pins, i.e. analog video out.
* Set as input with no bias.
*/
ycbcr {
ycbcr_default_mode: ycbcr_default {
default_mux {
function = "ycbcr";
groups = "ycbcr0123_d_1";
};
default_cfg {
pins = "GPIO6_Y18",
"GPIO7_AA20",
"GPIO8_W18",
"GPIO9_AA19";
input-enable;
bias-disable;
};
};
};
/* This sets up the PWM pins 14 and 15 */
pwm {
pwm_default_mode: pwm_default {
default_mux {
function = "pwmout";
groups = "pwmout1_d_1", "pwmout2_d_1";
};
default_cfg {
pins = "GPIO14_F14",
"GPIO15_B17";
input-enable;
bias-pull-down;
};
};
};
/* This sets up audio interface 1 */
adi1 {
adi1_default_mode: adi1_default {
default_mux {
function = "adi1";
groups = "adi1_d_1";
};
default_cfg {
pins = "GPIO17_P5",
"GPIO18_R5",
"GPIO19_U5",
"GPIO20_T5";
input-enable;
bias-pull-down;
};
};
};
/* This sets up the USB UICC pins */
usbuicc {
usbuicc_default_mode: usbuicc_default {
default_mux {
function = "usbuicc";
groups = "usbuicc_d_1";
};
default_cfg {
pins = "GPIO21_H19",
"GPIO22_G20",
"GPIO23_G19";
input-enable;
bias-pull-down;
};
};
};
/* This sets up the microphone pins */
dmic {
dmic_default_mode: dmic_default {
default_mux {
function = "dmic";
groups = "dmic12_d_1",
"dmic34_d_1",
"dmic56_d_1";
};
default_cfg {
pins = "GPIO27_J6",
"GPIO28_K6",
"GPIO29_G6",
"GPIO30_H6",
"GPIO31_F5",
"GPIO32_G5";
input-enable;
bias-pull-down;
};
};
};
extcpena {
extcpena_default_mode: extcpena_default {
default_mux {
function = "extcpena";
groups = "extcpena_d_1";
};
default_cfg {
pins = "GPIO34_R17";
input-enable;
bias-pull-down;
};
};
};
/* Modem I2C setup (SCL and SDA pins) */
modsclsda {
modsclsda_default_mode: modsclsda_default {
default_mux {
function = "modsclsda";
groups = "modsclsda_d_1";
};
default_cfg {
pins = "GPIO40_T19",
"GPIO41_U19";
input-enable;
bias-pull-down;
};
};
};
/*
* Clock output pins associated with regulators.
*/
sysclkreq2 {
sysclkreq2_default_mode: sysclkreq2_default {
default_mux {
function = "sysclkreq";
groups = "sysclkreq2_d_1";
};
default_cfg {
pins = "GPIO1_T10";
input-enable;
bias-disable;
};
};
sysclkreq2_sleep_mode: sysclkreq2_sleep {
default_mux {
function = "gpio";
groups = "gpio1_a_1";
};
default_cfg {
pins = "GPIO1_T10";
input-enable;
bias-pull-down;
};
};
};
sysclkreq4 {
sysclkreq4_default_mode: sysclkreq4_default {
default_mux {
function = "sysclkreq";
groups = "sysclkreq4_d_1";
};
default_cfg {
pins = "GPIO3_U9";
input-enable;
bias-disable;
};
};
sysclkreq4_sleep_mode: sysclkreq4_sleep {
default_mux {
function = "gpio";
groups = "gpio3_a_1";
};
default_cfg {
pins = "GPIO3_U9";
input-enable;
bias-pull-down;
};
};
};
};
/*
* Charging is not working on the HREF unless an actual battery is
* mounted, most HREFs have a DC cable in to the "battery power"
* which means this will only be cofusing. So do not enable charging
* of the HREFs.
*/
ab8500_fg {
status = "disabled";
};
ab8500_btemp {
status = "disabled";
};
ab8500_charger {
status = "disabled";
};
ab8500_chargalg {
status = "disabled";
};
};
};
};
};

View File

@ -242,61 +242,6 @@
status = "okay";
};
prcmu@80157000 {
ab8500 {
gpio {
};
phy {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&usb_a_1_default>;
pinctrl-1 = <&usb_a_1_sleep>;
};
regulator {
ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
regulator-name = "V-DISPLAY";
};
ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
regulator-name = "V-eMMC1";
};
ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
regulator-name = "V-MMC-SD";
};
ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
regulator-name = "V-INTCORE";
};
ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
regulator-name = "V-TVOUT";
};
ab8500_ldo_audio_reg: ab8500_ldo_audio {
regulator-name = "V-AUD";
};
ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
regulator-name = "V-AMIC1";
};
ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
regulator-name = "V-AMIC2";
};
ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
regulator-name = "V-DMIC";
};
ab8500_ldo_ana_reg: ab8500_ldo_ana {
regulator-name = "V-CSI/DSI";
};
};
};
};
pinctrl {
sdi0 {
sdi0_default_mode: sdi0_default {

View File

@ -5,6 +5,7 @@
/dts-v1/;
#include "ste-db8520.dtsi"
#include "ste-href-ab8505.dtsi"
#include "ste-hrefv60plus.dtsi"
#include "ste-href-tvk1281618-r3.dtsi"

View File

@ -5,6 +5,7 @@
/dts-v1/;
#include "ste-db8500.dtsi"
#include "ste-href-ab8500.dtsi"
#include "ste-hrefprev60.dtsi"
#include "ste-href-stuib.dtsi"

View File

@ -5,6 +5,7 @@
/dts-v1/;
#include "ste-db8500.dtsi"
#include "ste-href-ab8500.dtsi"
#include "ste-hrefprev60.dtsi"
#include "ste-href-tvk1281618-r2.dtsi"

View File

@ -7,6 +7,7 @@
/dts-v1/;
#include "ste-db8500.dtsi"
#include "ste-href-ab8500.dtsi"
#include "ste-hrefv60plus.dtsi"
#include "ste-href-stuib.dtsi"

View File

@ -7,6 +7,7 @@
/dts-v1/;
#include "ste-db8500.dtsi"
#include "ste-href-ab8500.dtsi"
#include "ste-hrefv60plus.dtsi"
#include "ste-href-tvk1281618-r2.dtsi"

View File

@ -3,7 +3,6 @@
* Copyright 2012 ST-Ericsson AB
*/
#include "ste-href-ab8500.dtsi"
#include "ste-href.dtsi"
/ {