Log directory is not writable - please CHMOD e107_plugins/log/logs to 777
Главное меню
looxdroid
Добро пожаловать,
Пользователь:

Пароль:


Запомнить

[ ]
[ ]
[ ]
Новости за 2012
ПнВтСрЧтПтСбВс
 1
2345678
9101112131415
16171819202122
23242526272829
3031 
Movie Menu
В сети
Гостей: 2, Пользователей: 0 ...

рекорд он-лайн: 16
(Пользователей: 0, Гостей: 16) в 16 Nov : 04:27

Пользователей: 217
Новичок: ninjaman
Powered by
e107
PHP
MySQL
zImage status
zImage 2.6.27:
+boot
+pxafb
+spi ts
+keypad
+gpio keypad
+usb
+usb keyboard
+change on/off
+cpld(beta)
+cpld leds driver by Akshaal
+spi battery info(vaux,spi,sysfs)

-sound
-suspend/resume
-wi-fi
-bluetooth


Статистика
Эта страница сегодня ...
всего: 1
уникальных: 1

Эта страница когда-либо ...
всего: 1
уникальных: 1

Сайт ...
всего: 1
уникальных: 1
счетчики
Рейтинг@Mail.ru
Категории новостей
Friday 22 May 2009
config android 1.5 toolchain
admin, Friday 22 May 2009 - 18:15:00 // комментарий: 39

export ARCH=arm && export CROSS_COMPILE=arm-eabi- && export PATH="${PATH}:/and15/prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin"


Thursday 05 March 2009
ссылки по портированию android на другие девайсы
admin, Thursday 05 March 2009 - 15:18:02 // комментарий: 17



главные ссылки
admin, Thursday 05 March 2009 - 13:00:36 // комментарий: 13



Friday 22 May 2009
add alsa sound to android 1.5
admin, Friday 22 May 2009 - 18:35:01 // комментарий: 21

I didn't get how you integrated ALSA along with Android source but, here is
the way to go.

1. You need to have the following entries in your .repo/local_manifest.xml
file under android source directory.

<?xml version="1.0" encoding="UTF-8"?>

<manifest>

    <project name="platform/hardware/alsa_sound"path="hardware/alsa_sound"/>

    <project name="platform/external/alsa-lib" path="external/alsa-lib"/>

    <project name="platform/external/alsa-utils" path="external/alsa-utils"/>

</manifest>


2. Run 'repo sync' in android source directory.

You are recommended to do it on a fresh android source tree (not
customized).


patch -- off white screen
admin, Friday 22 May 2009 - 18:22:49 // комментарий: 20

вобщем вместо setterm -powersave off -blank 0 < /dev/tty0,
подправил /dev/char/vt.c вот так:
static int blankinterval = 100*60*HZ;

вроде не белеет.
а 100 минут ..эт много


Tuesday 19 May 2009
вобщем.....фиксю потихоньку тач
admin, Tuesday 19 May 2009 - 17:53:28 // комментарий: 19

вобщем.....фиксю потихоньку тач

главная особенность чипа ads7846(tsc2046) это долгая стабилизация измерений.
пришлось добавить 4 лишних команды на чтение x и y , чтоб более менее правильно вычислял координаты.
исчез крен по y
поставил более точные min_x, min_y, max_x, max_y.
эти значения узнаются путем просмотра угловых сырых координат , т.е. до кода автоматического масштабирования.

в андроиде сразу заметно улучшение работы тача

надо доделать:
в стандартном драйвере есть несколько способов избавиться от паразитных координат. надо их перенести на этот драйвер.
фильтр на силу нажатия
фильтр на повторение
фильтр на предыдущую точку

во вложении исходник + ядро на проверку
loox5xx_spi_ads7846.c180509.zip
zimage180509.zip


Friday 15 May 2009
по теме тачскрина c550 и драйвера loox5xx_spi_ads7846.c
admin, Friday 15 May 2009 - 11:05:29 // комментарий: 18

по теме тачскрина c550 и драйвера loox5xx_spi_ads7846.c
он работает, но с ним есть много проблем:
1. Не правильно выставлены min, max занчения x, y
2. Даже при настройке этих значений. Есть какойто крен по min_y-ку.
2. Отсутствует так называемый debouncing - получение устойчивого чтения координат


Wednesday 06 May 2009
looxdroid 1.5
admin, Wednesday 06 May 2009 - 14:35:51 // комментарий: 16



Thursday 23 April 2009
Android now uses the rfkill interface to turn on/off bluetooth
admin, Thursday 23 April 2009 - 19:04:07 // комментарий: 12

Android now uses the rfkill interface to turn on/off bluetooth. It looks for a type of "bluetooth" in each of the rfkill interfaces (/sys/class/rfkill/rfkill*/
type). We need to have kernel support for this to work as devices should be powering on/off with it.

