BSP 13.4.1.04 android boot up issue

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

BSP 13.4.1.04 android boot up issue

2,283 Views
johnhuang808
Contributor II

I have created my own board based on imx6q. I downloaded BSP 13.4.1 from freescale, after that i pached the newest patch (13.4.1.04). My board boot up from eMMC. At the end of android booting up, my board printed out as bellow:

 

.......

init: starting 'dhcpcd_eth0'

eth0: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr=1:00, irq=-1)

ADDRCONF(NETDEV_UP): eth0: link is not ready

acc_open

acc_release

mtp_open

init: processing action 0x2c978 (property:sys.boot_completed=1)

init: command 'write' r=0

init: command 'write' r=-2

CPU3: shutdown

CPU2: shutdown

init: service 'bootanim' is being killed

init: waitpid returned pid 2385, status = 00000009

init: process 'bootanim', pid 2385 exited

UV

  init: waitpid returned pid 2453, status = 00000100

init: process 'dhcpcd_eth0', pid 2453 exited

UV

  request_suspend_state: sleep (0->3) at 87805217345 (1970-01-02 01:00:24.988134344 UTC)

US 921600

         US 921600

                  US 921600

                           US 921600

                                    UV

                                      UV

                                        UV

                                          US 921600

                                                   US 921600

                                                            US 921600

                                                                     US 921600

..............

 

 

 

it repeats the parrten "US 921600" again and again. My board connect to the computer through the usb port. On the computer's console terminal, i have the result as follow:

 

1. lsusb --> the result is: 18d1 : 2d02

2. adb devices --> the result is: the devices list attached is blank

 

So because I don't have adb access. I don't know how to continue debugging. Hope community can help me out. Thanks!!!

 

P/S: I also attached full console log with the thread.

Original Attachment has been moved to: 25Otc_3.txt.zip

Labels (1)
Tags (4)
0 Kudos
Reply
3 Replies

1,311 Views
johnhuang808
Contributor II

Hi raymond,

I just try to apply your patch, and the issue still occur. Now i still have no clue for this issue.

About the adb, i change my default.prop in ramdisk as bellow:

#

# ADDITIONAL_DEFAULT_PROPERTIES

#

ro.secure=0

ro.allow.mock.location=1

ro.debuggable=1

persist.sys.usb.config=mtp,adb

Now i can access my board via adb fine.

0 Kudos
Reply

1,311 Views
raymondwang
Senior Contributor I

It seems serial console does not display properly. You can add my patch in

kernel_imx/driver/tty/serial.imx.c . It rounded the possible baudrate to replace original

calculated baudrate because that may cause inaccurate baudrate which can cause serial

console display improperly.

static void __init

imx_console_get_options(struct imx_port *sport, int *baud,

    int *parity, int *bits)

{

...

{

   /*

* The next code provides exact computation of
*   baud_raw = round(((uartclk/16) * (ubir + 1)) / (ubmr + 1))
* without need of float support or long long division,
* which would be required to prevent 32bit arithmetic overflow
*/
unsigned int mul = ubir + 1;
unsigned int div = 16 * (ubmr + 1);
unsigned int rem = uartclk % div;

baud_raw = (uartclk / div) * mul;
baud_raw += (rem * mul + div / 2) / div;
*baud = (baud_raw + 50) / 100 * 100;

//mapping to nearest baudrate to reduce bad output
{
int i,count;
unsigned left,cur,compared;
unsigned baud_maps[]={
50, 75, 110,134,150,200,300,600,1200,1800,2400,
4800,9600,19200,38400,57600,115200,230400,460800,
500000,576000,921600,1000000,1152000,1500000,2000000,
2500000,3000000,3500000,4000000,
};
count = (sizeof(baud_maps)/sizeof(baud_maps[0]));
compared = *baud;
for(i=0;i<count;i++){
if(baud_maps[i]>compared)
break;
}
//only cover we wanted baudrate
if(i<count){
unsigned delta1,delta2;
left = baud_maps[i-1];
cur = baud_maps[i];
delta1 = compared-left;
delta2 = cur-compared;
compared = (delta1>delta2)?cur:left;
*baud=compared;
}
}

}

}

  BTW,you can add below command to enable adbd in default.

#  Dsiable adb security for JB4.2.2

    setprop ro.adb.secure 0

1,311 Views
johnhuang808
Contributor II

Thanks raymond

In the console log, after the kernel starting, i found that my board printed out as bellow:

......

NR_IRQS:496

MXC GPIO hardware

sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms

Set periph_clk's parent to pll2_pfd_400M!

....

So periph change to 400M instead of defaut 528MHz. Perhaps it cause my problem. I will try to apply your patch and report the result soon.

0 Kudos
Reply