TPS79 - спасибо, весьма интересно про MTK, но не до конца понятно, букОв мало.

В МТК, вроде бы все проще, все открыто, куча отличного софта и доков, но внутренние структуры и работу я, как раз, знаю слабее, возможно, в силу, как раз, такой "хялявы".

Сделал, работает, нет мотива дальше лезть разбираться...
Цитата:
Сообщение от nikitin78
Фуллы дали на соседнем форуме, но они не помогли, телефон падал в 9008. Оживил сервисной через MiFlash. Но IMEI 0/null, при этом SIM-карты видит (запрашивает пин-код), есть WiFi, bluetooth. Так что без родного бэкапа смысла нет за него браться ( А может даже и бэкап не поможет
|
Если есть сервисная - плиз опубликуйте! (можно анонимно, если есть какие-то опасения относительно проблем с официалами). Это же касается и всех остальных, у кого есть доступ к "официальным материалам". Куча людей страдает от ее отсутствия. В т.ч. большинство коллег-мастеров. И страдают они совсем не правомерно, о чем я писал выше. Если кто-то боится потерять мнимую "монополию", то она все равно падет рано или поздно. Высылать массово аппараты из других городов тоже врядли кто-то станет. Пользователи просто выкидывают устройства или продают их на Авито "на запчасти", как это было с Casio G'zOne, пока я не опубликовал способ их поднятия.
Про секреты
С лока MMX Q415 тоже можно было "что-то заработать" (оценка до 1мр), но в итоге инфа была опубликована во фри к радости сообщества. В свою очередь я бы ничего не опубликовал и сидел бы с "дохлым 415" по сей день, если бы добрые люди сначала не поделились, а потом не опуболиковали для всех заводскую прошивку с необходимыми для восстановления загрузчиками и описанием процесса, в т.ч. указанием Test Point-а, за что я им весьма признателен. Все взаимосвязано в этом мире. Я вот копейки на этом не заработал, даже в "минус" ушел, подарив свой экземпляр другу для дочки-школьницы, а кто-то потом зарабатывал по 100тр и жаловался на отсутствие автоматизации метода... Но я не в обиде - люди делают свою работу для конкретных клиентов (которые сами "вникать не хотят"), трудятся и довольно долго и упорно, почему бы им не заработать. Все честно.
Я и до того и после не раз указывал, что бояться "потерять работу" не нужно. Лишь единицы процентов потребителей сами способны и чинят свою электронику. Чем более раскопан аппарат, тем более он будет популярен (если не Г откровенное, конечно или не переоценен) и больше будет клиентов на ремонт. Чем более раскопан аппарат, тем быстрее и легче его чинить. Чем более раскопан аппарат, тем легче он "прощает" допущенные ошибки. Когда вся инфа есть - сядет спец, разберется, что он накосячил и за час сделает, поск все ресурсы есть и "белых пятен" не осталось, тогда как в противном случае можно потерять неделю и долго объясняться с клиентом на тему "почему полурабочий аппарат стал совсем не рабочим", а то и убытки возмещать. Платить "оч. много" зя "оч. долгую работу" все равно никто не станет. Пойдут новый купят, уже 100 раз сталкивались...
Исключения крайне редки. Держать в секрете имеет смысл какую-то совсем уж "узкую" информацию по значимым вопросам о СВОИХ разработках (ну или доверенных), которую оч трудно найти или раскопать. Какие нибудь прошивки для "боксов" или софт к ним, информацию о мудреных локах, которые оч трудно снять, и то, только при наличии желания и четкой перспективы на этом заработать. У нас с другом были когда-то "секреты" по своим наработкам (в тч, прошивки для процов на опред. тему), которые можно было опубликовать, может с задержкой, и получить "удовольствие от общения" и "славу", но вот вовремя не опубликовали, заработали "3коп" на этом, а по прошествии неск лет оно никому не нужно, поск "техника шагнула вперед".

Может, если бы вовремя опубликовали, интерес к теме был бы выше и заработали бы больше.

Все равно разводить плату, паять проц и обвес, прошивать, ни один пользователь не станет! "Конкуренты", наоборот, привлекали бы интерес к теме, особенно, когда "своих ресурсов два человека". В самое приятное во всей это идеологии, что "все по доброму". Не надо никому ничего "впаривать" и доказывать что ты не верблюд. Не нравится что-то - бери информацию и иди сам делай. Тебя никто не ограничивает. Когда у челоека есть выбор, то и отвественность за него он берет на себя. Когда выбора нет, он мучается чувством что его вынудили что-то делать. Другой момент в том, что обладая информацией, попытавшись разобраться, человек может оценить степень сложности и трудоемкости задачи, тогда как "будучи в неведении", обычно полагает, что "все просто" и надо лишь "нопку нажать" и "3 руб заплатить", привыкши покупать сложные приборы в магазине по бросовым ценам массового производства.
[свернуть]
Выхода из 9008 иного нет. Либо перепаивать еММС (и потом понять как корректно заливать остальное, в чем затык), либо поднимать сервисной, по процедуре производителя (аналогичной процедуре с использованием оригинальных загрузчиков).
Что касается подъема данных модема ("нет IMEI"), то этот вопрос, скорее всего, будет решен. Нужно найти способ активации Diag порта модема. после этого, скорее всего, можно будет невозбранно сливать и заливать NVRAM через порт средствами QPST. Соотв., достаточно будет слить QCN с донора и залить его в "пострадавшего", и IMEI восстановится, модем заработает. Для того, чтобы вернуть оригинальный IMEI нужно поправить QCN перед заливкой. Есть инструкции, есть даже готовые утилиты для "ленивых или неграмотных".

См .темы по Q415, Highscreen Boost/2/2SE/Omega Prime S/Innos/DNS/etc......
Проблемы могут быть если производитель накастомил оригинальный протокол Diag порта (как я писал выше), побороть такое сложно, ведь исходников QPST нигде нет, а альтернатив тоже оч мало и все они "не универсальные". Но таких случаев единицы, тогда как в абсолютном большинстве все работает. Нужен "экспериментатор" для "коды" попробовать или порыться со скриптами и бинарниками для смены USB композиции. Надо чтобы кто-то всерьез позанимался этим девайсом и проблемы будут решены на 99%.
Про Diag порт и работу с NVRAM
Diag-порт-интерфейс там есть, просто в дефолтной композиции он выключен (99.999999%). Иначе производитель (и ОСЦ) сам не смог бы заливать NVRAM. Производители НЕ работают с шифрованными даннми "неким своим софтом". Шифрованием занимается фирмвер модема "на лету". На заводе, точно также как и в любом СЦ, специальный софт загоняет данные NVRAM через Diag порт, причем, скорее всего, в процессе калибровки конкретного экземпляра на RF стенде. Именно поэтому ни в каких "заводских прошивках", даже в "самых открытых", от китайских телефонов, Вы не найдете образов разделов с EFS/NVRAM. Вместо этого для ОСЦ может быть приложен QCN файл с дефолтным NVRAM (в т.ч. без прописанных IMEI). См. в квчестве примера прошивки от того же Q415, аппаратов HighScreen (Innos) итп. Изредка, для некоторых китайских аппаратов производители распространяют пропрайетарные утилиты для прописывания ID (IMEI/MAC/Serial/etc). Но обычно такого не найдешь, наверное потому, что соотв ПО на зводе производителя заточено под работу исключительно с аппаратурой стенда и без него не работает. Порт, тоже, не зря называется Diag. По идее производителя - это диагностический порт, а не "порт для записи NVRAM" или "каких-то там разделов". NVRAM - это всего лишь область для записи уникальных настроек RF части аппарата по результатам дисгностики/тестирования, а не какой-то "секретный раздел", как было задумано изначально. Вспомним, что первые телефоны имели физический EEPROM для хранения NVRAM, а само понятие NVRAM в переводе означает лишь "энергонезависимая память", предназначенная для хранения перманентных настроек и названа так только чтобы отличать соотв адресное пространство процессора от остальной, энергоЗависимой памяти. Позже NVRAM переехал в "основную флеш" исключительно с целью экономии "копеечки" на производстве каждого экземпляра устройства (в карман топам, конечно, и как всегда, поскольку в течение более 10 лет себестоимость мобильников в разы и десятки раз отличалась от их конечной цены).
"Секреты" там появились отноюдь не в силу технической необходимости, а в силу стремления ББ лезть "во все дыры без мыла", навешивая всему населению "номерки для учета", равно как стремления производителей выкручивать руки потребителям, бесконечно заставляя их покупать новые устройство под любым благовидным предлогом (например, "сломался"). Ничего секретного, кроме ID's я там даже усмотреть не могу. Теоретически, вмешательство могло бы привести к увеличению уровней излучения, но на практике там, наверное, сегодня такие "дохлые" усилители ставят... Стандарт GSM позволяет вещать с мощностью до 1Вт (или даже 2Вт) на 900МГц. Нынешние телефоны вещают не более 0.1Вт, ну может 0.2Вт. Думаю там RF часть даже аппаратно разрешенный 1Вт ищзлучить не сможет.
"Украденные телефоны", на которые ссылаются демагоги от Матрицы, тоже никто на практике никогда не искал и не ищет по сей день, за редким исключением (когда есть нужные "знакомые" сразу все находится

), ни у нас ни за рубежом (разве что случайно найдут). В любом случае, разграничение уникальных данных NVRAM от "остальной прошивки" очень четко прослеживается на любых устройствах подобного толка. Это мы пытаемся переливать разделы с доноров в отчаянных попытках реанимировать аппарат. Инженерны производителя, не удивлюсь, если даже, не знают о существовании такой возможности.
Сам NVRAM обычно всегда кастомится, добавляют-убавляют какие-то ITEM-ы. Кастомить протокол уже сложнее - надо разрабатывать полностью свои утилиты под этот протокол и нести все изрержки в т.ч. по глюкам и отладке, избыточному обучению, общению с ОСЦ итп. Кастомить модем тотально никто не станет - слишком сложно и фатально трудозатратно - фактически нужно новую структуру хранения (всех уровней) разрабатывать и большую часть фирмвера модема самостоятельно. Случаев "в природе" нет таких. Samsung, было, переносил бинарные структуры NVRAM в файловую систему тела. В итоге просто ослабил защиту, вместо того чтобы ее "усилить". Пользователи быстро раскопали где храняться, даже не шифрованные, бинарники и делали с ними "что хотели". И вообще, там очень удобно - глюкнул модем - чел, прямо в телефоне, запустил какой-нибудь Root Explorer и скопировал "файл NVRAM" из бакапа поверх запоротого, перезагрузил - и все работает и пресловутый IMEI на месте.

Я был "в шоке" когда узнал. Эти аппараты оказались наиболее "простые" для исследования. Впрочем перезалить бакап разделов ModemSTx из бакапа с SD-карты в случае сбоя тоже не сильно сложнее. Есть и готовые утилиты. Но с файлами работать пользователям кажется проще и привычнее.
Чудесно кастомизирован был модем от Casio G'zOne С811 (CA-201L). Там производитель создал НЕ шифрованный раздел с бакапом важнейших настроек NVRAM (вкл. IMEI/Serial/etc). Сам NVRAM хранится практически стандартным образом. Если разделы EFS (ModemSTx) повреждены - NVRAM переинициализируется дефолтными значениями, ID вписываются из данных раздела-бакапа. Все происходит автоматически, даже перезагрузка не требуется. Пользхователь даже ничего не замечает. Если разделы целы, бакап "лежит" и его никто не трогает. можно там менять что угодно (если понимаешь бинарную структуру), но на работу телефона это никак не повлияет (пока не случится сбой EFS либо если умышленно его стереть). Вот так и должно было быть сделано везде. Это называется отказоустойчивость. Другое дело, что все это не снимает с производителя отвественности за НЕ опубликованные исходники, заводскую прошивку и "сваливание с рынка" с закрытием СП Casio-Nec и забиванием на гарантии, поставки запчастей итп (см. срок службы по закону).
[свернуть]
Еще раз хочу подчеркнуть. Ничего не сдвинется пока, кто-то не выложит необходимые ресурсы и, еще кто-то не потратит некоторое время на эксперименты и разбирательство.
Выяснились еще оч интересные подробности. Ученье - свет, неученье - тьма. Больше надо читать.
По результатам поиска всплыла информация, способная помочь в подъеме из 9008 и информация по TestPoint.
1. сначала выяснилось, что некто Talish, обычный пользователь устройства, имевший на руках аж 2 прибитых в 9008 аппарата, долго читал 4PDA, как профильный топик, так и известный общий топик "Общие принципы восстановления загрузчиков на Qualcomm, HS-USB QDLoader 9008, HS-USB Diagnostics 9006, QHUSB_DLOAD и т.д."
http://4pda.ru/forum/index.php?showtopic=643084
после чего провел некоторые эксперименты, которые принесли некоторые положительные результаты:
Вот, казалось бы, полный отчаяния пост:
Цитата:
Сообщение от Talish @ 4pda
Народ, у кого какие идеи есть, ибо я в тупике! В общем добился я того, что из 9008 режима отправил аппарат в 9006 режим, наколдовав оживил телефон! Аппарат заходит как в фаст бут так и в рекавери! Устанавливая прошивку через рекавери пишет вот что
Источник: http://4pda.ru/forum/index.php?showt...ost&p=47682121
|
Но как много вдохновения он несет...
Поиск постов пользователя позволил прояснить и некоторые подробности уже в теме про восстановление загрузчиков:
Далее про вывод из 9008 в некоторых ситуациях с помощью SD карты...
Цитата:
Сообщение от Talish @ 4pda
Есть 2 аппарата Asus A500kl.
Один аппарат в 9008 режиме. У второго ошибки в рекавери
Вот что показывает
На скрине 1: Официальный Recovery 3e выдает кучу ошибок на тему: Failed to mount cache/userdata
Есть дамп всей системы в формате img (15 ГБ весит)
Отправил образ дампа на флешку, и подлючив к телефону.
1 Аппарат НЕ переходит из 9008 в 9006 режим.
С вторым телефоном тоже аппарат был в 9008 режим, отправив образ на флешку и включив тел перешел в 9006 режим. Далее через QPTS отправив rawprogaram0 разделы, аппарат ожил и включил. Заходит в фастбут и рекавери. Установив прошивку пишет вот что:
На скрине 2: Установка официальной прошивки с SD/zip, прописываются tz/sbl1/rpm/aboot/modem/sdi/asusfw, результат succeeded/complete (т.е. все ОК)
Сделал вайп дата, и аппарат второй вот что ппоказывает:
На скрине 3: картина повторяющая скрин 1.
Источник: http://4pda.ru/forum/index.php?showt...ost&p=47744625
|
Вывод: у человека повреждена GPT и разделы cache/userdata, скорее всего и system просто не прописаны там. Это объясняет почему они не прописываются (о них вообще нет речи на скрине 2) при прошивке с SD карты. Их просто некуда восстанавливать ибо нет таких разделов. Это, конечно, не 100% вывод, но это анализ, и анализ вполне разумный, объясняющий имеющиеся факты. Может быть у него еММС "бэдит", а Recovery не стал прописывать "недостающие" разделы по какой-то иной причине...
Главный вывод, который можно сделать и который полезен для всех:
Какой-то и з загрузчиков этого аппарата, причем, скорее всего PBL,
умеет грузиться с внешней SD карты!
Какова логика выбора носителя для загрузки я не знаю, но из поста следует еще один важный вывод, что вариантов поведения может быть 2:
1. Один аппарат грузится с внешней SD карты, размеченной и прописанной идентично с eMMC (Вкратце - нужно залить на SD карту образ ВСЕГО ДИСКА слитый с eMMC, подробности можно найти в топике про восстановление загрузчиков, все ссылки есть в шапке).
2. Другой аппарат НЕ грузится с той же самой внешней SD карты, размеченной идентично с eMMC.
Наиболее вероятный сценарий тут:
1. Если PBL видит [неповрежденный] GPT, возможно еще, может загрузить SBL, он отдает загрузку на eMMC, после чего перестает искать другие носители для загрузки (а с еММС загрузиться по какой либо причине не может).
2. Если PBL не видит GPT (или не может успешно загрузить код SBL-related), он пытается найти GPT и SBL-related код на ДРУГОМ носителе, коим (единственным альтернативным и программно почти идентичным еММС) является внешняя SD-карта. И, если он находит там то, что ищет он пытается грузить систему оттуда. Собственно, подобное поведение расписано в указанной теме. Метод не нов и встречался ранее в других Qualcomm-based устройствах. Другое дело, что не все устройства "желают" грузиться с внешней SD-карты и/или неизвестно как их "заставить".
Прояснить точные границы поведения при поиске носителя для загрузки могут только эксперименты (или реверсинг PBL). Существуют иные способы перенести загрузку на внешнюю SD на более поздних этапах. В частности известные разработчики кастомов для Highscreen Boost 2SE (acdev/S-Trace) выпустили кастомный ABoot, позволяющий выбрать загрузку с eMMC либо SD уже на этапе работы ABoot. Такой метод позволяет грузить систему и работать с устройством даже при частично "убитой" еММС. Для работоспособности метода, очевидно, необходима работоспособность еММС в рамках ее выхода в готовность на чтение (при условии заблаговременной записи кастомного ABoot) и целостности GPT/SBL/RPM/TZ и, собственно, ABoot.
Кто может/желает - проведите необходимые эксперименты. Мало того, если удастся загрузиться с внешней SD тем, у кого аппарат впадает в 9008 после замены еММС на снятую с Samsung-а и проливки прошивки, могут попробовать загрузиться и поглядеть что изменилось после "впадания в ступор" (без вторичного выпаивания еММС). Для этого перед перезагрузкой нужно слить всю еММС любым способом, и, после "впадания в стопор 9008", слить еще раз, после чего сравнить и попробовать понять "где косяк".
[свернуть]
Вторая хорошая новость - другой пользователь 4PDA - dmitry08 - нашел TestPoint! правда не тот, который нужен для "выхода из 9008", а тот который нужен для принудительного входа в 9006 работающего или полуработающего аппарата (GPT/SBL-related должно работать).
Это очень упрощает восстановление в некоторых случаях. В 9006 нет проблем слить-залить любые разделы (если есть базовые знания по теме). Возможно, конечно, есть какие-то "заЩИТы", не могу исключить. В остальном 9006 - это "радость" полного контроля над "дисковой системой".

Вот обсуждение вопроса:
Test Point to force 9006 mode
Цитата:
Сообщение от dmitry08 @ 4pda
После некоторых поисков был найден способ загнать тело принудительно
в Download Mode (когда определяется как HS-USB Diagnostics 9006).
Для этого нужно:
1. Разобрать аппарат.
2. Снять системную плату (предварительно отключить ВСЕ!!! шлейфы)
3. Подключить только средний шлейф (тот на котором СИМ-приемник)
4. Перевернуть плату с подключенным шлейфом (чтобы получилось как на фото)
5. Замкнуть и удерживать контакты указанные на фото тонкой иглой.
6. Подключить USB кабель, через секунд 10-15 тело определится в системе как HS-USB Diagnostics 9006.
Asus_A500KL_TestPoint1.jpgAsus_A500KL_TestPoint1Zoom.jpg
Оригинал _____ Фрагмент с TP между eMMC и камерой.
Пробовал заливать eMMC RAW Tool блоки Aboot, Boot, Recovery выложенные выше,
но наверное этого не достаточно, при включении Error: Load kernel failed !
в recovery не грузится, висит.
В recovery заходит только через fastboot boot recovery.img
а там опять ошибки с монтированием разделов.
Теперь осталось чтобы кто то сделал полный дамп рабочего аппарата
с помощью eMMC RAW Tool или HDD RAW copy.
Источник: http://4pda.ru/forum/index.php?showt...ost&p=46704561
|
Цитата:
Сообщение от OldPihto @ 4pda
padona4ek:
Опиши, пожалуйста, порядок перевода в 9006 подробно (не все могут в него попасть)
OldPihto:
Там особо нечего описывать. Замыкать надо два крайних контакта, которые обозначены на фото.
Лучше всего делать это иголкой, держа ее наклонно. Получается это далеко не с первого раза.
Момент перехода в 9006 определить легко. Подключенная к USB матплпта мигает диодом зарядки
и трещит вибромоторчиком. После правильного замыкания контактов, диод и моторчик отключаются
и начинают в диспетчере устройств появляться новые устройства.
Но все оказалось не так радужно. Образ с рабочего телефона я вчера успешно снял,
но вот записываться он отказывается. eMMC RAW Tool постоянно выдает write error.
Источник: http://4pda.ru/forum/index.php?showt...ost&p=48237674
|
[свернуть]
Судя по виду, "официальным TestPoint-ом" используемые контакты не являются, а речь идет, скорее всего о воспрепятствовании нормальной работе еММС. Тем не менее, пока это единственный найденный способ активации 9006. Безусловно, существуют и программные способы ввода в режим, поскольку и режим-то сам программный, только вот мы о них не знаем. Возможно, есть еще какой-то аппаратный способ.
Исходя из того, что загрузка с внешней SD карты осталась "открытой", следует, что Asus не особенно заморачивался с "заЩИТой" со стороны кастомизации PBL (если она вообще имела место, что означало бы однозначно кастомизированные процессоры, поск, как мы выяснили ранее, раздел для PBL на еММС пуст).
Про заЩИТы
P.S. Некоторым может показаться, что я не люблю "заЩИТы" (от слова shit, а не ЩИТ). Кто-то может возразить, что производитель защищает данные "неграмотных" пользователей от доступа третьих лиц, в т.ч. в результате кражи аппарата итп.
Простите, но так данные НЕ защищают. Пользователь сам должен выбрать: (или вообще использвать специальные сторонние средства для защиты).
Если "ему нечего скрывать", он не боится доступа третьих лиц (при наличии физического доступа к телефону, поск удаленный доступ всегда защищается и весьма неплохо, в т.ч. на "рутованных аппаратах") и его беспокоит, прежде всего, работоспособность, отказоустойчивость, надежность и ремонтопригодность устройства, доступность данных, их сохранность - ему не нужна никакая защита, осложняющая эксплуатацию и отнимающая производительность, а "от честных людей" хватит и простенького PIN-а (пароля), вроде как тот замочек, который висит на вашем почтовом ящике и вскрывается любой отверткой, но его никто и никогда не вскрывает за очень редкими исключениями.
Если пользователь всерьез обеспокоен безопаностью, личной или корпоративной, утечки недопустимы, а стоимость аппарата пренебрежимо мала с последствиями утечек - ему просто нужно предложить полное аппаратное шифрование носителей или их частей с полной (его) отвественностью за сохранность ключей и иные реально защищающие технологии (включая понимание и приятие физических ограничений и неудобств при работе с устройством). Такое шифрование не должно препятствовать ремонту устройства (в т.ч. в "домашних условиях"), не должно препятствовать снятию любых в т.ч. шифрованных и поврежденных данных. Вопрос расшифровки должен относиться к компетенции пользователя (в его лице или лице корпоративной СИБ) и никого более, включая Билла Гейтса, Сережу Брина, главу ЦРУ и прочих "деятелей".
Такие методы защиты давно разработаны и давно и широко внедрены. Взять, как пример, хорошо известный TrueCrypt, позволяющий прозрачно шифровать разделы и диски целиком (включая стеганографические методы), равно как, позволяющий свободно перемещать шифрованные контейнеры на любые носители.
Методы несанкционированного доступа к данным после этого остаются, но сводятся к использванию вирусов/троянов (перехватывающих пароли и ключи в момент их ввода) внедрить которые на ранние этапы загрузки крайне сложно. Отвественность за использование только надежных источников кода тоже лежит на пользователе (а не производителе и иных лицах, никак не связанных общей ИБ и отвественностью с пользователем), что, в т.ч.. подразумевается выше, под "неудобствами и ограничениями в работе".
А то, что сейчас называют "заЩИТами" - это дырявое сито позволяющее спереть любые данные, контролировать активность пользователя в самых разных аспектах, в т.ч. не связанных напрямую с самим устройством и препятствующее нормальной работе и ремонту устройства.
[свернуть]