I would like to know how does the /sys/class/rfkill/* entry present.

I'm already apply below configuration in zoom1 kernel

CONFIG_RFKILL=y
CONFIG_RFKILL_PM=y
CONFIG_RFKILL_INPUT=y
CONFIG_ANDROID_PARANOID_NETWORK is not set

After booting the zoom1 kernel nothing present in /sys/class/rfkill/ directory.
bttest also looking for /sys/class/rfkill/* entry. If nothing present its give -1.

Please help me if I need to do something else enable or disable in kernel (patch).

Any other way to enable / disable bluetooth device?


Wednesday 08 April 2009
компиляция android под loox 5xx
admin, Wednesday 08 April 2009 - 19:44:59 // комментарий: 24

компиляция android под loox 5xx
делаем все как написано тут:
http://source.android.com/download

получаем папку вида:
bionic
bootable
build
dalvik
development
external
frameworks
hardware
kernel
Makefile
out
packages
prebuilt
system

cd /build/target/board
mkdir loox
cd loox

создаем файлы:

AndroidBoard.mk:
LOCAL_PATH := $(call my-dir)

file := $(TARGET_OUT_KEYLAYOUT)/loox.kl
ALL_PREBUILT += $(file)
$(file) : $(LOCAL_PATH)/loox.kl | $(ACP)
$(transform-prebuilt-to-target)

include $(CLEAR_VARS)
LOCAL_SRC_FILES := loox.kcm
include $(BUILD_KEY_CHAR_MAP)


BoardConfig.mk:
# config.mk
#
# Product-specific compile-time definitions.
#

# The generic product target doesn't have any hardware-specific pieces.
TARGET_NO_BOOTLOADER := true
TARGET_NO_KERNEL := true
TARGET_NO_RADIOIMAGE := true
HAVE_HTC_AUDIO_DRIVER := true
BOARD_USES_GENERIC_AUDIO := true
#BOARD_USES_ALSA_AUDIO := true
BOARD_WLAN_TI_STA_DK_ROOT:=./system/wlan/ti/sta_dk_4_0_4_32
BOARD_HAVE_BLUETOOTH := true
USE_CAMERA_STUB := true

loox.kcm - во вложении
loox.kl - во вложении

далее cd /build/target/product

добавляем в файл AndroidProducts.mk:
$(LOCAL_DIR)/loox.mk \

создаем файл loox.mk:
# Superclass
$(call inherit-product, build/target/product/generic.mk)

# Overrides
PRODUCT_NAME := loox
PRODUCT_DEVICE := loox
PRODUCT_MANUFACTURER := loox


в корне исходников(Там где Makefile) добавляем файл buildspec.mk:
TARGET_PRODUCT:= loox

после этого в корне исходников make

после компиляции идем в /out/target/product/loox

loox.kl.gz
loox.kcm.gz


включение логов в андроиде
admin, Wednesday 08 April 2009 - 13:19:42 // комментарий: 13

включение логов в андроиде:
в ядре галку make menuconfig -> device drivers -> Misc devices -> High-speed in-kernel logging driver
проверить наличие файлов в /dev/log/
10, 58 events
10, 59 main
10, 57 radio

в init.rc:
service logcat /system/bin/logcat -r 1000 -v long -f /data/logcat.log
oneshot


Friday 03 April 2009
мониторинг egpio ..также как gpio
admin, Friday 03 April 2009 - 14:45:28 // комментарий: 19

http://4pda.ru/forum/index.php?showtopic=80918&view=findpost&p=2594166
Akshaal скомпилил haret pre-0.5.3 для отображения всех GPIO от pxa27x (как это делает старый gnuharet)
важная особенность - поддержка мониторинга CPLD регистров pxa27xx

newvar EGPIOS GPIOS
addlist EGPIOS 0xa0025320
addlist EGPIOS 0xa0025324
addlist EGPIOS 0xa0025328
addlist EGPIOS 0xa002532c
addlist EGPIOS 0xa0025330
addlist EGPIOS 0xa0025334
addlist EGPIOS 0xa0025338
set igpio(10) 1
set igpio(16) 1
set igpio(17) 1
set igpio(23) 1
set igpio(24) 1
set igpio(25) 1
set igpio(26) 1
set igpio(28) 1
set igpio(32) 1
set igpio(58) 1
set igpio(59) 1
set igpio(60) 1
set igpio(61) 1
set igpio(62) 1
set igpio(63) 1
set igpio(64) 1
set igpio(65) 1
set igpio(66) 1
set igpio(67) 1
set igpio(68) 1
set igpio(69) 1
set igpio(70) 1
set igpio(71) 1
set igpio(72) 1
set igpio(73) 1
set igpio(74) 1
set igpio(75) 1
set igpio(77) 1
set igpio(92) 1
set igpio(94) 1
set igpio(113) 1
set igpio(114) 1
set igpio(115) 1
set igpio(116) 1

после этого можно делать:
wgpio 10
и/или (параллельно)
watch egpios 10

haret_pre_0.5.3_pxa272.zip


Wednesday 01 April 2009
конфигурация gpio регистров... при старте ядра
admin, Wednesday 01 April 2009 - 15:44:27 // комментарий: 15

вобщем
сейчас начал разбираться с конфигурацией gpio регистров... при старте ядра
смысл примерно в следующем
есть mfp-pxa27x.h
он определяет основные общие состояния регистров
массивом loox5xx_pin_config и вызовом pxa2xx_mfp_config(loox5xx_pin_config, ARRAY_SIZE(loox5xx_pin_config));

вот при таком массиве регистров.. нормально mmc0 инитится и все остальное вроде :
static unsigned long loox5xx_pin_config[] = {
/* Crystal and Clock Signals */
GPIO10_HZ_CLK,
/* PC CARD */
GPIO15_nPCE_1,
GPIO78_nPCE_2,
GPIO55_nPREG,
GPIO50_nPIOR,
GPIO51_nPIOW,
GPIO49_nPWE,
GPIO48_nPOE,
GPIO57_nIOIS16,
GPIO56_nPWAIT,
GPIO79_PSKTSEL,
/* SDRAM and Static Memory I/O Signals */
GPIO20_nSDCS_2,
GPIO21_nSDCS_3,
GPIO80_nCS_4,
GPIO33_nCS_5,
/* Miscellaneous I/O and DMA Signals */
GPIO18_RDY,
/* FFUART */
GPIO35_FFUART_CTS,
GPIO37_FFUART_DSR,
GPIO34_FFUART_RXD,
GPIO39_FFUART_TXD,
GPIO41_FFUART_RTS,
GPIO40_FFUART_DTR,
/* BTUART */
GPIO44_BTUART_CTS,
GPIO42_BTUART_RXD,
GPIO45_BTUART_RTS,
GPIO43_BTUART_TXD,
/* STUART */
GPIO46_STUART_RXD,
GPIO47_STUART_TXD,
/* PWM 0/1/2/3 */
GPIO16_PWM0_OUT,
GPIO17_PWM1_OUT,
/* SSP 1 */
GPIO23_SSP1_SCLK,
GPIO24_SSP1_SFRM,
GPIO25_SSP1_TXD,
GPIO26_SSP1_RXD,
/* QCI - default to Master Mode: CIF_FV/CIF_LV Direction In */
// GPIO27_CIF_DD_0,
// GPIO114_CIF_DD_1,
// GPIO116_CIF_DD_2,
// GPIO115_CIF_DD_3,
// GPIO83_CIF_DD_4,
// GPIO82_CIF_DD_5,
// GPIO93_CIF_DD_6,
// GPIO108_CIF_DD_7,
// GPIO54_CIF_PCLK,
// GPIO84_CIF_FV,
// GPIO85_CIF_LV,
// GPIO53_CIF_MCLK,
/* MMC */
GPIO32_MMC_CLK,
GPIO92_MMC_DAT_0,
GPIO109_MMC_DAT_1,
GPIO110_MMC_DAT_2,
GPIO111_MMC_DAT_3,
GPIO112_MMC_CMD,
/* LCD */
GPIO58_LCD_LDD_0,
GPIO59_LCD_LDD_1,
GPIO60_LCD_LDD_2,
GPIO61_LCD_LDD_3,
GPIO62_LCD_LDD_4,
GPIO63_LCD_LDD_5,
GPIO64_LCD_LDD_6,
GPIO65_LCD_LDD_7,
GPIO66_LCD_LDD_8,
GPIO67_LCD_LDD_9,
GPIO68_LCD_LDD_10,
GPIO69_LCD_LDD_11,
GPIO70_LCD_LDD_12,
GPIO71_LCD_LDD_13,
GPIO72_LCD_LDD_14,
GPIO73_LCD_LDD_15,
GPIO76_LCD_PCLK,
GPIO77_LCD_BIAS,
/* USB Host Port 1/2 */
GPIO88_USBH1_PWR,
GPIO89_USBH1_PEN,
/* I2S */
GPIO29_I2S_SDATA_IN,
GPIO28_I2S_BITCLK_OUT,
GPIO30_I2S_SDATA_OUT,
GPIO31_I2S_SYNC,
GPIO113_I2S_SYSCLK,
/* Keypad */
GPIO100_KP_MKIN_0,
GPIO101_KP_MKIN_1,
GPIO102_KP_MKIN_2,
GPIO97_KP_MKIN_3,
GPIO98_KP_MKIN_4,
GPIO99_KP_MKIN_5,
GPIO103_KP_MKOUT_0,
GPIO104_KP_MKOUT_1,
GPIO105_KP_MKOUT_2,
/* I2C */
GPIO117_I2C_SCL,
GPIO118_I2C_SDA,
/* Platform-specific */
// MFP_CFG_OUT(GPIO3, AF0, DRIVE_HIGH), // setup but function unknown
// MFP_CFG_OUT(GPIO4, AF0, DRIVE_LOW), // setup but function unknown
// GPIO9_GPIO,
// GPIO11_GPIO,
// GPIO12_GPIO,
// GPIO13_GPIO,
// MFP_CFG_OUT(GPIO14, AF0, DRIVE_LOW),
// MFP_CFG_OUT(GPIO19, AF0, DRIVE_LOW),
// MFP_CFG_OUT(GPIO22, AF0, DRIVE_HIGH),
// MFP_CFG_OUT(GPIO36, AF0, DRIVE_HIGH),
// GPIO38_GPIO, // setup but function unknown
// GPIO52_GPIO,
// GPIO74_GPIO,
// MFP_CFG_OUT(GPIO75, AF0, DRIVE_HIGH),
// MFP_CFG_OUT(GPIO81, AF0, DRIVE_LOW), // setup but function unknown
// MFP_CFG_OUT(GPIO86, AF0, DRIVE_HIGH), // setup but function unknown
// GPIO87_GPIO,
// MFP_CFG_OUT(GPIO90, AF0, DRIVE_HIGH), // setup but function unknown
// MFP_CFG_OUT(GPIO91, AF0, DRIVE_HIGH), // setup but function unknown
// GPIO94_GPIO,
// MFP_CFG_OUT(GPIO95, AF0, DRIVE_LOW), // setup but function unknown
// GPIO96_GPIO, // setup but function unknown
// MFP_CFG_OUT(GPIO106, AF0, DRIVE_HIGH),
// MFP_CFG_OUT(GPIO107, AF0, DRIVE_HIGH),
// GPIO119_GPIO, // setup but function unknown
// GPIO120_GPIO,
};

