diff --git a/firmware/target/arm/ipod/button-clickwheel.c b/firmware/target/arm/ipod/button-clickwheel.c index 162ff9f246..13c765c6db 100644 --- a/firmware/target/arm/ipod/button-clickwheel.c +++ b/firmware/target/arm/ipod/button-clickwheel.c @@ -362,10 +362,17 @@ static void s5l_clickwheel_init(void) WHEEL04 |= 1; PDAT10 &= ~2; #elif CONFIG_CPU==S5L8702 + /* enable and init internal (s5l8702) wheel controller */ + PWRCON(1) &= ~(1 << 1); + WHEELINT = 7; + WHEEL10 = 1; + WHEEL00 = 0x380000; + WHEEL08 = 0x20000; + WHEELTX = 0x8000023A; + WHEEL04 |= 1; + /* enable external (CY8C21x34) wheel controller */ GPIOCMD = 0xe040f; - - /* TODO: enable and init internal (s5l8702) wheel controller */ #endif } @@ -438,7 +445,10 @@ int button_read_device(void) /* disable external (CY8C21x34) wheel controller */ GPIOCMD = 0xe040e; - /* TODO: disable internal (s5l8702) wheel controller */ + /* disable internal (s5l8702) wheel controller */ + WHEEL00 = 0; + WHEEL10 = 0; + PWRCON(1) |= (1 << 1); #endif } else