Недавно обнаружил вроде как, что проц инициализирует порт i2c нулевым адресом, а только потом идет адрес устройства с кем он хочет обмениваться, но сначала идет инициализация нулевым адресом. Дак вот, идея заключается в следующем, если найти всю последовательность инициализации портов, все i2c, питания и тд и тп. То можно сделать таблицу последовательность запуска. Но это так, идея была, не знаю на сколько это имело бы смысл Хотя вот с ошибкой 4013 думаю полезно было бы знать, на ip7
Комментарии: 28
Andrey
может 0 адрес это мастер i2c - то есть сам проц
Newalyashka
Но мастеру то не нужен сам адрес а вот инициализация порта должна быть.
Andrey
мастер может выступать и слейвом на шине
Newalyashka
Ну это да, но там мастер только проц КП ведь не может выступать в роли мастера?
Andrey
почему нет?
Newalyashka
Или я ошибаюсь?
Andrey
возможно U2 что то опрашивает подопечное
Newalyashka
Ну если кп опрашивает ю2, имеешь так ввиду? Сам ю2 мастером не может выступить, там мозгов сильно мало
Andrey
мастером автоматом выступает опрашивающий там достаточно мозгов) так тоже к примеру
Newalyashka
Т.е ты имеешь ввиду там все может как мастером выступить так и слейвом
Akylbek
I2c не критичны. Без тристара, тигриса, подсветки, дисплея старт есть. А вот если замкнуть шину i2c, то проц начнет замыкать, отсюда и цикл. Есть 2 уровня аппаратной проверки. Первый уровень проверки начинает bootrom из процессора. Он опрашивает кп, нанд и если они в порядке, то идет запуск ядра ОС и далее ОС в паре проверяет остальное железо модем, нфс и прочее. Когда не проходит первый уровень проверки, будет либо 40-50мА и не включение, либо дфу. Когда не проходит второй уровень, то будет рекавери https://t.me/mobility_labs/5
Newalyashka
Ну под критичностью мы имеем ввиду когда тел вообще не хочет стартовать. А без подсветки понятно что включится.
Akylbek
Под критичносью я имел ввиду обпределение компом Apple Update Device режим DFU Device Firmware Update, то есть для прошивки
Newalyashka
Перезагруз в цикле, т.е i2c критична, потому, что проц пытается инициализировать сам порт(скажем нулевым адресом), если это завершается неудачей то проц сбрасывает питание проца, дабы повторить неудавшийся запуск.
Andrey
без тристара нет же старта!!? ну вообще да
Akylbek
А старт в каком понимании? Рекавери тоже старт и дфу тоже старт.
Newalyashka
Замкнуть i2c на корпус вот и критичность.
Akylbek
Сам i2c не нужен для старта/инициализации.
Andrey
DFU то есть указывает на кп или нанд и на исправность процессора и оперативки если он не в коротком или не просажены напряжения иначе старта не будет
Akylbek
Ну раз вы говорите о 4013 и начальных этапах загрузки и необходимом питании, то я вам говорю чтобы самое главное не было кз/просадки на i2c и по 1.8 не было кз/просадки. Я не говорю о полном включении.
Andrey
какие питания нужны для соц и нанд и оператиивки - знвчения
Akylbek
Pp_cpu Pp_var_soc Pp1v8_sdram Pp1v2_sdram Pp0v95_fixed_soc Pp1v8 Это чтобы был дфу Для нанд Pp3v0_nand Pp1v2_nand_vddi
Andrey
ну или опросив кп но тогда он не может судить о неисправности шины он может судить только о неисправности порта кп + а для старта до спрингборда тут наверное проще спросить что не критично
Andrey
а так я понимаю о чем ты
Newalyashka
Нужен самому порту, иначе если бы инициализация порта не нужна была, то замкнув порт на корпус телефон бы включился, правильно? Даже если устройство на этой шине не критичное, скажем подсветка, но порт должен инициализирован, если замкнуть порт телефон уходит в ребут, из-за неудавшейся инициализации, поэтому уходит в ребут.
Andrey
до запуска Springboard
Andrey
то есть передача по 0 адресу это лупбэк и проверка шины?
Newalyashka
Иначе тогда нахера процу отправлять биты самому себе Да