Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Maemo: Developers

examining n800 kernel

 

 

Maemo developers RSS feed   Index | Next | Previous | View Threaded


dufkaf at seznam

Jan 16, 2007, 5:57 AM

Post #1 of 8 (8472 views)
Permalink
examining n800 kernel

Hi,

I've been looking at the n800 kernel source in bora repository to figure
out what n800 is like comparing to the n770. Here is a summary of some
things I found. As I don't have the device I may be wrong with something
that could be easily verified.

kernel is 2.6.18-omap1 - everybody probably knows that :-)

MMC/SD

4 bit data bus seems to be used only for SD cards, omap2 maximum speed
is now set to 48Mhz (was 24Mhz for omap1 reduced to 12Mhz for N770).
There are no high speed MMCmobile/plus (or high speed SD) patches
applied so I guess SD cards run at 24Mhz, MMC at 16Mhz. There are also
no patches for wider bus width (4 bit) for MMCmobile. SDHC cards are not
supported too. As there are patches floating on the net for all these
things (done mostly by Philip Langdale http://intr.overt.org/blog/)
future looks promising :-) Oh, BTW multiblock writes _are_ enabled in
this kernel.

Video

similar setup like N770 but hopefully improved (finally no memory
bicycle but proper bus?). The external videochips seems to be from epson
too, not 472 but 475 (or 4 in early prototypes?) called Blizzard and
Hailstorm. Difference seems to be bigger memory buffer (1280K) that
allows 24 bits in 800x480 instead of 16 on N770. See also
http://www.erd.epson.com/index.php?option=com_docman&task=cat_view&gid=68&Itemid=40
So the framebuffer is still external but handled by something different.
OMAP1 uses something called SOSSI, OMAP2 calls it RFBI (remote frame
buffer ...) Interesting is that omap framebuffer driver now contains
code for synchronization on vblank and preventing tearing effect. It is
both in omapfb/blizzard/rfbi code for n800 and also for
omapfb/hwa472/sossi code for n770! Lets hope some variant of this kernel
will go into some future n770 firmware. If not we can try to backport it
for mplayer. from the code it looks like the pin from 472 chip
signalling horizontal or vertical blank perion is indeed connected to
something and checked (?) inside sossi driver. The is still no support
for display rotation feature of the epson chip.

Both IVA and MBX are a bit of a mystery to me. Probably another ones to
the bag with jazzelle technology so it won't feel alone there unused :-)
http://focus.ti.com/general/docs/wtbu/wtbugencontent.tsp?templateId=6123&navigationId=12719&contentId=27458

USB

Seems to be 2.0, capable of high speed mode (480MBits), chip is TUSB6010
by TI. No usb host mode is compiled in the kernel. Usb host mode support
was also removed from initfs (usb booting) so this may look bad.

BT

Was already discussed, see the bt headsed thread - Bluecore4 CSR chip
capable of BT2.0, driver is called hci_h4p in drivers/bluetooth/hci_h4p
(not present in mainline kernel?).

WI-FI

seems to be same chip as in (newer) N770 devices (?), similar firmware
blobs (3825.arm, 3826.arm) probably newer versions. Hopefully the speed
will be better that those 500KB/s on N770 thanks to rest of the system.

Audio

Alsa compiled in, OMAP24xx EAC driver, mixer support, PCM should be
handled by DSP.

Feel free to correct or expand if something is wrong/missing.

Frantisek
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


marcel at holtmann

Jan 16, 2007, 6:16 AM

Post #2 of 8 (8272 views)
Permalink
Re: examining n800 kernel [In reply to]

Hi Frantisek,

> BT
>
> Was already discussed, see the bt headsed thread - Bluecore4 CSR chip
> capable of BT2.0, driver is called hci_h4p in drivers/bluetooth/hci_h4p
> (not present in mainline kernel?).

the mainline inclusion is work in progress, but the driver (especially
its firmware handling) needs some major cleanup.

Regards

Marcel


_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


daniel.stone at nokia

Jan 16, 2007, 10:57 AM

