Beranda > Cracking > PSFreedom – Part I

PSFreedom – Part I

27 September 2010

Ini adalah hasil translate dari Blog KaKaRoTo. Kenapa saya menerjemahkan halaman itu? Karena banyak sekali yang mampir di blog saya mencari tentang PsFreedom, makanya saya ber inisiatif menerjemahkan halaman ini agar para pembaca tidak perlu banyak membuka web untuk mencari info yang diinginkan. Hasil terjemahan ini sudah saya sesuaikan.

T: Apa hubungan Anda dengan proyek PSGroove?

J: PSGroove dirilis beberapa waktu lalu, ketika saya sudah bekerja (sekitar 50% dilakukan) pada PSFreedom. Aku mendapat bantuan dari Mathieulh dan Phire dari tim PSGroove, yang memberikan wawasan tentang apa itu jailbreak. Ketika PSGroove dirilis, saya membaca kode untuk memahami apa yang dilakukan dan untuk memastikan kode saya bekerja dengan cara yang sama. Saya menyalin deskriptor dan payload dari kode PSGroove, dan saya memberi mereka kredit untuk apa yang mereka lakukan, dan untuk apa yang saya disalin dari proyek mereka. Saya menetapkan izin saya untuk GPL v3 agar sama dengan mereka, dan saya memberikan kredit kepada mereka yang membantu saya di IRC. Namun, saya katakan dan saya bersikeras bahwa PSFreedom bukan merupakan bagian PSGroove, karena saya tidak pernah mengambil kode mereka dan porting ke N900, ini adalah karya asli saya, dan saya menulis semua kode dari awal. Beberapa tim PSGroove tampaknya bertentangan dengan saya karena itu, mereka bersikeras bahwa “jika Anda melihat kode kita, maka itu tidak perlu dipertanyakan itu adalah bagian PSGroove”, dan saya percaya kita memiliki dua pemahaman yang sangat berbeda dari istilah ‘port’.

Q: Bisakah suatu saat PsFreedom akan bekerja pada iPhone / telepon Symbian saya?

J: PSFreedom adalah driver Linux, sehingga hanya akan bekerja di Linux (perangkat yang mendukung) yang berarti, bukan pada IOS, dan bukan pada Symbian, jadi tolong berhenti bertanya tentang itu!

Q: Apakah itu bekerja pada 770/N800/N810 itu?

J: Saya hanya melakukan ini untuk N900, saya mungkin akan melakukan port ke perangkat lain, tapi sekarang, aku tidak bisa memberikan jaminan kepada siapapun bahwa hal itu akan terhubung atau bahwa ia akan bekerja pada perangkat lain … Source code telah dirilis dan siapapun yang ingin berkontribusi dapat melanjutkan, “fork my repository”, dan kirimkan saya Anda punya susatu yang menarik dan bisa bekerja.

Ini adalah perangkat linux, jadi ya, harus bekerja, tetapi seperti perangkat lain, mereka menggunakan kontroler yang berbeda dari N900, jadi sedikit modifikasi akan diperlukan.

Q: Apakah bekerja dari PC linux?

A: Sayangnya, tidak, kebanyakan PC mempunyai kontroler USB yang hanya mendukung modus Host, tetapi Anda perlu modus Slave untuk dapat membuat karya ini.

T: Dapatkah saya menjalankan backup dengan ini?

J: Pada saat ini, tidak, saya telah menggunakan payload sama seperti PSGroove, yang berarti backup dinonaktifkan, kecuali seseorang sudah merilis versi PSFreedom dengan backup yang diaktifkan. Di masa depan, saya mudah-mudahan akan membuat load modul muatan apapun pada saat runtime, cara ini Anda bisa memilih antara muatan yang berbeda.

T: Dapatkah Anda membuatnya lebih mudah digunakan?

J: Saya? Tidak. orang lain? Ya .. sudah ada seseorang yang bekerja di UI untuk PSFreedom, dan akan tersedia setelah siap.

T: Apa yang saya perlukan untuk menggunakan PSFreedom pada N900 saya?

J: Pertama, Anda membutuhkan N900 (duh) dan PS3 (duh) dengan firmware 3,41. N900 harus menjalankan stock kernel (-omap1) bukan kernel yang sudah dimodifikasi. Kemudian Anda hanya perlu scp file ke N900 dan menjalankan perintah -enable script.

T: Berapa banyak kode (source) yang sudah ada pada Nokia N900 ? Apakah Anda menggunakan Linux USB library Gadget?

J: Sangat sedikit, saya menggunakan include / linux / gadget.h kalau itu yang Anda maksudkan. Lihat pertanyaan / jawaban berikutnya untuk info lebih lanjut.

T: Apakah sulit untuk melakukan port ke perangkat baru?

A: Yah, aku baru saja memisahkan kode saya dari kode-kode N900 yang spesifik, sehingga cukup mudah, terutama ada dua fungsi untuk menulis, satu untuk mendapatkan dan satu untuk menentukan alamat USB .. dua fungsi yang hanya mengembalikan beberapa hasil statis tergantung pada konfigurasi controller (nama endpoints, dan apakah controller mendukung kecepatan tinggi atau mode kecepatan penuh).

Baca file README yang disediakan dengan PSFreedom, dan periksafile psfreedom_machine.c untuk spesifik tentang apa yang harus diterapkan.

T: Bagaimana saya bisa port ke perangkat baru.

J: Yah, pertama, Anda perlu mencari tahu apa controller perangkat yang Anda gunakan, dalam kasus N900, itu ‘musb’ ..

Lalu pergi ke kode driver untuk controller yang (mungkin dalam drivers / usb / gadget) dan mencari ‘SET_ADDRESS’. Dalam kasus musb, itu dalam drivers/usb/musb/musb_gadget_ep0.c. Di sana itu pengaturan alamat untuk perangkat USB, sehingga hanya menyalin kode yang ke psfreedom_machine.c untuk memungkinkan pengaturan alamat, dan menambahkan fungsi yang sama untuk dapat mendapatkan alamat.

Kemudian tambahkan fungsi untuk mengembalikan 0 atau 1 tergantung pada apakah controller mendukung modus TINGGI, FULL atau LOW (pergi ke usb_gadget_register_driver untuk pengendali Anda, dan di baris pertama, itu harusnya memvalidasi argumen kecepatan, ia akan memberitahu Anda mana yang diterima), atur ke mode LOW Speed untuk mendapatkan nilai TRUE hanya jika FULL Speed tidak bisa dipilih.

Akhirnya, tambahkan fungsi untuk mengembalikan nama titik akhir .. biasanya akan menjadi sesuatu seperti ‘epXin’ dan ‘epXout’ (di mana X adalah nomor endpoint), atau “epXin-bulk”, dll. Lihat bagaimana driver menginisialisasi endpoint atau grep untuk “->name” dalam file untuk menemukan dimana hal ini di set.

Seharusnya ini Cukup!

Ok ini dia untuk sekarang dengan FAQ. Lain kali, aku akan menceritakan semua tentang pengalaman saya, apa masalah yang saya temui dan bagaimana saya menyelesaikannya, mungkin itu akan membantu orang lain!

Nikmatilah!

KaKaRoTo

%d blogger menyukai ini: