Gday Michael,
<marcusbrutus> btw: michaelo is having probs with kernel lockups trying to
control LEDS thru the ASIC (h2200) ... can anyone give him (us) pointers?
<marcusbrutus> joshua_: LED control thru ASIC ... any ideas?
<joshua_> what about LED control thru ASIC?
<marcusbrutus> michaelo has succeeded in controlling LEDs from command
line. But when he tries to incorporate it in kernel he ends up with
lockups. He's asking what he's done wrong (recent msg to h2200 list)
<joshua_> any oopsen?
<joshua_> or just lockups?
<marcusbrutus> he says he's put printk's in the source to locate problem
... doesnt mention oopses
<joshua_> is he ioremapping the ASIC into place?
<joshua_> (or otherwise setting it up into place?)
<joshua_> see code for h19xcx
<joshua_> 19xx even
<marcusbrutus> joshua_: he's found the base address (AFAIK) no offset
required. I can paste his msg if u like
<joshua_> yes, but has he mapped it into the virtual address space?
On Wed, 04 Feb 2004 19:49:19 +0100
Michael Opdenacker <zumbi3_at_free.fr> wrote:
> Hello,
>
> As an exercice to understand handheld kernel programming better, I'm
> trying to make LEDs work.
>
> This looked simple as the specifications are simple: see
> http://www.handhelds.org/platforms/hp/ipaq-h22xx/12-led_driver.pdf
>
> On WinCE through HaRET, I found that the Asic Companion addresses are at
> the beginning of the physical address space. So, we can directly use the
> addresses from the specs without having to add any offset.
>
> So, running the below command in HaRET lights up the yellow led:
> pfh 0x7200 1 0x30003
>
> How could I do the same thing in the h2200.c file?
>
> Here's what I tried:
>
> * Added all the led related addresses in h2200-asic.h, in particular:
> #define _H2200_ASIC_LED_Base 0x07200
> #define _H2200_ASIC_LED_LED0_CON0 0x0000
> #define H2200_ASIC_LED_LED0_CON0 H2200_ASIC_REGISTER( u16, LED,
> LED0_CON0) /* reset value: 0x0000 */
> * I tried to add the follow to h2200.c:
> H2200_ASIC_LED_LED0_CON0 = 0x30003;
>
> Exactly when the kernel runs this command, it freezes (checked by
> inserting printk messages). Note that I tried with
>
> #define H2200_ASIC_VIRT 0xf3000000 (original setting)
> and
> #define H2200_ASIC_VIRT 0x00000000 (just a try)
>
> I guess this is a basic point, and I'm doing things the wrong way. For
> example, I don't really understand how to read or write Asic registers.
> I'm studying code from other devices but this is still Tasmanian to me
> ;-)
>
> I'm starting to understand things little by little and will sooner or
> later find a solution. However, if I'm doing an obvious mistake, don't
> hesitate to correct me, give me short guidelines and/or share pointers
> to documentation about this topic. That would be a good push forward and
> will accelerate my learning.
>
> Cheers,
>
> Michael.
>
>
>
>
>
>
>
>
> --
>
> Michael Opdenacker
> http://opdenacker.org/
>
> _______________________________________________
> H2200-port mailing list
> H2200-port_at_handhelds.org
> https://handhelds.org/mailman/listinfo/h2200-port
Received on Wed Feb 04 2004 - 19:17:01 EST
This archive was generated by hypermail 2.2.0 : Mon Jul 25 2005 - 17:19:25 EDT