Post #3 of 8 (8260 views)
Permalink
Re: examining n800 kernel [In reply to]

On Tue, Jan 16, 2007 at 02:57:16PM +0100, ext Frantisek Dufka wrote:
> similar setup like N770 but hopefully improved (finally no memory
> bicycle but proper bus?). The external videochips seems to be from epson
> too, not 472 but 475 (or 4 in early prototypes?) called Blizzard and
> Hailstorm. Difference seems to be bigger memory buffer (1280K) that
> allows 24 bits in 800x480 instead of 16 on N770. See also
> http://www.erd.epson.com/index.php?option=com_docman&task=cat_view&gid=68&Itemid=40
> So the framebuffer is still external but handled by something different.

Correct. The bus between the display controller and the LCD controller
(RFBI) isn't exactly blazing fast, though. We only use the 475.

> OMAP1 uses something called SOSSI, OMAP2 calls it RFBI (remote frame
> buffer ...) Interesting is that omap framebuffer driver now contains
> code for synchronization on vblank and preventing tearing effect. It is
> both in omapfb/blizzard/rfbi code for n800 and also for
> omapfb/hwa472/sossi code for n770!

Yes: we use this to do vsync for video from the X server.

> Lets hope some variant of this kernel
> will go into some future n770 firmware. If not we can try to backport it
> for mplayer. from the code it looks like the pin from 472 chip
> signalling horizontal or vertical blank perion is indeed connected to
> something and checked (?) inside sossi driver. The is still no support
> for display rotation feature of the epson chip.

For the moment, rotation isn't possible in the UI (lots of hardcoded
800x480s abound), so it's not been a high priority on my list, but it is
certainly on it, and I'll hopefully be adding the support at some stage.

Cheers,
Daniel
Attachments: signature.asc (0.18 KB)


lbattraw at gmail

Jan 16, 2007, 12:33 PM

Post #4 of 8 (8267 views)
Permalink
Re: examining n800 kernel [In reply to]

On 1/16/07, Frantisek Dufka <dufkaf [at] seznam> wrote:
> Hi,
>
> I've been looking at the n800 kernel source in bora repository to figure
> out what n800 is like comparing to the n770. Here is a summary of some
> things I found. As I don't have the device I may be wrong with something
> that could be easily verified.
>
> kernel is 2.6.18-omap1 - everybody probably knows that :-)
(snip)
> USB
>
> Seems to be 2.0, capable of high speed mode (480MBits), chip is TUSB6010
> by TI. No usb host mode is compiled in the kernel. Usb host mode support
> was also removed from initfs (usb booting) so this may look bad.


Looking at the "shiny brochure"-level documentation for the TUSB6010
it looks like it has full support for USB-OTG, including a 5V charge
pump for driving peripheral devices. Whether or not it's possible to
write support for it due to available documentation is another matter.
I really wish Nokia would step forward and do it since it looks like
it could be perfect for host-mode.
Thanks for doing the kernel writeup!

Larry
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


barbieri at gmail

Jan 16, 2007, 7:23 PM

Post #5 of 8 (8270 views)
Permalink
Re: examining n800 kernel [In reply to]

On 1/16/07, Daniel Stone <daniel.stone [at] nokia> wrote:
> > OMAP1 uses something called SOSSI, OMAP2 calls it RFBI (remote frame
> > buffer ...) Interesting is that omap framebuffer driver now contains
> > code for synchronization on vblank and preventing tearing effect. It is
> > both in omapfb/blizzard/rfbi code for n800 and also for
> > omapfb/hwa472/sossi code for n770!
>
> Yes: we use this to do vsync for video from the X server.

Is there any way to ge this vsync signal? Canola and a great deal of
SDL applications may use it to avoid tearing effect... actually we
should do it in SDL to avoid duplicate work.

while on 770 we rarely had tearing, but now, with faster software, we
often update pixmaps while X is refreshing.

X with backingstore would fix this, since it would handle
double-buffering for us.

