summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikhil Devshatwar2020-01-20 12:51:16 -0600
committerLokesh Vutla2020-01-21 23:47:05 -0600
commitd671e2b0c7464dc8734de85aedc4bad3139fc439 (patch)
treec79df84863fdb23bff5b75a6278d3ccc03b15192
parent66edc2638bb79d4c931eb435e4e733b709d4efd9 (diff)
downloadk3-image-gen-d671e2b0c7464dc8734de85aedc4bad3139fc439.tar.gz
k3-image-gen-d671e2b0c7464dc8734de85aedc4bad3139fc439.tar.xz
k3-image-gen-d671e2b0c7464dc8734de85aedc4bad3139fc439.zip
HACK: soc: j721e: Do not cross max limit for RM entries
Maximum number of entries supported in RM board config is currently limited to 276 (2 * RESASG_UTYPE_CNT) Any board config with more entries than this count will be rejected and causes boot failure. This needs to be fixed by increasing the max limit in SYSFW. In the absence of this bugfix, restrict the number of entries by folding all of R5, C6x, C7x host_id entries into single entry. Signed-off-by: Nikhil Devshatwar <nikhil.nd@ti.com>
-rw-r--r--soc/j721e/evm/rm-cfg.c255
-rw-r--r--soc/j721e/evm/sysfw_img_cfg.h2
2 files changed, 6 insertions, 251 deletions
diff --git a/soc/j721e/evm/rm-cfg.c b/soc/j721e/evm/rm-cfg.c
index af1fa9653..82bfe0606 100644
--- a/soc/j721e/evm/rm-cfg.c
+++ b/soc/j721e/evm/rm-cfg.c
@@ -956,70 +956,7 @@ const struct boardcfg_rm_local j721e_boardcfg_rm_data = {
956 }, 956 },
957 { 957 {
958 .start_resource = 5, 958 .start_resource = 5,
959 .num_resource = 1, 959 .num_resource = 27,
960 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
961 RESASG_SUBTYPE_RA_MONITORS),
962 .host_id = HOST_ID_MCU_0_R5_0,
963 },
964 {
965 .start_resource = 6,
966 .num_resource = 1,
967 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
968 RESASG_SUBTYPE_RA_MONITORS),
969 .host_id = HOST_ID_MCU_0_R5_2,
970 },
971 {
972 .start_resource = 7,
973 .num_resource = 3,
974 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
975 RESASG_SUBTYPE_RA_MONITORS),
976 .host_id = HOST_ID_MAIN_1_R5_0,
977 },
978 {
979 .start_resource = 10,
980 .num_resource = 3,
981 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
982 RESASG_SUBTYPE_RA_MONITORS),
983 .host_id = HOST_ID_MAIN_1_R5_2,
984 },
985 {
986 .start_resource = 13,
987 .num_resource = 3,
988 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
989 RESASG_SUBTYPE_RA_MONITORS),
990 .host_id = HOST_ID_C7X_1,
991 },
992 {
993 .start_resource = 16,
994 .num_resource = 3,
995 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
996 RESASG_SUBTYPE_RA_MONITORS),
997 .host_id = HOST_ID_C6X_0_1,
998 },
999 {
1000 .start_resource = 19,
1001 .num_resource = 3,
1002 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
1003 RESASG_SUBTYPE_RA_MONITORS),
1004 .host_id = HOST_ID_C6X_1_1,
1005 },
1006 {
1007 .start_resource = 22,
1008 .num_resource = 6,
1009 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
1010 RESASG_SUBTYPE_RA_MONITORS),
1011 .host_id = HOST_ID_MAIN_0_R5_0,
1012 },
1013 {
1014 .start_resource = 28,
1015 .num_resource = 3,
1016 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
1017 RESASG_SUBTYPE_RA_MONITORS),
1018 .host_id = HOST_ID_MAIN_0_R5_2,
1019 },
1020 {
1021 .start_resource = 31,
1022 .num_resource = 1,
1023 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0, 960 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_RINGACC_0,
1024 RESASG_SUBTYPE_RA_MONITORS), 961 RESASG_SUBTYPE_RA_MONITORS),
1025 .host_id = HOST_ID_ALL, 962 .host_id = HOST_ID_ALL,
@@ -1042,70 +979,7 @@ const struct boardcfg_rm_local j721e_boardcfg_rm_data = {
1042 }, 979 },
1043 { 980 {
1044 .start_resource = 8, 981 .start_resource = 8,
1045 .num_resource = 4, 982 .num_resource = 56,
1046 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1047 RESASG_SUBTYPE_PROXY_PROXIES),
1048 .host_id = HOST_ID_MCU_0_R5_0,
1049 },
1050 {
1051 .start_resource = 12,
1052 .num_resource = 4,
1053 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1054 RESASG_SUBTYPE_PROXY_PROXIES),
1055 .host_id = HOST_ID_MCU_0_R5_2,
1056 },
1057 {
1058 .start_resource = 16,
1059 .num_resource = 4,
1060 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1061 RESASG_SUBTYPE_PROXY_PROXIES),
1062 .host_id = HOST_ID_MAIN_1_R5_0,
1063 },
1064 {
1065 .start_resource = 20,
1066 .num_resource = 4,
1067 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1068 RESASG_SUBTYPE_PROXY_PROXIES),
1069 .host_id = HOST_ID_MAIN_1_R5_2,
1070 },
1071 {
1072 .start_resource = 24,
1073 .num_resource = 4,
1074 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1075 RESASG_SUBTYPE_PROXY_PROXIES),
1076 .host_id = HOST_ID_C7X_1,
1077 },
1078 {
1079 .start_resource = 28,
1080 .num_resource = 4,
1081 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1082 RESASG_SUBTYPE_PROXY_PROXIES),
1083 .host_id = HOST_ID_C6X_0_1,
1084 },
1085 {
1086 .start_resource = 32,
1087 .num_resource = 4,
1088 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1089 RESASG_SUBTYPE_PROXY_PROXIES),
1090 .host_id = HOST_ID_C6X_1_1,
1091 },
1092 {
1093 .start_resource = 36,
1094 .num_resource = 8,
1095 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1096 RESASG_SUBTYPE_PROXY_PROXIES),
1097 .host_id = HOST_ID_MAIN_0_R5_0,
1098 },
1099 {
1100 .start_resource = 44,
1101 .num_resource = 8,
1102 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1103 RESASG_SUBTYPE_PROXY_PROXIES),
1104 .host_id = HOST_ID_MAIN_0_R5_2,
1105 },
1106 {
1107 .start_resource = 52,
1108 .num_resource = 12,
1109 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0, 983 .type = RESASG_UTYPE (J721E_DEV_NAVSS0_PROXY_0,
1110 RESASG_SUBTYPE_PROXY_PROXIES), 984 RESASG_SUBTYPE_PROXY_PROXIES),
1111 .host_id = HOST_ID_ALL, 985 .host_id = HOST_ID_ALL,
@@ -1810,66 +1684,10 @@ const struct boardcfg_rm_local j721e_boardcfg_rm_data = {
1810 }, 1684 },
1811 { 1685 {
1812 .start_resource = 5, 1686 .start_resource = 5,
1813 .num_resource = 3, 1687 .num_resource = 27,
1814 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0, 1688 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1815 RESASG_SUBTYPE_RA_MONITORS), 1689 RESASG_SUBTYPE_RA_MONITORS),
1816 .host_id = HOST_ID_MCU_0_R5_0, 1690 .host_id = HOST_ID_ALL,
1817 },
1818 {
1819 .start_resource = 8,
1820 .num_resource = 3,
1821 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1822 RESASG_SUBTYPE_RA_MONITORS),
1823 .host_id = HOST_ID_MCU_0_R5_2,
1824 },
1825 {
1826 .start_resource = 11,
1827 .num_resource = 3,
1828 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1829 RESASG_SUBTYPE_RA_MONITORS),
1830 .host_id = HOST_ID_MAIN_1_R5_0,
1831 },
1832 {
1833 .start_resource = 14,
1834 .num_resource = 3,
1835 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1836 RESASG_SUBTYPE_RA_MONITORS),
1837 .host_id = HOST_ID_MAIN_1_R5_2,
1838 },
1839 {
1840 .start_resource = 17,
1841 .num_resource = 3,
1842 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1843 RESASG_SUBTYPE_RA_MONITORS),
1844 .host_id = HOST_ID_C7X_1,
1845 },
1846 {
1847 .start_resource = 20,
1848 .num_resource = 3,
1849 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1850 RESASG_SUBTYPE_RA_MONITORS),
1851 .host_id = HOST_ID_C6X_0_1,
1852 },
1853 {
1854 .start_resource = 23,
1855 .num_resource = 3,
1856 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1857 RESASG_SUBTYPE_RA_MONITORS),
1858 .host_id = HOST_ID_C6X_1_1,
1859 },
1860 {
1861 .start_resource = 26,
1862 .num_resource = 3,
1863 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1864 RESASG_SUBTYPE_RA_MONITORS),
1865 .host_id = HOST_ID_MAIN_0_R5_0,
1866 },
1867 {
1868 .start_resource = 29,
1869 .num_resource = 3,
1870 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_RINGACC_0,
1871 RESASG_SUBTYPE_RA_MONITORS),
1872 .host_id = HOST_ID_MAIN_0_R5_2,
1873 }, 1691 },
1874 1692
1875 /* MCU Nav nonsecure proxies */ 1693 /* MCU Nav nonsecure proxies */
@@ -1889,70 +1707,7 @@ const struct boardcfg_rm_local j721e_boardcfg_rm_data = {
1889 }, 1707 },
1890 { 1708 {
1891 .start_resource = 9, 1709 .start_resource = 9,
1892 .num_resource = 4, 1710 .num_resource = 55,
1893 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1894 RESASG_SUBTYPE_PROXY_PROXIES),
1895 .host_id = HOST_ID_MCU_0_R5_0,
1896 },
1897 {
1898 .start_resource = 13,
1899 .num_resource = 4,
1900 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1901 RESASG_SUBTYPE_PROXY_PROXIES),
1902 .host_id = HOST_ID_MCU_0_R5_2,
1903 },
1904 {
1905 .start_resource = 17,
1906 .num_resource = 4,
1907 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1908 RESASG_SUBTYPE_PROXY_PROXIES),
1909 .host_id = HOST_ID_MAIN_1_R5_0,
1910 },
1911 {
1912 .start_resource = 21,
1913 .num_resource = 4,
1914 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1915 RESASG_SUBTYPE_PROXY_PROXIES),
1916 .host_id = HOST_ID_MAIN_1_R5_2,
1917 },
1918 {
1919 .start_resource = 25,
1920 .num_resource = 4,
1921 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1922 RESASG_SUBTYPE_PROXY_PROXIES),
1923 .host_id = HOST_ID_C7X_1,
1924 },
1925 {
1926 .start_resource = 29,
1927 .num_resource = 4,
1928 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1929 RESASG_SUBTYPE_PROXY_PROXIES),
1930 .host_id = HOST_ID_C6X_0_1,
1931 },
1932 {
1933 .start_resource = 33,
1934 .num_resource = 4,
1935 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1936 RESASG_SUBTYPE_PROXY_PROXIES),
1937 .host_id = HOST_ID_C6X_1_1,
1938 },
1939 {
1940 .start_resource = 37,
1941 .num_resource = 4,
1942 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1943 RESASG_SUBTYPE_PROXY_PROXIES),
1944 .host_id = HOST_ID_MAIN_0_R5_0,
1945 },
1946 {
1947 .start_resource = 41,
1948 .num_resource = 16,
1949 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1950 RESASG_SUBTYPE_PROXY_PROXIES),
1951 .host_id = HOST_ID_MAIN_0_R5_2,
1952 },
1953 {
1954 .start_resource = 57,
1955 .num_resource = 7,
1956 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0, 1711 .type = RESASG_UTYPE (J721E_DEV_MCU_NAVSS0_PROXY_0,
1957 RESASG_SUBTYPE_PROXY_PROXIES), 1712 RESASG_SUBTYPE_PROXY_PROXIES),
1958 .host_id = HOST_ID_ALL, 1713 .host_id = HOST_ID_ALL,
diff --git a/soc/j721e/evm/sysfw_img_cfg.h b/soc/j721e/evm/sysfw_img_cfg.h
index 8e149ddb9..35f24ca8a 100644
--- a/soc/j721e/evm/sysfw_img_cfg.h
+++ b/soc/j721e/evm/sysfw_img_cfg.h
@@ -35,6 +35,6 @@
35#ifndef SYSFW_IMG_CFG_H 35#ifndef SYSFW_IMG_CFG_H
36#define SYSFW_IMG_CFG_H 36#define SYSFW_IMG_CFG_H
37 37
38#define BOARDCFG_RM_RESASG_ENTRIES 305 38#define BOARDCFG_RM_RESASG_ENTRIES 270
39 39
40#endif /* SYSFW_IMG_CFG_H */ 40#endif /* SYSFW_IMG_CFG_H */