надо понять как сюда добавить mmc1
в hp214 это выглядит так:
// MMC1 - config DRIVE_LOW for D3
MFP_CFG_X(GPIO3, AF4, DS03X, DRIVE_LOW), // GPIO3_MMC1_DAT0
MFP_CFG_X(GPIO4, AF4, DS03X, DRIVE_LOW), // GPIO3_MMC1_DAT1
MFP_CFG_X(GPIO5, AF4, DS03X, DRIVE_LOW), // GPIO3_MMC1_DAT2
MFP_CFG_X(GPIO6, AF4, DS03X, DRIVE_LOW), // GPIO3_MMC1_DAT3
MFP_CFG_X(GPIO7, AF4, DS03X, DRIVE_LOW), // GPIO7_MMC1_CLK
MFP_CFG_X(GPIO8, AF4, DS03X, DRIVE_LOW), // GPIO8_MMC1_CMD

// MMC2: SDIO Marvell 8686 Wifi (libertas) - force pull high in D0, drive low in D3
MFP_CFG_X(GPIO9, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO9_MMC2_DAT0
MFP_CFG_X(GPIO10, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO10_MMC2_DAT1
MFP_CFG_X(GPIO11, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO11_MMC2_DAT2
MFP_CFG_X(GPIO12, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO12_MMC2_DAT3
MFP_CFG_X(GPIO13, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO13_MMC2_CLK
MFP_CFG_X(GPIO14, AF4, DS13X, DRIVE_LOW) | MFP_PULL_HIGH, // GPIO14_MMC2_CMD



закоменчены куски loox5xx_pin_config связанные с компакт флеш ....которой у нас нет и платформо-зависимый кусок.
взято это было из сырцов 720-ого


Tuesday 24 March 2009
Собственный сервер Git на базе Ubuntu или Debian/GNU Linux
admin, Tuesday 24 March 2009 - 17:18:09 // комментарий: 15



cpio extract / pack
admin, Tuesday 24 March 2009 - 13:21:37 // комментарий: 16

extract:

gunzip -S.img ramdisk.img
cpio -i -F ramdisk
cpio -t -F ramdisk > ramdisk_list

pack:
find . | cpio -o -H newc | gzip -9 > ../initrd


Wednesday 18 March 2009
получение значений температуры и вольтажа + валидный для андроида путь к напряжению и температуре в sysfs.
admin, Wednesday 18 March 2009 - 19:14:22 // комментарий: 15

loox550-gpio.h:

//CPLD reg 6
#define LOOX5XX_EGPIO_6_0_BAT0 (LOOX5XX_EGPIO_BASE + 6*16 + 0)
#define LOOX5XX_EGPIO_6_0_BAT1 (LOOX5XX_EGPIO_BASE + 6*16 + 1)
#define LOOX5XX_EGPIO_6_0_BAT2 (LOOX5XX_EGPIO_BASE + 6*16 + 2)

в loox550_spi_ads7846.c измени:
/* ==================================================================
CPLD setting for the requested voltage on vAUX
================================================================== */
static void loox720_ads7846_set_hwmon_port(unsigned int cpld)
{
gpio_set_value(LOOX5XX_EGPIO_6_0_BAT0, cpld & 1); //CPLD_VAUX_CTL1
gpio_set_value(LOOX5XX_EGPIO_6_0_BAT1, cpld & 2); //CPLD_VAUX_CTL2
gpio_set_value(LOOX5XX_EGPIO_6_0_BAT2, cpld & 4); //CPLD_VAUX_CTL3

}

у меня отображает корректные значения тока и напряжения

плюс
я залез в /drivers/power/power_supply_sysfs.c
добавил там в структуру power_supply_attrs:
POWER_SUPPLY_ATTR(batt_vol),
POWER_SUPPLY_ATTR(batt_temp),

в /drivers/power/loox550_battery.c заменил:
POWER_SUPPLY_PROP_VOLTAGE_NOW на POWER_SUPPLY_PROP_BATT_VOL
POWER_SUPPLY_PROP_TEMP на POWER_SUPPLY_PROP_BATT_TEMP

в /include/linux/power_supply.h добавил в enum power_supply_property:
POWER_SUPPLY_PROP_BATT_VOL,
POWER_SUPPLY_PROP_BATT_TEMP,

и теперь имеем валидный для андроида путь к напряжению и температуре.
просто до жути пока не хочу перекомпилировать андроида ... вот и мучаю ядро =))


Tuesday 17 March 2009
пути в sysfs к параметрам батарейки в android-е
admin, Tuesday 17 March 2009 - 21:07:38 // комментарий: 7

в андроиде/frameworks/base/core/jni/server/com_android_server_BatteryService.cpp жестко прописано:

#define AC_ONLINE_PATH "/sys/class/power_supply/ac/online"
#define USB_ONLINE_PATH "/sys/class/power_supply/usb/online"
#define BATTERY_STATUS_PATH "/sys/class/power_supply/battery/status"
#define BATTERY_HEALTH_PATH "/sys/class/power_supply/battery/health"
#define BATTERY_PRESENT_PATH "/sys/class/power_supply/battery/present"
#define BATTERY_CAPACITY_PATH "/sys/class/power_supply/battery/capacity"
#define BATTERY_VOLTAGE_PATH "/sys/class/power_supply/battery/batt_vol"
#define BATTERY_TEMPERATURE_PATH "/sys/class/power_supply/battery/batt_temp"
#define BATTERY_TECHNOLOGY_PATH "/sys/class/power_supply/battery/technology"


исходники ядра 2.7.26 от loox 720
admin, Tuesday 17 March 2009 - 15:42:49 // комментарий: 13

довольно хорошо допилены
можно юзать как пример =)
http://www.asm32.ru/upload/170309/loox720-2.6.26.tgz
120 mb
с андроидом не дружат. .


Monday 16 March 2009
изменение gpio регистров
admin, Monday 16 March 2009 - 17:01:38 // комментарий: 18

подключение зарядки к loox 550:
GPLR(9) changed to 0
GPLR(11) changed to 0
отключение зарядки:
GPLR(9) changed to 1
GPLR(11) changed to 0
GPLR(11) changed to 1

battery full не выявляется, либо он вычисляется из данных о батарейке. явных gpio регистров ..не видно...

подключение usb кабеля:
GPLR(13) changed to 0
GPLR(57) changed to 1
GPLR(11) changed to 0
GPLR(11) changed to 1
GPLR(11) changed to 0
отключение usb кабеля:
GPLR(11) changed to 1
GPLR(13) changed to 1
GPLR(57) changed to 0
GPLR(11) changed to 0
GPLR(11) changed to 1

bluetooth on:
GPLR[22] changed to 1
GPLR[42] changed to 1
GPLR[43] changed to 1
GPDR[42] changed to 0
GPDR[44] changed to 0
GAFR[42] changed to 1
GAFR[43] changed to 2
GAFR[44] changed to 1
GAFR[45] changed to 2
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[43] changed to 0
GPLR[43] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[42] changed to 0
GPLR[42] changed to 1
GPLR[43] changed to 0
GPLR[43] changed to 1
GPLR[43] changed to 0
GPLR[43] changed to 1

bluetooth off:
GPLR[22] changed to 0
GPLR[42] changed to 0
GPLR[43] changed to 0
GPDR[42] changed to 1
GPDR[44] changed to 1
GAFR[42] changed to 1
GAFR[43] changed to 2
GAFR[44] changed to 1
GAFR[45] changed to 2

wifi on:
GPLR[12] changed to 1
GPDR[12] changed to 0
GPDR[52] changed to 1
GPLR[48] changed to 1
GPLR[82] changed to 1
GPLR[32] changed to 1
GPLR[32] changed to 0
GPLR[32] changed to 1
GPLR[32] changed to 0
GPLR[32] changed to 1
GPLR[32] changed to 0
GPLR[32] changed to 1
GPLR[32] changed to 0
GPLR[32] changed to 1
GPLR[32] changed to 0


wifi off:
GPLR[12] changed to 0
GPLR[48] changed to 0
GPLR[52] changed to 1
GPLR[82] changed to 1
GPDR[12] changed to 1
GPDR[52] changed to 0
GPLR[52] changed to 0


Sunday 15 March 2009
Реализация драйвера для диодов
admin, Sunday 15 March 2009 - 13:31:48 // комментарий: 19

Akshaal:
Реализация драйвера для диодов заняла больше времени чем думал - благодаря "странному" способу проецирования светодиодов в биты регистров (еслибы один к одному.. щас..).

Реализовал интерфейс управления через SYSFS. Добавил использования светодиода зарядки в драйвер c550_battery.c - кстати драйвер батареи некорректно работает (на usb говорит, что заряжен уже, хотя он нихрена не заряжен)..

Описание всей это фигня тут (в том числе и sysfs интерфейс): http://rus.akshaal.info/2009/03/linux-loox...0c550-cpld.html
The description of the work I've done, is here (including the description of sysfs interface: http://www.akshaal.info/2009/03/linux-kern...ns-loox_14.html

Текущий патч: http://downloads.akshaal.info/linux-n560-c550


Saturday 14 March 2009
драйвер работы с CPLD 2C64A (CoolRunner-II CPLD) на pda loox 550
admin, Saturday 14 March 2009 - 20:30:42 // комментарий: 14

Akshaal выложил очередной патч к android cupcake kernel 2.6.27
добавлена работа с CPLD
http://downloads.akshaal.info/linux-n560-c550
c550-android-kernel-2009-03-07.patch.gz

дефолтные значения CPLD регистров
Копируем на флэшку к харету default.txt:
Код
log state.log
pd 0xa0025320 28
unlog
exit

Вставляем флэшку в тело и перегружаем его. Запускаем харет. Нажимаем ран. Вытаскиваем флэшку и на компе читаем на ней файл state.log::
Код
HaRET(2)# pd 0xa0025320 28
a0025320 | 00000004 00000000 00000000 00000008 | ................
a0025330 | 00000008 00000008 00000001 | ............
HaRET(3)# unlog
- это начальное состояние CPLD + выключенная подсветка клавы

Start writing egpio cache
Write cache: value=00000004, base_addr=c4006000, reg=0, bus_shift=1, result_addr=c4006000
Write cache: value=00000000, base_addr=c4006000, reg=1, bus_shift=1, result_addr=c4006002
Write cache: value=00000000, base_addr=c4006000, reg=2, bus_shift=1, result_addr=c4006004
Write cache: value=00000008, base_addr=c4006000, reg=3, bus_shift=1, result_addr=c4006006
Write cache: value=00000008, base_addr=c4006000, reg=4, bus_shift=1, result_addr=c4006008
Write cache: value=00000008, base_addr=c4006000, reg=5, bus_shift=1, result_addr=c400600a
Write cache: value=00000001, base_addr=c4006000, reg=6, bus_shift=1, result_addr=c400600c
Stop writing egpio cache



Tuesday 10 March 2009
начал потихоньку исследовать GPIO и порядки их использования
admin, Tuesday 10 March 2009 - 16:47:26 // комментарий: 10

вобщем ..начал потихоньку исследовать GPIO и порядки их использования, знаю что часть этих данных есть тут:http://handhelds.org/moin/moin.cgi/LooxC550Hardware
до CPLD пока так и не добрался

но мне важен сам процесс + последовательность выполнения зверьком get-ов и set-ов GPIO регистров

вобщем рецепт примерно такой:
1. заходим в консоль haret-а
запускаем "gnuharet-200607110000.exe" on Windows Mobile.
с компа telnet 169.254.2.1 9999
попадаем в консоль

2.пишем wgpio 10
получаем чтото типа:
GPLR[64] changed to 0
GPLR[63] changed to 0
GPLR[16] changed to 1
GPLR[69] changed to 0
GPLR[74] changed to 1
GPLR[10] changed to 1
только больше...

далее часто повторяющиеся индексы(GPLR(индекс)) выделяем в отдельный список
для каждого числа из полученного списка выполняем комманду:
set igpio(71) 1 где 71 ...число из списка
тем самым отсекаем часто повторяющиеся и не важные в данный момент gpio регистры

далее через wgpio 10 проверяем, чтобы больше не валил этот мусор.
и затем запускаем wgpio 200
и например запускаем wifi на девайсе
получаем чтото типа:

при включении wifi:
GPLR[92] changed to 1
GPLR[109] changed to 1
GPLR[110] changed to 1
GPLR[111] changed to 1
GPLR[112] changed to 1
GPLR[12] changed to 1
GPLR[48] changed to 1
GPLR[90] changed to 1

при выключении wifi:
GPLR[12] changed to 0
GPLR[48] changed to 0
GPLR[90] changed to 0
GPLR[92] changed to 0
GPLR[109] changed to 0
GPLR[110] changed to 0
GPLR[111] changed to 0
GPLR[112] changed to 0


сравниваем данные с http://handhelds.org/moin/moin.cgi/LooxC550Hardware
и делаем выводы

также отловил активность :
GPIO bluetooth 42 43 22
GPIO spi ts, spi battery 23 24 25 26
GPIO wifi 12 48 82 90 32

это не решает проблему....но немного ориентирует в месеве gpio регистров ...ну и т.д.


интересное письмо по вопросу разрешения экрана в android-е
admin, Tuesday 10 March 2009 - 09:27:50 // комментарий: 15



Monday 09 March 2009
Патч, чтобы usbnet работал на c550/n560
admin, Monday 09 March 2009 - 02:10:57 // комментарий: 16

спасибо Akshaal (http://4pda.ru/forum/index.php?showtopic=80918&view=findpost&p=2493932)
вот тут лежит описание и патч :
http://rus.akshaal.info/2009/03/linux-loox-n560c550-usbnet.html




Friday 06 March 2009
по выбору файловой системы
admin, Friday 06 March 2009 - 14:51:48 // комментарий: 15

Don't use JFFS2 as file system for Android. Android does not support JFFS. Use an ext2/3 formatted medium. Or use YAFFS2 if you use a NAND device


слегка оптимизированное ядро zImage 2.6.27 + образы разделов флешки
admin, Friday 06 March 2009 - 14:44:04 // комментарий: 12

http://www.asm32.ru/upload/060309/zImage
http://www.asm32.ru/upload/060309/disk1-fat32.tgz
http://www.asm32.ru/upload/060309/disk2-ext3.tgz

1. заработала нормально автоматическая регулировка частоты процессора
2. плюс допилил чтобы ограничение на 520 мгц было....
выше частота дает глюки, зависания и белый экран при динамической регулировке частоты

еще 1-й раздел флешки теперь монтируется как /sdcard
и еще программ добавил
fbreader (на 1-ом разделе флешки надо создать папку Books, и закидывать туда fb2 книги)
пару файловых менеджеров
альтернативный почтовый клиент
и др.


Thursday 05 March 2009
old video loox 550
admin, Thursday 05 March 2009 - 14:52:29 // комментарий: 15



из android-porting группы 1
admin, Thursday 05 March 2009 - 12:29:55 // комментарий: 18

Hi,

Recently I ported Android to OMAP3EVM. I know I'd better write tips on
my blog, but I'm kind busy for now. Followings are basic tips how I
ported.

1) Kernel
http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=summary

[ Читать далее ... ]


типа маленького FAQ часть 1
admin, Thursday 05 March 2009 - 12:08:26 // комментарий: 15

>>Нужно разбить SD карточку памяти на 2 раздела? Под какую файловую систему?
да...на 2 раздела:
1 раздел fat(fat32) для haret.exe, zImage, default.txt
2 раздел ext3 для рутового раздела linux(android, или др.)

>>Поддерживаются ли SDHC карты?
у меня карта на 2 Гб. большего размера или какието другие я не проверял.
но я бы не проч затестить .... если есть образец.
в 2.6.27 должно вроде поддерживать.

>>Самый интересующий вопрос, как происходит сборка и запуск отладочных версий самой ОС, >>нужно их постоянно закидывать на флешку или можно организовать отладку через юсб? (как в >>висуал студии с актив синком)

если ты имеешь ввиду файлы android-а ..
то я использую ветку cupcake
после скачивания с репозитария ...
делается make
после чего папка:
cupcake/out/target/product/generic/ - содержит папки root, system, data
которые я перемещаю на 2-й раздел флешки
Для отладки я постоянно закидываю на флешку, вставляю ее в loox и бутаю машинку, после чего запускаю haret.
Но сейчас когда надо разбираться и допиливать саму ОС под ядро...то изучаю на примере встроенного эмулятора android -а.



>>Немаловажный вопрос для закоренелого виндузятника, можноли заниматься раработкой в >>винде? например через Mingw/cygwin или нужно обязательно Linux?

я занимаюсь разрабокой под ubuntu 8.10
плюсы: много манов, много инфы по решению часто встречающихся проблем при компиляции и др.
также ...для компиляции используется уже поставляемый в комплекте toolchain:
export ARCH=arm
export CROSS_COMPILE=arm-eabi-
export PATH="${PATH}:/root/cupcake/prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin"

на уровне ос ...наверное можно чтото править в винде. но компилить под arm.....я не знаю.

----------------------------------------------------------------------

>>Если можно уточнить, вот Вы сейчас делаете и капкейк и ядро, но ведь по идее аппаратно >>зависимо только ядро, а самого андройда потом можно будет использовать на любом кпк, >>подменяя ядра? Или наверно если очень постараться и убить кучу времени то можно >>сделать как у большого линукса, генерик ядро? Вопрос из чистого любопытства, чтобы >>убедиться что немного разобрался в контексте.


ядро андроида содержит несколько специфичных драйверов
вместо glibc компилятор юзает bionic(аналог glibc) ....только он для портативных систем. и несовместим с glibc.

для портирования под зверька ....в ядре содержаться драйвера именно от этого девайса.
ядро сильно затачивается под конкретного зверька....начиная с драйверов и заканчивая смещением в памяти.

также разные ядра по разному выводят sysfs.... и надо научить cupcake взаимодействовать с ядром.
тут все специфично.


Monday 02 March 2009
образ андроида cupcake для копирования на флешку
admin, Monday 02 March 2009 - 12:08:37 // комментарий: 16



исходники ядра .... пилим потихоньку....
admin, Monday 02 March 2009 - 11:54:20 // комментарий: 16



Thursday 26 February 2009
даташиты
admin, Thursday 26 February 2009 - 16:28:52 // комментарий: 21



компиляция mydroid --- проблемы
admin, Thursday 26 February 2009 - 16:24:43 // комментарий: 14

при выполнении make-а.... в папке mydroid ... ..лезет куча ошибок...
часть из них лечется .....установкой javadoc с ошибкой .....которая правится ренеймом файла в /tmp на требуемое имя.
cd /tmp
mv "чтото там" jdk-6-doc.zip
sudo chown root:root jdk-6-doc.zip


и активное использование
sudo update-alternatives --config java

sudo update-alternatives --config javadoc

для выбора правельных путей к 6-й java-е и к javadoc-у


loox c550 video n1
admin, Thursday 26 February 2009 - 16:21:11 // комментарий: 12



Как собрать адроида под loox ..уже старый способ..... но всеж описание
admin, Thursday 26 February 2009 - 16:19:06 // комментарий: 22

по портированию андроида на loox c550

как собрать свой root-вый раздел android-а:
разбить флешку на 2 раздела - 1-й fat 200мб 2-й ext3 >1гб

1. скопировать out/target/product/generic/root/* на 2-й раздел флешки...
2. скопировать папку out/target/product/generic/system на флешку
3. скопировать папку out/target/product/generic/data на флешку
3. chmod 755 на system/app system/bin system/framework system/lib

причем ..важно выставить права на запуск ........а то при запуске у меня после надписи ANDROID .....все подвисало...

...

также требуется применить патч к pxafb.c ...т.к. x сервер ...андроида требует наличия особого framebuffer -ра......и еще какихто функций ...


далее android запустился.... ....с залоченным экраном.... screen lock.

screen lock снимается нажатием кн MENU ......
коды кнопок можно узнать запустив /system/bin/getevent (можно указать в default.txt ....в параметрах ядра как init=/system/bin/getevent).

настройка кейкодов в android-е ...делается в system/usr/keylayout/qwerty.kl
полученное значение кнопки через getevent ...надо перевести в десятичное и указать qwerty.kl например так:
key 68 MENU WAKE_DROPPED

где десятичное 68 = 44 hex полученное из getevent

таким образом можно настроить все кнопки


keypad в ядре работал (/dev/input/event0).... но android не реагировал на кнопки......


такая ситуация описана тут: http://groups.google.com/group/android-int...c863fd823812bf1
но решения там нет..
оказалось ....для работы keypad .....также требуется наличие android power driver..... /kernel/drivers/android/power.c
+ добавить в kernel/drivers/Kconfig < source "drivers/android/Kconfig"
+ добавить в kernel/drivers/Makefile < obj-y += android/
+ добавить в kernel/arch/arm/Kconfig < source "drivers/android/Kconfig"

в аттаче сам драйвер + его head file...

после этого андроид начал реагировать на keypad и смог разлочить экран

Сообщение отредактировал virstud - 21.1.2009, 22:18
Прикрепленные файлы
Прикрепленный файл android_power_driver.zip ( 7.91 килобайт ) Кол-во скачиваний: 7
Прикрепленный файл headfile_android_power_driver.zip ( 1.24 килобайт ) Кол-во скачиваний: 7


первый запуск android на loox 550
admin, Thursday 26 February 2009 - 16:05:51 // комментарий: 18



android dev
admin, Thursday 26 February 2009 - 16:01:46 // комментарий: 17