--
Gustavo Sverzut Barbieri
--------------------------------------
Jabber: barbieri [at] gmail
MSN: barbieri [at] gmail
ICQ#: 17249123
Skype: gsbarbieri
Mobile: +55 (81) 9927 0010
Phone: +1 (347) 624 6296; 08122692 [at] sip
GPG: 0xB640E1A2 @ wwwkeys.pgp.net
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


dufkaf at seznam

Jan 17, 2007, 12:26 AM

Post #6 of 8 (8264 views)
Permalink
Re: examining n800 kernel [In reply to]

Larry Battraw wrote:
> On 1/16/07, Frantisek Dufka wrote:
>> Seems to be 2.0, capable of high speed mode (480MBits), chip is TUSB6010
>> by TI. No usb host mode is compiled in the kernel. Usb host mode support
>> was also removed from initfs (usb booting) so this may look bad.
>
> Looking at the "shiny brochure"-level documentation for the TUSB6010
> it looks like it has full support for USB-OTG, including a 5V charge
> pump for driving peripheral devices. Whether or not it's possible to
> write support for it due to available documentation is another matter.


Looks like the support is written in the kernel but simply disabled. I'm
not familiar with USB to such detail but I guess the problem may be
whether it is wired in n800 to support OTG mode. Kernel configuration
looks like this:

| |< > Support for Host-side USB
|
| |<*> Inventra Highspeed Dual Role Controller (TI, ...)
|
| |[*] TUSB 6010 support
|
| |[*] TUSB 6010 loopback test support

The 'Inventra Highspeed Dual Role Controller' help says

"Say Y here if your system has a dual role high speed USB
controller based on the Mentor Graphics silicon IP. Then
configure options to match your silicon and the board
it's being used with, including the USB peripheral role,
or the USB host role, or both."

Host-side usb disabled means that host side support for Inventra
Highspeed Dual Role Controller and all the usb peripherial drivers are
not built.

So either OTG mode is not possible due to HW in n800 or Nokia has no use
for it so they made the kernel smaller.

Frantisek
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


Kalle.Valo at nokia

Jan 17, 2007, 1:13 AM

Post #7 of 8 (8251 views)
Permalink
Re: examining n800 kernel [In reply to]

"Frantisek Dufka" <dufkaf [at] seznam> writes:

> WI-FI
>
> seems to be same chip as in (newer) N770 devices (?), similar firmware
> blobs (3825.arm, 3826.arm) probably newer versions. Hopefully the
> speed will be better that those 500KB/s on N770 thanks to rest of the
> system.

The SPI bus is faster, so WLAN is a bit faster. I have managed to get
7 Mbit/s (I guess about 800 KB/s) TCP downstream with iperf.

--
Kalle Valo

_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers


Jakub.Pavelek at nokia

Jan 17, 2007, 1:17 AM

Post #8 of 8 (9057 views)
Permalink
RE: examining n800 kernel [In reply to]

>> I've been looking at the n800 kernel source in bora repository to
>> figure out what n800 is like comparing to the n770. Here is
>a summary
>> of some things I found. As I don't have the device I may be
>wrong with
>> something that could be easily verified.
>>
>> kernel is 2.6.18-omap1 - everybody probably knows that :-)
>(snip)
>> USB
>>
>> Seems to be 2.0, capable of high speed mode (480MBits), chip is
>> TUSB6010 by TI. No usb host mode is compiled in the kernel. Usb host
>> mode support was also removed from initfs (usb booting) so
>this may look bad.
>
>
> Looking at the "shiny brochure"-level documentation for the
>TUSB6010 it looks like it has full support for USB-OTG,
>including a 5V charge pump for driving peripheral devices.
>Whether or not it's possible to write support for it due to
>available documentation is another matter.
> I really wish Nokia would step forward and do it since it
>looks like it could be perfect for host-mode.
> Thanks for doing the kernel writeup!
>
>Larry

Hi,

AFAIK there is no USB-OTG in N800. The connector (HW) does not handle it
so no effort spent in the kernel either.

Br,

--jakub
_______________________________________________
maemo-developers mailing list
maemo-developers [at] maemo
https://maemo.org/mailman/listinfo/maemo-developers

Maemo developers RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.