OLD | NEW |
1 /* Simulator for Analog Devices Blackfin processors. | 1 /* Simulator for Analog Devices Blackfin processors. |
2 | 2 |
3 Copyright (C) 2005-2012 Free Software Foundation, Inc. | 3 Copyright (C) 2005-2012 Free Software Foundation, Inc. |
4 Contributed by Analog Devices, Inc. | 4 Contributed by Analog Devices, Inc. and Mike Frysinger. |
5 | 5 |
6 This file is part of simulators. | 6 This file is part of simulators. |
7 | 7 |
8 This program is free software; you can redistribute it and/or modify | 8 This program is free software; you can redistribute it and/or modify |
9 it under the terms of the GNU General Public License as published by | 9 it under the terms of the GNU General Public License as published by |
10 the Free Software Foundation; either version 3 of the License, or | 10 the Free Software Foundation; either version 3 of the License, or |
11 (at your option) any later version. | 11 (at your option) any later version. |
12 | 12 |
13 This program is distributed in the hope that it will be useful, | 13 This program is distributed in the hope that it will be useful, |
14 but WITHOUT ANY WARRANTY; without even the implied warranty of | 14 but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 863 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
878 #define bf54x_chipid 0x27de | 878 #define bf54x_chipid 0x27de |
879 #define bf542_chipid bf54x_chipid | 879 #define bf542_chipid bf54x_chipid |
880 #define bf544_chipid bf54x_chipid | 880 #define bf544_chipid bf54x_chipid |
881 #define bf547_chipid bf54x_chipid | 881 #define bf547_chipid bf54x_chipid |
882 #define bf548_chipid bf54x_chipid | 882 #define bf548_chipid bf54x_chipid |
883 #define bf549_chipid bf54x_chipid | 883 #define bf549_chipid bf54x_chipid |
884 static const struct bfin_memory_layout bf54x_mem[] = | 884 static const struct bfin_memory_layout bf54x_mem[] = |
885 { | 885 { |
886 LAYOUT (0xFFC00800, 0x60, read_write), /* SPORT0 stub XXX: not on BF542
/4 */ | 886 LAYOUT (0xFFC00800, 0x60, read_write), /* SPORT0 stub XXX: not on BF542
/4 */ |
887 LAYOUT (0xFFC00900, 0x60, read_write), /* SPORT1 stub */ | 887 LAYOUT (0xFFC00900, 0x60, read_write), /* SPORT1 stub */ |
888 LAYOUT (0xFFC01400, 0x200, read_write), /* PORT/GPIO stub */ | |
889 LAYOUT (0xFFC02500, 0x60, read_write), /* SPORT2 stub */ | 888 LAYOUT (0xFFC02500, 0x60, read_write), /* SPORT2 stub */ |
890 LAYOUT (0xFFC02600, 0x60, read_write), /* SPORT3 stub */ | 889 LAYOUT (0xFFC02600, 0x60, read_write), /* SPORT3 stub */ |
891 LAYOUT (0xFFC03800, 0x70, read_write), /* ATAPI stub */ | 890 LAYOUT (0xFFC03800, 0x70, read_write), /* ATAPI stub */ |
892 LAYOUT (0xFFC03900, 0x100, read_write), /* RSI stub */ | 891 LAYOUT (0xFFC03900, 0x100, read_write), /* RSI stub */ |
893 LAYOUT (0xFFC03C00, 0x500, read_write), /* MUSB stub */ | 892 LAYOUT (0xFFC03C00, 0x500, read_write), /* MUSB stub */ |
894 LAYOUT (0xFEB00000, 0x20000, read_write_exec), /* L2 */ | 893 LAYOUT (0xFEB00000, 0x20000, read_write_exec), /* L2 */ |
895 LAYOUT (0xFF800000, 0x4000, read_write), /* Data A */ | 894 LAYOUT (0xFF800000, 0x4000, read_write), /* Data A */ |
896 LAYOUT (0xFF804000, 0x4000, read_write), /* Data A Cache */ | 895 LAYOUT (0xFF804000, 0x4000, read_write), /* Data A Cache */ |
897 LAYOUT (0xFF900000, 0x4000, read_write), /* Data B */ | 896 LAYOUT (0xFF900000, 0x4000, read_write), /* Data B */ |
898 LAYOUT (0xFF904000, 0x4000, read_write), /* Data B Cache */ | 897 LAYOUT (0xFF904000, 0x4000, read_write), /* Data B Cache */ |
899 LAYOUT (0xFFA00000, 0x8000, read_write_exec), /* Inst A [1] */ | 898 LAYOUT (0xFFA00000, 0x8000, read_write_exec), /* Inst A [1] */ |
900 LAYOUT (0xFFA08000, 0x4000, read_write_exec), /* Inst B [1] */ | 899 LAYOUT (0xFFA08000, 0x4000, read_write_exec), /* Inst B [1] */ |
901 LAYOUT (0xFFA10000, 0x4000, read_write_exec), /* Inst Cache [1] */ | 900 LAYOUT (0xFFA10000, 0x4000, read_write_exec), /* Inst Cache [1] */ |
902 }; | 901 }; |
903 #define bf542_mem bf54x_mem | 902 #define bf542_mem bf54x_mem |
904 #define bf544_mem bf54x_mem | 903 #define bf544_mem bf54x_mem |
905 #define bf547_mem bf54x_mem | 904 #define bf547_mem bf54x_mem |
906 #define bf548_mem bf54x_mem | 905 #define bf548_mem bf54x_mem |
907 #define bf549_mem bf54x_mem | 906 #define bf549_mem bf54x_mem |
908 static const struct bfin_dev_layout bf542_dev[] = | 907 static const struct bfin_dev_layout bf542_dev[] = |
909 { | 908 { |
910 DEVICE (0xFFC00200, BFIN_MMR_WDOG_SIZE, "bfin_wdog@0"), | 909 DEVICE (0xFFC00200, BFIN_MMR_WDOG_SIZE, "bfin_wdog@0"), |
911 DEVICE (0xFFC00300, BFIN_MMR_RTC_SIZE, "bfin_rtc"), | 910 DEVICE (0xFFC00300, BFIN_MMR_RTC_SIZE, "bfin_rtc"), |
912 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), | 911 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), |
913 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), | 912 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), |
914 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), | 913 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), |
915 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), | 914 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), |
916 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), | 915 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), |
917 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), | 916 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), |
| 917 DEVICE (0xFFC01400, BFIN_MMR_PINT_SIZE, "bfin_pint@0"), |
| 918 DEVICE (0xFFC01430, BFIN_MMR_PINT_SIZE, "bfin_pint@1"), |
| 919 _DEVICE (0xFFC01460, BFIN_MMR_PINT_SIZE, "bfin_pint@2", 2), |
| 920 _DEVICE (0xFFC01490, BFIN_MMR_PINT_SIZE, "bfin_pint@3", 2), |
| 921 DEVICE (0xFFC014C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@0"), |
| 922 DEVICE (0xFFC014E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@1"), |
| 923 DEVICE (0xFFC01500, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@2"), |
| 924 DEVICE (0xFFC01520, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@3"), |
| 925 DEVICE (0xFFC01540, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@4"), |
| 926 DEVICE (0xFFC01560, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@5"), |
| 927 DEVICE (0xFFC01580, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@6"), |
| 928 DEVICE (0xFFC015A0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@7"), |
| 929 DEVICE (0xFFC015C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@8"), |
| 930 DEVICE (0xFFC015E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@9"), |
918 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), | 931 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), |
919 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), | 932 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), |
920 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), | 933 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), |
921 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), | 934 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), |
922 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), | 935 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), |
923 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), | 936 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), |
924 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), | 937 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), |
925 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), | 938 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), |
926 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), | 939 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), |
927 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), | 940 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), |
(...skipping 10 matching lines...) Expand all Loading... |
938 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), | 951 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), |
939 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), | 952 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), |
940 DEVICE (0xFFC00600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@8"), | 953 DEVICE (0xFFC00600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@8"), |
941 DEVICE (0xFFC00610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@9"), | 954 DEVICE (0xFFC00610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@9"), |
942 DEVICE (0xFFC00620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@10"), | 955 DEVICE (0xFFC00620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@10"), |
943 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), | 956 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), |
944 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), | 957 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), |
945 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), | 958 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), |
946 _DEVICE (0xFFC01000, BFIN_MMR_EPPI_SIZE, "bfin_eppi@0", 1), | 959 _DEVICE (0xFFC01000, BFIN_MMR_EPPI_SIZE, "bfin_eppi@0", 1), |
947 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), | 960 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), |
| 961 DEVICE (0xFFC01400, BFIN_MMR_PINT_SIZE, "bfin_pint@0"), |
| 962 DEVICE (0xFFC01430, BFIN_MMR_PINT_SIZE, "bfin_pint@1"), |
| 963 _DEVICE (0xFFC01460, BFIN_MMR_PINT_SIZE, "bfin_pint@2", 2), |
| 964 _DEVICE (0xFFC01490, BFIN_MMR_PINT_SIZE, "bfin_pint@3", 2), |
| 965 DEVICE (0xFFC014C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@0"), |
| 966 DEVICE (0xFFC014E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@1"), |
| 967 DEVICE (0xFFC01500, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@2"), |
| 968 DEVICE (0xFFC01520, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@3"), |
| 969 DEVICE (0xFFC01540, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@4"), |
| 970 DEVICE (0xFFC01560, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@5"), |
| 971 DEVICE (0xFFC01580, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@6"), |
| 972 DEVICE (0xFFC015A0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@7"), |
| 973 DEVICE (0xFFC015C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@8"), |
| 974 DEVICE (0xFFC015E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@9"), |
948 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), | 975 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), |
949 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), | 976 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), |
950 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), | 977 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), |
951 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), | 978 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), |
952 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), | 979 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), |
953 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), | 980 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), |
954 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), | 981 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), |
955 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), | 982 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), |
956 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), | 983 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), |
957 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), | 984 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), |
(...skipping 11 matching lines...) Expand all Loading... |
969 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), | 996 DEVICE (0xFFC00400, BFIN_MMR_UART2_SIZE, "bfin_uart2@0"), |
970 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), | 997 DEVICE (0xFFC00500, BFIN_MMR_SPI_SIZE, "bfin_spi@0"), |
971 DEVICE (0xFFC00600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@8"), | 998 DEVICE (0xFFC00600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@8"), |
972 DEVICE (0xFFC00610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@9"), | 999 DEVICE (0xFFC00610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@9"), |
973 DEVICE (0xFFC00620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@10"), | 1000 DEVICE (0xFFC00620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@10"), |
974 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), | 1001 DEVICE (0xFFC00700, BFIN_MMR_TWI_SIZE, "bfin_twi@0"), |
975 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), | 1002 DEVICE (0xFFC00A00, BF54X_MMR_EBIU_AMC_SIZE, "bfin_ebiu_amc"), |
976 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), | 1003 DEVICE (0xFFC00A20, BFIN_MMR_EBIU_DDRC_SIZE, "bfin_ebiu_ddrc"), |
977 _DEVICE (0xFFC01000, BFIN_MMR_EPPI_SIZE, "bfin_eppi@0", 1), | 1004 _DEVICE (0xFFC01000, BFIN_MMR_EPPI_SIZE, "bfin_eppi@0", 1), |
978 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), | 1005 _DEVICE (0xFFC01300, BFIN_MMR_EPPI_SIZE, "bfin_eppi@1", 1), |
| 1006 DEVICE (0xFFC01400, BFIN_MMR_PINT_SIZE, "bfin_pint@0"), |
| 1007 DEVICE (0xFFC01430, BFIN_MMR_PINT_SIZE, "bfin_pint@1"), |
| 1008 _DEVICE (0xFFC01460, BFIN_MMR_PINT_SIZE, "bfin_pint@2", 2), |
| 1009 _DEVICE (0xFFC01490, BFIN_MMR_PINT_SIZE, "bfin_pint@3", 2), |
| 1010 DEVICE (0xFFC014C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@0"), |
| 1011 DEVICE (0xFFC014E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@1"), |
| 1012 DEVICE (0xFFC01500, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@2"), |
| 1013 DEVICE (0xFFC01520, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@3"), |
| 1014 DEVICE (0xFFC01540, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@4"), |
| 1015 DEVICE (0xFFC01560, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@5"), |
| 1016 DEVICE (0xFFC01580, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@6"), |
| 1017 DEVICE (0xFFC015A0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@7"), |
| 1018 DEVICE (0xFFC015C0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@8"), |
| 1019 DEVICE (0xFFC015E0, BFIN_MMR_GPIO2_SIZE, "bfin_gpio2@9"), |
979 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), | 1020 DEVICE (0xFFC01600, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@0"), |
980 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), | 1021 DEVICE (0xFFC01610, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@1"), |
981 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), | 1022 DEVICE (0xFFC01620, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@2"), |
982 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), | 1023 DEVICE (0xFFC01630, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@3"), |
983 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), | 1024 DEVICE (0xFFC01640, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@4"), |
984 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), | 1025 DEVICE (0xFFC01650, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@5"), |
985 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), | 1026 DEVICE (0xFFC01660, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@6"), |
986 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), | 1027 DEVICE (0xFFC01670, BFIN_MMR_GPTIMER_SIZE, "bfin_gptimer@7"), |
987 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), | 1028 DEVICE (0xFFC02000, BFIN_MMR_UART2_SIZE, "bfin_uart2@1"), |
988 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), | 1029 _DEVICE (0xFFC02100, BFIN_MMR_UART2_SIZE, "bfin_uart2@2", 1), |
989 DEVICE (0xFFC02200, BFIN_MMR_TWI_SIZE, "bfin_twi@1"), | 1030 DEVICE (0xFFC02200, BFIN_MMR_TWI_SIZE, "bfin_twi@1"), |
990 DEVICE (0xFFC02300, BFIN_MMR_SPI_SIZE, "bfin_spi@1"), | 1031 DEVICE (0xFFC02300, BFIN_MMR_SPI_SIZE, "bfin_spi@1"), |
991 _DEVICE (0xFFC02400, BFIN_MMR_SPI_SIZE, "bfin_spi@2", 1), | 1032 _DEVICE (0xFFC02400, BFIN_MMR_SPI_SIZE, "bfin_spi@2", 1), |
992 _DEVICE (0xFFC02900, BFIN_MMR_EPPI_SIZE, "bfin_eppi@2", 1), | 1033 _DEVICE (0xFFC02900, BFIN_MMR_EPPI_SIZE, "bfin_eppi@2", 1), |
993 _DEVICE (0xFFC03100, BFIN_MMR_UART2_SIZE, "bfin_uart2@3", 1), | 1034 _DEVICE (0xFFC03100, BFIN_MMR_UART2_SIZE, "bfin_uart2@3", 1), |
994 DEVICE (0xFFC03B00, BFIN_MMR_NFC_SIZE, "bfin_nfc"), | 1035 DEVICE (0xFFC03B00, BFIN_MMR_NFC_SIZE, "bfin_nfc"), |
995 }; | 1036 }; |
996 #define bf548_dev bf547_dev | 1037 #define bf548_dev bf547_dev |
997 #define bf549_dev bf547_dev | 1038 #define bf549_dev bf547_dev |
998 static const struct bfin_dmac_layout bf54x_dmac[] = | 1039 static const struct bfin_dmac_layout bf54x_dmac[] = |
999 { | 1040 { |
1000 { BFIN_MMR_DMAC0_BASE, 12, }, | 1041 { BFIN_MMR_DMAC0_BASE, 12, }, |
1001 { BFIN_MMR_DMAC1_BASE, 12, }, | 1042 { BFIN_MMR_DMAC1_BASE, 12, }, |
1002 }; | 1043 }; |
1003 #define bf542_dmac bf54x_dmac | 1044 #define bf542_dmac bf54x_dmac |
1004 #define bf544_dmac bf54x_dmac | 1045 #define bf544_dmac bf54x_dmac |
1005 #define bf547_dmac bf54x_dmac | 1046 #define bf547_dmac bf54x_dmac |
1006 #define bf548_dmac bf54x_dmac | 1047 #define bf548_dmac bf54x_dmac |
1007 #define bf549_dmac bf54x_dmac | 1048 #define bf549_dmac bf54x_dmac |
| 1049 #define PINT_PIQS(p, b, g) \ |
| 1050 PORT (p, "piq0@"#b, g, "p0"), \ |
| 1051 PORT (p, "piq1@"#b, g, "p1"), \ |
| 1052 PORT (p, "piq2@"#b, g, "p2"), \ |
| 1053 PORT (p, "piq3@"#b, g, "p3"), \ |
| 1054 PORT (p, "piq4@"#b, g, "p4"), \ |
| 1055 PORT (p, "piq5@"#b, g, "p5"), \ |
| 1056 PORT (p, "piq6@"#b, g, "p6"), \ |
| 1057 PORT (p, "piq7@"#b, g, "p7"), \ |
| 1058 PORT (p, "piq8@"#b, g, "p8"), \ |
| 1059 PORT (p, "piq9@"#b, g, "p9"), \ |
| 1060 PORT (p, "piq10@"#b, g, "p10"), \ |
| 1061 PORT (p, "piq11@"#b, g, "p11"), \ |
| 1062 PORT (p, "piq12@"#b, g, "p12"), \ |
| 1063 PORT (p, "piq13@"#b, g, "p13"), \ |
| 1064 PORT (p, "piq14@"#b, g, "p14"), \ |
| 1065 PORT (p, "piq15@"#b, g, "p15") |
1008 static const struct bfin_port_layout bf54x_port[] = | 1066 static const struct bfin_port_layout bf54x_port[] = |
1009 { | 1067 { |
1010 SIC (0, 0, "bfin_pll", "pll"), | 1068 SIC (0, 0, "bfin_pll", "pll"), |
1011 SIC (0, 1, "bfin_dmac@0", "stat"), | 1069 SIC (0, 1, "bfin_dmac@0", "stat"), |
1012 SIC (0, 2, "bfin_eppi@0", "stat"), | 1070 SIC (0, 2, "bfin_eppi@0", "stat"), |
1013 SIC (0, 3, "bfin_sport@0", "stat"), | 1071 SIC (0, 3, "bfin_sport@0", "stat"), |
1014 SIC (0, 4, "bfin_sport@1", "stat"), | 1072 SIC (0, 4, "bfin_sport@1", "stat"), |
1015 SIC (0, 5, "bfin_spi@0", "stat"), | 1073 SIC (0, 5, "bfin_spi@0", "stat"), |
1016 SIC (0, 6, "bfin_uart2@0", "stat"), | 1074 SIC (0, 6, "bfin_uart2@0", "stat"), |
1017 SIC (0, 7, "bfin_rtc", "rtc"), | 1075 SIC (0, 7, "bfin_rtc", "rtc"), |
1018 SIC (0, 8, "bfin_dma@12", "di"), | 1076 SIC (0, 8, "bfin_dma@12", "di"), |
1019 SIC (0, 9, "bfin_dma@0", "di"), | 1077 SIC (0, 9, "bfin_dma@0", "di"), |
1020 SIC (0, 10, "bfin_dma@1", "di"), | 1078 SIC (0, 10, "bfin_dma@1", "di"), |
1021 SIC (0, 11, "bfin_dma@2", "di"), | 1079 SIC (0, 11, "bfin_dma@2", "di"), |
1022 SIC (0, 12, "bfin_dma@3", "di"), | 1080 SIC (0, 12, "bfin_dma@3", "di"), |
1023 SIC (0, 13, "bfin_dma@4", "di"), | 1081 SIC (0, 13, "bfin_dma@4", "di"), |
1024 SIC (0, 14, "bfin_dma@6", "di"), | 1082 SIC (0, 14, "bfin_dma@6", "di"), |
1025 SIC (0, 15, "bfin_dma@7", "di"), | 1083 SIC (0, 15, "bfin_dma@7", "di"), |
1026 SIC (0, 16, "bfin_gptimer@8", "stat"), | 1084 SIC (0, 16, "bfin_gptimer@8", "stat"), |
1027 SIC (0, 17, "bfin_gptimer@9", "stat"), | 1085 SIC (0, 17, "bfin_gptimer@9", "stat"), |
1028 SIC (0, 18, "bfin_gptimer@10", "stat"), | 1086 SIC (0, 18, "bfin_gptimer@10", "stat"), |
1029 SIC (0, 19, "bfin_pint@0", "stat"), | 1087 SIC (0, 19, "bfin_pint@0", "stat"), |
| 1088 PINT_PIQS ("bfin_pint@0", 0, "bfin_gpio2@0"), |
| 1089 PINT_PIQS ("bfin_pint@0", 1, "bfin_gpio2@1"), |
1030 SIC (0, 20, "bfin_pint@1", "stat"), | 1090 SIC (0, 20, "bfin_pint@1", "stat"), |
| 1091 PINT_PIQS ("bfin_pint@1", 0, "bfin_gpio2@0"), |
| 1092 PINT_PIQS ("bfin_pint@1", 1, "bfin_gpio2@1"), |
1031 SIC (0, 21, "bfin_dma@256", "di"), /* mdma0 */ | 1093 SIC (0, 21, "bfin_dma@256", "di"), /* mdma0 */ |
1032 SIC (0, 21, "bfin_dma@257", "di"), /* mdma0 */ | 1094 SIC (0, 21, "bfin_dma@257", "di"), /* mdma0 */ |
1033 SIC (0, 22, "bfin_dma@258", "di"), /* mdma1 */ | 1095 SIC (0, 22, "bfin_dma@258", "di"), /* mdma1 */ |
1034 SIC (0, 22, "bfin_dma@259", "di"), /* mdma1 */ | 1096 SIC (0, 22, "bfin_dma@259", "di"), /* mdma1 */ |
1035 SIC (0, 23, "bfin_wdog@0", "gpi"), | 1097 SIC (0, 23, "bfin_wdog@0", "gpi"), |
1036 SIC (0, 24, "bfin_dmac@1", "stat"), | 1098 SIC (0, 24, "bfin_dmac@1", "stat"), |
1037 SIC (0, 25, "bfin_sport@2", "stat"), | 1099 SIC (0, 25, "bfin_sport@2", "stat"), |
1038 SIC (0, 26, "bfin_sport@3", "stat"), | 1100 SIC (0, 26, "bfin_sport@3", "stat"), |
1039 SIC (0, 27, "bfin_mxvr", "data"), | 1101 SIC (0, 27, "bfin_mxvr", "data"), |
1040 SIC (0, 28, "bfin_spi@1", "stat"), | 1102 SIC (0, 28, "bfin_spi@1", "stat"), |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1102 /*SIC (2, 21, reserved),*/ | 1164 /*SIC (2, 21, reserved),*/ |
1103 SIC (2, 22, "bfin_gptimer@0", "stat"), | 1165 SIC (2, 22, "bfin_gptimer@0", "stat"), |
1104 SIC (2, 23, "bfin_gptimer@1", "stat"), | 1166 SIC (2, 23, "bfin_gptimer@1", "stat"), |
1105 SIC (2, 24, "bfin_gptimer@2", "stat"), | 1167 SIC (2, 24, "bfin_gptimer@2", "stat"), |
1106 SIC (2, 25, "bfin_gptimer@3", "stat"), | 1168 SIC (2, 25, "bfin_gptimer@3", "stat"), |
1107 SIC (2, 26, "bfin_gptimer@4", "stat"), | 1169 SIC (2, 26, "bfin_gptimer@4", "stat"), |
1108 SIC (2, 27, "bfin_gptimer@5", "stat"), | 1170 SIC (2, 27, "bfin_gptimer@5", "stat"), |
1109 SIC (2, 28, "bfin_gptimer@6", "stat"), | 1171 SIC (2, 28, "bfin_gptimer@6", "stat"), |
1110 SIC (2, 29, "bfin_gptimer@7", "stat"), | 1172 SIC (2, 29, "bfin_gptimer@7", "stat"), |
1111 SIC (2, 30, "bfin_pint@2", "stat"), | 1173 SIC (2, 30, "bfin_pint@2", "stat"), |
| 1174 PINT_PIQS ("bfin_pint@2", 0, "bfin_gpio2@2"), |
| 1175 PINT_PIQS ("bfin_pint@2", 1, "bfin_gpio2@3"), |
| 1176 PINT_PIQS ("bfin_pint@2", 2, "bfin_gpio2@4"), |
| 1177 PINT_PIQS ("bfin_pint@2", 3, "bfin_gpio2@5"), |
| 1178 PINT_PIQS ("bfin_pint@2", 4, "bfin_gpio2@6"), |
| 1179 PINT_PIQS ("bfin_pint@2", 5, "bfin_gpio2@7"), |
| 1180 PINT_PIQS ("bfin_pint@2", 6, "bfin_gpio2@8"), |
| 1181 PINT_PIQS ("bfin_pint@2", 7, "bfin_gpio2@9"), |
1112 SIC (2, 31, "bfin_pint@3", "stat"), | 1182 SIC (2, 31, "bfin_pint@3", "stat"), |
| 1183 PINT_PIQS ("bfin_pint@3", 0, "bfin_gpio2@2"), |
| 1184 PINT_PIQS ("bfin_pint@3", 1, "bfin_gpio2@3"), |
| 1185 PINT_PIQS ("bfin_pint@3", 2, "bfin_gpio2@4"), |
| 1186 PINT_PIQS ("bfin_pint@3", 3, "bfin_gpio2@5"), |
| 1187 PINT_PIQS ("bfin_pint@3", 4, "bfin_gpio2@6"), |
| 1188 PINT_PIQS ("bfin_pint@3", 5, "bfin_gpio2@7"), |
| 1189 PINT_PIQS ("bfin_pint@3", 6, "bfin_gpio2@8"), |
| 1190 PINT_PIQS ("bfin_pint@3", 7, "bfin_gpio2@9"), |
1113 }; | 1191 }; |
1114 #define bf542_port bf54x_port | 1192 #define bf542_port bf54x_port |
1115 #define bf544_port bf54x_port | 1193 #define bf544_port bf54x_port |
1116 #define bf547_port bf54x_port | 1194 #define bf547_port bf54x_port |
1117 #define bf548_port bf54x_port | 1195 #define bf548_port bf54x_port |
1118 #define bf549_port bf54x_port | 1196 #define bf549_port bf54x_port |
1119 | 1197 |
1120 /* This is only Core A of course ... */ | 1198 /* This is only Core A of course ... */ |
1121 #define bf561_chipid 0x27bb | 1199 #define bf561_chipid 0x27bb |
1122 static const struct bfin_memory_layout bf561_mem[] = | 1200 static const struct bfin_memory_layout bf561_mem[] = |
(...skipping 411 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1534 BFROM (538, 5, 0x1000000), | 1612 BFROM (538, 5, 0x1000000), |
1535 BFROM (538, 4, 0x1000000), | 1613 BFROM (538, 4, 0x1000000), |
1536 BFROM (538, 3, 0x1000000), | 1614 BFROM (538, 3, 0x1000000), |
1537 BFROM (538, 2, 0x1000000), | 1615 BFROM (538, 2, 0x1000000), |
1538 BFROM (538, 1, 0x1000000), | 1616 BFROM (538, 1, 0x1000000), |
1539 BFROM (538, 0, 0x1000000), | 1617 BFROM (538, 0, 0x1000000), |
1540 BFROM_STUB, | 1618 BFROM_STUB, |
1541 }; | 1619 }; |
1542 static const struct bfrom bf54x_roms[] = | 1620 static const struct bfrom bf54x_roms[] = |
1543 { | 1621 { |
1544 BFROM (54x, 4, 0), | 1622 BFROM (54x, 4, 0x1000), |
1545 BFROM (54x, 2, 0), | 1623 BFROM (54x, 2, 0x1000), |
1546 BFROM (54x, 1, 0), | 1624 BFROM (54x, 1, 0x1000), |
1547 BFROM (54x, 0, 0), | 1625 BFROM (54x, 0, 0x1000), |
1548 BFROMA (0xffa14000, 54x_l1, 4, 0), | 1626 BFROMA (0xffa14000, 54x_l1, 4, 0x10000), |
1549 BFROMA (0xffa14000, 54x_l1, 2, 0), | 1627 BFROMA (0xffa14000, 54x_l1, 2, 0x10000), |
1550 BFROMA (0xffa14000, 54x_l1, 1, 0), | 1628 BFROMA (0xffa14000, 54x_l1, 1, 0x10000), |
1551 BFROMA (0xffa14000, 54x_l1, 0, 0), | 1629 BFROMA (0xffa14000, 54x_l1, 0, 0x10000), |
1552 BFROM_STUB, | 1630 BFROM_STUB, |
1553 }; | 1631 }; |
1554 static const struct bfrom bf561_roms[] = | 1632 static const struct bfrom bf561_roms[] = |
1555 { | 1633 { |
1556 /* XXX: No idea what the actual wrap limit is here. */ | 1634 /* XXX: No idea what the actual wrap limit is here. */ |
1557 BFROM (561, 5, 0), | 1635 BFROM (561, 5, 0x1000), |
1558 BFROM_STUB, | 1636 BFROM_STUB, |
1559 }; | 1637 }; |
1560 static const struct bfrom bf59x_roms[] = | 1638 static const struct bfrom bf59x_roms[] = |
1561 { | 1639 { |
1562 BFROM (59x, 1, 0x1000000), | 1640 BFROM (59x, 1, 0x1000000), |
1563 BFROM (59x, 0, 0x1000000), | 1641 BFROM (59x, 0, 0x1000000), |
1564 BFROMA (0xffa10000, 59x_l1, 1, 0), | 1642 BFROMA (0xffa10000, 59x_l1, 1, 0x10000), |
1565 BFROM_STUB, | 1643 BFROM_STUB, |
1566 }; | 1644 }; |
1567 | 1645 |
1568 static void | 1646 static void |
1569 bfin_model_map_bfrom (SIM_DESC sd, SIM_CPU *cpu) | 1647 bfin_model_map_bfrom (SIM_DESC sd, SIM_CPU *cpu) |
1570 { | 1648 { |
1571 const struct bfin_model_data *mdata = CPU_MODEL_DATA (cpu); | 1649 const struct bfin_model_data *mdata = CPU_MODEL_DATA (cpu); |
1572 const struct bfin_board_data *board = STATE_BOARD_DATA (sd); | 1650 const struct bfin_board_data *board = STATE_BOARD_DATA (sd); |
1573 int mnum = mdata->model_num; | 1651 int mnum = mdata->model_num; |
1574 const struct bfrom *bfrom; | 1652 const struct bfrom *bfrom; |
1575 unsigned int sirev; | 1653 unsigned int sirev; |
1576 | 1654 |
1577 if (mnum >= 500 && mnum <= 509) | 1655 if (mnum >= 500 && mnum <= 509) |
1578 bfrom = bf50x_roms; | 1656 bfrom = bf50x_roms; |
1579 else if (mnum >= 510 && mnum <= 519) | 1657 else if (mnum >= 510 && mnum <= 519) |
1580 bfrom = bf51x_roms; | 1658 bfrom = bf51x_roms; |
1581 else if (mnum >= 520 && mnum <= 529) | 1659 else if (mnum >= 520 && mnum <= 529) |
1582 bfrom = (mnum & 1) ? bf527_roms : bf526_roms; | 1660 bfrom = (mnum & 1) ? bf527_roms : bf526_roms; |
1583 else if (mnum >= 531 && mnum <= 533) | 1661 else if (mnum >= 531 && mnum <= 533) |
1584 bfrom = bf533_roms; | 1662 bfrom = bf533_roms; |
1585 else if (mnum == 535) | 1663 else if (mnum == 535) |
1586 /* Stub. */; | 1664 return; /* Stub. */ |
1587 else if (mnum >= 534 && mnum <= 537) | 1665 else if (mnum >= 534 && mnum <= 537) |
1588 bfrom = bf537_roms; | 1666 bfrom = bf537_roms; |
1589 else if (mnum >= 538 && mnum <= 539) | 1667 else if (mnum >= 538 && mnum <= 539) |
1590 bfrom = bf538_roms; | 1668 bfrom = bf538_roms; |
1591 else if (mnum >= 540 && mnum <= 549) | 1669 else if (mnum >= 540 && mnum <= 549) |
1592 bfrom = bf54x_roms; | 1670 bfrom = bf54x_roms; |
1593 else if (mnum == 561) | 1671 else if (mnum == 561) |
1594 bfrom = bf561_roms; | 1672 bfrom = bf561_roms; |
1595 else if (mnum >= 590 && mnum <= 599) | 1673 else if (mnum >= 590 && mnum <= 599) |
1596 bfrom = bf59x_roms; | 1674 bfrom = bf59x_roms; |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1774 bu32 value, *reg; | 1852 bu32 value, *reg; |
1775 | 1853 |
1776 reg = bfin_get_reg (cpu, rn); | 1854 reg = bfin_get_reg (cpu, rn); |
1777 if (reg) | 1855 if (reg) |
1778 value = *reg; | 1856 value = *reg; |
1779 else if (rn == SIM_BFIN_ASTAT_REGNUM) | 1857 else if (rn == SIM_BFIN_ASTAT_REGNUM) |
1780 value = ASTAT; | 1858 value = ASTAT; |
1781 else if (rn == SIM_BFIN_CC_REGNUM) | 1859 else if (rn == SIM_BFIN_CC_REGNUM) |
1782 value = CCREG; | 1860 value = CCREG; |
1783 else | 1861 else |
1784 return 0; // will be an error in gdb | 1862 return -1; |
1785 | 1863 |
1786 /* Handle our KSP/USP shadowing in SP. While in supervisor mode, we | 1864 /* Handle our KSP/USP shadowing in SP. While in supervisor mode, we |
1787 have the normal SP/USP behavior. User mode is tricky though. */ | 1865 have the normal SP/USP behavior. User mode is tricky though. */ |
1788 if (STATE_ENVIRONMENT (CPU_STATE (cpu)) == OPERATING_ENVIRONMENT | 1866 if (STATE_ENVIRONMENT (CPU_STATE (cpu)) == OPERATING_ENVIRONMENT |
1789 && cec_is_user_mode (cpu)) | 1867 && cec_is_user_mode (cpu)) |
1790 { | 1868 { |
1791 if (rn == SIM_BFIN_SP_REGNUM) | 1869 if (rn == SIM_BFIN_SP_REGNUM) |
1792 value = KSPREG; | 1870 value = KSPREG; |
1793 else if (rn == SIM_BFIN_USP_REGNUM) | 1871 else if (rn == SIM_BFIN_USP_REGNUM) |
1794 value = SPREG; | 1872 value = SPREG; |
1795 } | 1873 } |
1796 | 1874 |
1797 bfin_store_unsigned_integer (buf, 4, value); | 1875 bfin_store_unsigned_integer (buf, 4, value); |
1798 | 1876 |
1799 return -1; // disables size checking in gdb | 1877 return 4; |
1800 } | 1878 } |
1801 | 1879 |
1802 static int | 1880 static int |
1803 bfin_reg_store (SIM_CPU *cpu, int rn, unsigned char *buf, int len) | 1881 bfin_reg_store (SIM_CPU *cpu, int rn, unsigned char *buf, int len) |
1804 { | 1882 { |
1805 bu32 value, *reg; | 1883 bu32 value, *reg; |
1806 | 1884 |
1807 value = bfin_extract_unsigned_integer (buf, 4); | 1885 value = bfin_extract_unsigned_integer (buf, 4); |
1808 reg = bfin_get_reg (cpu, rn); | 1886 reg = bfin_get_reg (cpu, rn); |
1809 | 1887 |
1810 if (reg) | 1888 if (reg) |
1811 /* XXX: Need register trace ? */ | 1889 /* XXX: Need register trace ? */ |
1812 *reg = value; | 1890 *reg = value; |
1813 else if (rn == SIM_BFIN_ASTAT_REGNUM) | 1891 else if (rn == SIM_BFIN_ASTAT_REGNUM) |
1814 SET_ASTAT (value); | 1892 SET_ASTAT (value); |
1815 else if (rn == SIM_BFIN_CC_REGNUM) | 1893 else if (rn == SIM_BFIN_CC_REGNUM) |
1816 SET_CCREG (value); | 1894 SET_CCREG (value); |
1817 else | 1895 else |
1818 return 0; // will be an error in gdb | 1896 return -1; |
1819 | 1897 |
1820 return -1; // disables size checking in gdb | 1898 return 4; |
1821 } | 1899 } |
1822 | 1900 |
1823 static sim_cia | 1901 static sim_cia |
1824 bfin_pc_get (SIM_CPU *cpu) | 1902 bfin_pc_get (SIM_CPU *cpu) |
1825 { | 1903 { |
1826 return PCREG; | 1904 return PCREG; |
1827 } | 1905 } |
1828 | 1906 |
1829 static void | 1907 static void |
1830 bfin_pc_set (SIM_CPU *cpu, sim_cia newpc) | 1908 bfin_pc_set (SIM_CPU *cpu, sim_cia newpc) |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1933 | 2011 |
1934 case OPTION_MACH_HW_BOARD_FILE: | 2012 case OPTION_MACH_HW_BOARD_FILE: |
1935 board->hw_file = xstrdup (arg); | 2013 board->hw_file = xstrdup (arg); |
1936 return SIM_RC_OK; | 2014 return SIM_RC_OK; |
1937 | 2015 |
1938 default: | 2016 default: |
1939 sim_io_eprintf (sd, "Unknown Blackfin option %d\n", opt); | 2017 sim_io_eprintf (sd, "Unknown Blackfin option %d\n", opt); |
1940 return SIM_RC_FAIL; | 2018 return SIM_RC_FAIL; |
1941 } | 2019 } |
1942 } | 2020 } |
OLD | NEW |