[linux-programming] Offload DMA driver

2009-07-10 Terurut Topik dian sastro
Halo,

Apakah diantara rekan2 ada yang mengetahui arsitektur/cara Network
card offload DMA?
Saya sudah berhasil membuat kernel driver untuk transfer dari main
memory ke PCI memory memakai DMA main processor. Nah untuk network
card, NIC ini mempunyai DMA controller sendiri. Berarti operasinya
dilakukan oleh DMA controller NIC, bukan main processor. Yang saya
belum paham, bagaimana cara kerja DMA di sisi NIC ini?

Konfigurasi mesin: prosesor MPC8349ERM, board MPX8349GC, embedded
linux (kernel 2.6.27), PCI bus 32-bit

Thanks

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] Offload DMA driver

2009-07-10 Terurut Topik dian sastro
Thanks pak Eko atas tanggapannya.

Ring buffer nya itu ada dimana pak? Saya baca2 di google kok ring
buffer itu adalah main memory . Juga saya baca di hardware manual
MPC8349 juga tidak disebutkan adanya buffer di sisi NIC. Saya
membandingkan dengan grafik card yang mempunyai memory sendiri, apa
NIC juga punya memory tersendiri (yang disebut dengan ring buffer?)

Kalau ring buffer = main memory, bagaimana kita menggunakan DMA nya
pak pada mmap() ini? Saya membaca tentang struktur VMA, tetapi tidak
yakin apakah ada hubungan antara handler mmap() dengan VMA ini...

mohon petunjuknya pak

thanks

2009/7/11 Eko Prasetya eprase...@gmail.com:
 Dian,

 Kamu menggunakan freescale kan? Freescale punya DMA master yang
 seharusnya bisa authenticate dengan DMA slave di NIC.
 DMA master dari freescale akan memberikan daftar physical memory
 yang bisa diakses oleh DMA slave. Apabila NIC menerima data di ring
 buffer-nya, dia akan mengirimnya langsung ke memory, dan men-generate
 interrupt ke processor.


 KOkon.

-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] Offload DMA driver

2009-07-10 Terurut Topik dian sastro
semakin jelas pak sekarang

untuk mengawasi status buffer descriptor (BD) ini biasanya dilakukan
software yang secara terus menerus mengecek status BD atau ada semacam
hardware callback/interrupt pak?

Untuk bootloader saya memakai uBoot, nanti bisa saya re-compile untuk
mengakomodasi non cache able memory. Sekarang ini saya memakai fungsi
virt_to_phys() di kernel driver untuk mengetahui alamat physical dari
hasil kmalloc(). Memang saat ini masih ada perbedaan sebesar kira2 20
MBps antara kmalloc() dan non cacheable pak, yaitu 70Mbps tanpa
kmalloc() dengan 55.5 Mbps dengan kmalloc() pada 32-bit data bus.

Thanks


2009/7/11 Eko Prasetya eprase...@gmail.com:
 Ring buffer / buffer descriptor, merupakan kumpulan descriptor yang menentukan
 di mana NIC akan menulis ke memory apabila ada data yang diterima.

 Yang perlu diingat, memory yang digunakan untuk DMA adalah physical memory,
 bukan virtual/logical. Biasanya, karena saya sendiri yang kontrol
 alokasi memory,
 di boot-loader, kita bisa tentukan memory mana yang non-cache-able. Kalau 
 Anda
 tidak punya akses ke boot-loader, berarti alokasi memory harus
 menggunakan kmalloc
 dengan DMA flag. Masalahnya, dengan kmalloc, berarti Anda harus
 menggunakan barrier
 untuk read/write, dan barrier is expensive.


 KOkon.


-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] [Java] membuat widget secara runtime

2009-07-31 Terurut Topik dian sastro
di versi c++ parentnya mesti dijelaskan, soalnya secara default akan
dianggap bahwa parentnya adalah system.

juga geometrynya mesti secara explisit di set.


QLabel* lb=new QLabel(this);
lb-setText(abcdefg);
lb-setGeometry(10,10,100,100);
lb-setVisible(true);

-sas-

2009/7/31 Wirasto S. Karim wirastoka...@gmail.com:

 2009/7/31 Wirasto S. Karim wirastoka...@gmail.com:


 Saya mencoba membuat widget secara runtime, tapi tidak bisa tampil.
 Prosesnya, apabila tombol di klik maka akan dibuatkan sebuah label.

 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
  JLabel labelku=new JLabel(Hai);
  labelku.setVisible(true);
 }


 setelah sebuah widget dibuat, widget tersebut harus dipasang.

 jadi jangan lupa memasukkannya ke sebuah container.




 Saya memprogram dengan menggunakan netbeans.

 Kali ini saya memasukkan jpanel kedalam form. dan mencoba menambahkan
 labelnya ka dalam jpanel tersebut. Tetapi tidak bisa juga

   private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
                                       // TODO add your handling code here:
   JLabel labelku=new JLabel(Hai);
   jPanel1.add(labelku);
   labelku.setVisible(true);
   }


--
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: [linux-programming] opengl programming ??

2009-10-02 Terurut Topik dian sastro
check this out:
http://supersnippets.googlecode.com/svn/trunk/demoscene/templates/linux_opengl/main.cpp

regards,
-sas-


2009/10/2 Kristophorus setipen...@gmail.com:
 Hi guys...
 Mo tanya nih, kalo mo bikin program pake opengl toolnya pake apa ya ??


 --
 Regards,

 Kris


-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis



Re: Bls: [linux-programming] Linux untuk keperluan khusus

2010-01-26 Terurut Topik dian sastro
Kebetulan perusahaan saya juga mengembangkan peralatan navigasi
pesawat terbang dan satellite communication untuk kapal memakai
embedded linux.
Sejauh ini lumayan, hanya sedikit lambat dalam hal performance gitu aja.

-sas-

2010/1/27 Eko Prasetya eprase...@gmail.com:
 Saya menggunakan MotoDroid. Sejauh ini, sangat memuaskan.
 Apalagi saya bisa buat aplikasinya dengan Python/Ruby/Lua.

 Jalannya di Linux + JVM.


 KOkon.

 2010/1/26 Dichi Al Faridi di...@alfaridi.info:

 Kalo ga salah Android mahal ya.. :D oiya, selain HTC, vendor seperti Sony
 Ericsson juga ada yang pake Android (Xperia berapa gitu).. Btw, dah ada yang
 pake android?

 --
 Berhenti langganan: linux-programming-unsubscr...@linux.or.id
 Arsip dan info: http://linux.or.id/milis



-- 
Berhenti langganan: linux-programming-unsubscr...@linux.or.id
Arsip dan info: http://linux.or.id/milis