Hi Mr. Nelson,

Problem in short
I changed partitioning command but with help,
Here is my sfdisk commad,


        #Partition 
drive                                                        
        sfdisk --force --in-order --Linux ${DRIVE} -uM 
<<-__EOF__               
        
1,32,C,*                                                                
        
,200,L                                                                  
        
,200,L                                                                  
        
,,E                                                                     
        
,100,L                                                                  
        
,60,L                                                                   
        
,200,L                                                                  
        
,1269,L                                                                 
        
,,,-                                                                    
        __EOF__ 

After above command i sync and flush buffers using blockdev command.
and then run "mdev -s" but 

I get following output,

*sfdisk: ERROR: sector 184348 does not have an msdos signature*
sfdisk:  /dev/mmcblk0: unrecognized partition table type

Old situation:
sfdisk: No partitions found

New situation:
Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start   End    MiB    #blocks   Id  System
/dev/mmcblk0p1   *     1     32     32      32768    c  W95 FAT32 (LBA)
/dev/mmcblk0p2        33    232    200     204800   83  Linux
/dev/mmcblk0p3       233    432    200     204800   83  Linux
/dev/mmcblk0p4       433   3663   3231    3308544    5  Extended
/dev/mmcblk0p5       433+   532    100-    102399+  83  Linux
/dev/mmcblk0p6       533+   592     60-     61439+  83  Linux
/dev/mmcblk0p7       593+   792    200-    204799+  83  Linux
/dev/mmcblk0p8       793+  2061   1269-   1299455+  83  Linux
/dev/mmcblk0p9      2062+  3663   1602-   1640447+  83  Linux
Successfully wrote the new partition table

Re-reading the partition table ...

If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)
to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 count=1
(See fdisk(8).)
Auto-mount of [/media/mmcblk0p5] successful
Auto-mount of [/media/mmcblk0p6] successful
Auto-mount of [/media/mmcblk0p7] successful
Auto-mount of [/media/mmcblk0p8] successful
*Error: Error informing the kernel about modifications to partition 
/dev/mmcblk0p5 -- Device or resource busy.  This means Linux won't know 
about any changes you made to /dev/mmcblk0p5 until you reboot -- .*
Error: Failed to add partition 5 (Device or resource busy)
mount: mounting /dev/mmcblk0p1 on /media/mmcblk0p1 failed: Invalid argument
rm: can't remove '/tmp/.automount-mmcblk0p1': No such file or directory
mount: mounting /dev/mmcblk0p2 on /media/mmcblk0p2 failed: Invalid argument
rm: can't remove '/tmp/.automount-mmcblk0p2': No such file or directory
mount: mounting /dev/mmcblk0p3 on /media/mmcblk0p3 failed: Invalid argument
rm: can't remove '/tmp/.automount-mmcblk0p3': No such file or directory
mount: mounting /dev/mmcblk0p4 on /media/mmcblk0p4 failed: Invalid argument
rm: can't remove '/tmp/.automount-mmcblk0p4': No such file or directory
rm: can't remove '/tmp/.automount-mmcblk0p6': No such file or directory
rm: can't remove '/tmp/.automount-mmcblk0p7': No such file or directory
rm: can't remove '/tmp/.automount-mmcblk0p8': No such file or directory
rootfs on / type rootfs (rw)
192.168.1.3:/nfsboot on / type nfs 
(rw,relatime,vers=2,rsize=4096,wsize=4096,namlen=255,hard,nolock,proto=udp,timeo=11,retrans=3,sec=sys,mountaddr=192.168.1.3,mountvers=1,mountproto=udp,local_lock=all,add)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
tmpfs on /tmp type tmpfs (rw,relatime)
none on /dev/pts type devpts (rw,relatime,mode=600)
tmpfs on /dev/shm type tmpfs (rw,relatime,mode=777)
tmpfs on /var/run type tmpfs (rw,relatime,mode=777)
tmpfs on /var/spool/cron type tmpfs (rw,relatime,mode=755)
tmpfs on /var/sftp type tmpfs (rw,relatime,mode=755)
+ sfdisk -R /dev/mmcblk0
+ 
+ [ 0 -ne 0 ]
+ echo Nothing is mounted on /dev/mmcblk0
Nothing is mounted on /dev/mmcblk0
+ RETRY=50
+ NO_OF_PARTITIONS=2
+ 2 -ne 10
./BAK_S99-flashfirmware: line 1: 2: not found
+ set +x
mke2fs 1.42.8 (20-Jun-2013)
Discarding device blocks: done                            
Auto-mount of [/media/mmcblk0p6] successful
Auto-mount of [/media/mmcblk0p7] successful
Auto-mount of [/media/mmcblk0p5] successful
Filesystem label=rootfs

I checked /sys/class/block directory and i see following,
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop0 -> 
../../devices/virtual/block/loop0
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop1 -> 
../../devices/virtual/block/loop1
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop2 -> 
../../devices/virtual/block/loop2
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop3 -> 
../../devices/virtual/block/loop3
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop4 -> 
../../devices/virtual/block/loop4
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop5 -> 
../../devices/virtual/block/loop5
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop6 -> 
../../devices/virtual/block/loop6
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 loop7 -> 
../../devices/virtual/block/loop7











*lrwxrwxrwx    1 root     root             0 Dec 31 19:00 mmcblk0 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0lrwxrwxrwx
    
1 root     root             0 Dec 31 19:00 mmcblk0boot0 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0boot0lrwxrwxrwx
    
1 root     root             0 Dec 31 19:00 mmcblk0boot1 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0boot1lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p1 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p1lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p2 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p2lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p3 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p3lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p4 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p4lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p5 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p5lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p6 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p6lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p7 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p7lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p8 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p8lrwxrwxrwx
    
1 root     root             0 Dec 31 19:12 mmcblk0p9 -> 
../../devices/ocp.2/481d8000.mmc/mmc_host/mmc1/mmc1:0001/block/mmcblk0/mmcblk0p9*
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram0 -> 
../../devices/virtual/block/ram0
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram1 -> 
../../devices/virtual/block/ram1
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram10 -> 
../../devices/virtual/block/ram10
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram11 -> 
../../devices/virtual/block/ram11
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram12 -> 
../../devices/virtual/block/ram12
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram13 -> 
../../devices/virtual/block/ram13
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram14 -> 
../../devices/virtual/block/ram14
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram15 -> 
../../devices/virtual/block/ram15
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram2 -> 
../../devices/virtual/block/ram2
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram3 -> 
../../devices/virtual/block/ram3
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram4 -> 
../../devices/virtual/block/ram4
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram5 -> 
../../devices/virtual/block/ram5
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram6 -> 
../../devices/virtual/block/ram6
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram7 -> 
../../devices/virtual/block/ram7
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram8 -> 
../../devices/virtual/block/ram8
lrwxrwxrwx    1 root     root             0 Dec 31 19:00 ram9 -> 
../../devices/virtual/block/ram9

Can we conclude that from mmc driverside there is problem.
Do you doubt mdev ??
Can network boot affect ? I am booting from network to update eMMC.

Thank you,

Regards,
Ankur

On Friday, 24 April 2015 21:57:07 UTC+5:30, RobertCNelson wrote:
>
> On Fri, Apr 24, 2015 at 11:22 AM, Ankur Tank <art...@gmail.com 
> <javascript:>> wrote: 
> > Problem in short: 
> > eMMC partition's device files are not visible in /dev/ directory after 
> > partitiong using "sfdisk" 
> > HI , 
> > 
> > I have put log of script here, any suggestions, 
> > 
> > + partition_emmc /dev/mmcblk0 
> > + DRIVE=/dev/mmcblk0 
> > + HEADS=255 
> > + SECTOR_SIZE=512 
> > + SECTORS_PER_TRACK=63 
> > + dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=108 
> > 108+0 records in 
> > 108+0 records out 
> > + sync 
> > + dd if=/dev/mmcblk0 of=/dev/null bs=1M count=108 
> > 108+0 records in 
> > 108+0 records out 
> > + sync 
> > + blockdev --flushbufs /dev/mmcblk0 
> > + + grepgrep+  bytes Disk 
> > 
> > fdisk -l /dev/mmcblk0 
> > + awk {print $5} 
> > + SIZE=3841982464 
> > + echo DISK SIZE - 3841982464 bytes 
> > DISK SIZE - 3841982464 bytes 
> > + echo 3841982464 255 / 63 / 512 / p 
> > + dc 
> > + CYLINDERS=467.094 
> > + echo CYLINDERS - 467.094 
> > CYLINDERS - 467.094 
> > + sfdisk -R /dev/mmcblk0 
> > BLKRRPART: Device or resource busy 
> > sfdisk: This disk is currently in use. 
> > 
> > + 
> > + [ 1 -ne 0 ] 
> > + + + grepawk /dev/mmcblk0 {print $3} 
> > 
> > mount 
> > + mntpoint=/media/mmcblk0p8 
> > /media/mmcblk0p6 
> > /media/mmcblk0p7 
> > /media/mmcblk0p5 
> > + echo unmounting /media/mmcblk0p8 
> > unmounting /media/mmcblk0p8 
> > + umount /media/mmcblk0p8 
> > + echo unmounting /media/mmcblk0p6 
> > unmounting /media/mmcblk0p6 
> > + umount /media/mmcblk0p6 
> > + echo unmounting /media/mmcblk0p7 
> > unmounting /media/mmcblk0p7 
> > + umount /media/mmcblk0p7 
> > + echo unmounting /media/mmcblk0p5 
> > unmounting /media/mmcblk0p5 
> > + umount /media/mmcblk0p5 
> > + sfdisk --force --in-order --Linux -H 255 -S 63 -C 467.094 /dev/mmcblk0 
> -uM 
> > Checking that no-one is using this disk right now ... 
> > OK 
> > 
> > Disk /dev/mmcblk0: 467 cylinders, 255 heads, 63 sectors/track 
> > 
> > sfdisk: ERROR: sector 184348 does not have an msdos signature 
> > sfdisk:  /dev/mmcblk0: unrecognized partition table type 
> > 
> > Old situation: 
> > sfdisk: No partitions found 
> > 
> > New situation: 
> > Units = mebibytes of 1048576 bytes, blocks of 1024 bytes, counting from 
> 0 
> > 
> >    Device Boot Start   End    MiB    #blocks   Id  System 
> > /dev/mmcblk0p1   *     0+    31     32-     32767+   c  W95 FAT32 (LBA) 
> > /dev/mmcblk0p2        32    231    200     204800   83  Linux 
> > /dev/mmcblk0p3       232    431    200     204800   83  Linux 
> > /dev/mmcblk0p4       432   3663   3232    3309568    5  Extended 
> > /dev/mmcblk0p5       432+   531    100-    102399+  83  Linux 
> > /dev/mmcblk0p6       532+   591     60-     61439+  83  Linux 
> > /dev/mmcblk0p7       592+   791    200-    204799+  83  Linux 
> > /dev/mmcblk0p8       792+  2060   1269-   1299455+  83  Linux 
> > /dev/mmcblk0p9      2061+  3663   1603-   1641471+  83  Linux 
> > Successfully wrote the new partition table 
> > 
> > Re-reading the partition table ... 
> > 
> > If you created or changed a DOS partition, /dev/foo7, say, then use 
> dd(1) 
> > to zero the first 512 bytes:  dd if=/dev/zero of=/dev/foo7 bs=512 
> count=1 
> > (See fdisk(8).) 
> > + sync 
> > + blockdev --flushbufs /dev/mmcblk0 
> > + partprobe 
> > Auto-mount of [/media/mmcblk0p5] successful 
> > Auto-mount of [/media/mmcblk0p6] successful 
> > Auto-mount of [/media/mmcblk0p7] successful 
> > Auto-mount of [/media/mmcblk0p8] successful 
> > Error: Error informing the kernel about modifications to partition 
> > /dev/mmcblk0p5 -- Device or r. 
> > Error: Failed to add partition 5 (Device or resource busy) 
> > + rm -rf /tmp/.a* 
> > + mdev -s 
> > mount: mounting /dev/mmcblk0p1 on /media/mmcblk0p1 failed: Invalid 
> argument 
> > rm: can't remove '/tmp/.automount-mmcblk0p1': No such file or directory 
> > mount: mounting /dev/mmcblk0p2 on /media/mmcblk0p2 failed: Invalid 
> argument 
> > rm: can't remove '/tmp/.automount-mmcblk0p2': No such file or directory 
> > mount: mounting /dev/mmcblk0p3 on /media/mmcblk0p3 failed: Invalid 
> argument 
> > rm: can't remove '/tmp/.automount-mmcblk0p3': No such file or directory 
> > mount: mounting /dev/mmcblk0p4 on /media/mmcblk0p4 failed: Invalid 
> argument 
> > rm: can't remove '/tmp/.automount-mmcblk0p4': No such file or directory 
> > rm: can't remove '/tmp/.automount-mmcblk0p7': No such file or directory 
> > rm: can't remove '/tmp/.automount-mmcblk0p8': No such file or directory 
> > + sync 
> > + blockdev --flushbufs /dev/mmcblk0 
> > + mount 
> > rootfs on / type rootfs (rw) 
> > 192.168.1.3:/nfsboot on / type nfs 
> > (rw,relatime,vers=2,rsize=4096,wsize=4096,namlen=255,hard,nol) 
> > proc on /proc type proc (rw,relatime) 
> > sysfs on /sys type sysfs (rw,relatime) 
> > tmpfs on /tmp type tmpfs (rw,relatime) 
> > none on /dev/pts type devpts (rw,relatime,mode=600) 
> > tmpfs on /dev/shm type tmpfs (rw,relatime,mode=777) 
> > tmpfs on /var/run type tmpfs (rw,relatime,mode=777) 
> > tmpfs on /var/spool/cron type tmpfs (rw,relatime,mode=755) 
> > tmpfs on /var/sftp type tmpfs (rw,relatime,mode=755) 
> > + sfdisk -R /dev/mmcblk0 
> > + 
> > + [ 0 -ne 0 ] 
> > + echo Nothing is mounted on /dev/mmcblk0 
> > Nothing is mounted on /dev/mmcblk0 
> > + RETRY=50 
> > + NO_OF_PARTITIONS=2 
> > + 2 != 10 
> > ./BAK_S99-flashfirmware: line 1: 2: not found 
> > + check_and_format_partition /dev/mmcblk0p2 rootfs 
> > + PARTITION=/dev/mmcblk0p2 
> > + LABEL=rootfs 
> > + MNTPNT=0 
> > + mount 
> > + grep /dev/mmcblk0p2 
> > + awk {print $3} 
> > + MNTPNT= 
> > + [ -n  ] 
> > + [ -b /dev/mmcblk0p2 ] 
> > + mkfs.ext4 -L rootfs /dev/mmcblk0p2 
> > mke2fs 1.42.8 (20-Jun-2013) 
> > Auto-mount of [/media/mmcblk0p5] successful 
> > mkfs.ext4: No such file or directory while trying to determine hardware 
> > sector size 
> > + check_and_format_partition /dev/mmcblk0p3 rootfs2 
> > + PARTITION=/dev/mmcblk0p3 
> > + LABEL=rootfs2 
> > + MNTPNT=0 
> > + mount 
> > + grep+ awk /dev/mmcblk0p3 
> >  {print $3} 
> > Auto-mount of [/media/mmcblk0p8] successful 
> > + MNTPNT= 
> > + [ -n  ] 
> > + [ -b /dev/mmcblk0p3 ] 
> > + echo Cant find /dev/mmcblk0p3 partition 
> > Cant find /dev/mmcblk0p3 partition 
> > + check_and_format_partition /dev/mmcblk0p5 recovery_rootfs 
> > + PARTITION=/dev/mmcblk0p5 
> > + LABEL=recovery_rootfs 
> > + MNTPNT=0 
> > + mount 
> > + grep /dev/mmcblk0p5+ awk {print $3} 
> > 
> > + MNTPNT=/media/mmcblk0p5 
> > + [ -n /media/mmcblk0p5 ] 
> > + echo /dev/mmcblk0p5 is mounted on /media/mmcblk0p5 
> > /dev/mmcblk0p5 is mounted on /media/mmcblk0p5 
> > + [ -b /dev/mmcblk0p5 ] 
> > + echo Cant find /dev/mmcblk0p5 partition 
> > Cant find /dev/mmcblk0p5 partition 
> > + check_and_format_partition /dev/mmcblk0p6 database 
> > + PARTITION=/dev/mmcblk0p6 
> > + LABEL=database 
> > + MNTPNT=0 
> > + mount 
> > + grep /dev/mmcblk0p6 
> > + awk {print $3} 
> > Auto-mount of [/media/mmcblk0p7] successful 
> > + MNTPNT= 
> > + [ -n  ] 
> > + [ -b /dev/mmcblk0p6 ] 
> > + mkfs.ext4 -L database /dev/mmcblk0p6 
> > Auto-mount of [/media/mmcblk0p6] successful 
> > mke2fs 1.42.8 (20-Jun-2013) 
> > /dev/mmcblk0p6 is mounted; will not make a filesystem here! 
> > + check_and_format_partition /dev/mmcblk0p7 firmware 
> > + PARTITION=/dev/mmcblk0p7 
> > + LABEL=firmware 
> > + MNTPNT=0 
> > + grep /dev/mmcblk0p7 
> > + mount 
> > + awk {print $3} 
> > + MNTPNT=/media/mmcblk0p7 
> > + [ -n /media/mmcblk0p7 ] 
> > + echo /dev/mmcblk0p7 is mounted on /media/mmcblk0p7 
> > /dev/mmcblk0p7 is mounted on /media/mmcblk0p7 
> > + [ -b /dev/mmcblk0p7 ] 
> > + mkfs.ext4 -L firmware /dev/mmcblk0p7 
> > mke2fs 1.42.8 (20-Jun-2013) 
> > /dev/mmcblk0p7 is mounted; will not make a filesystem here! 
> > + check_and_format_partition /dev/mmcblk0p8 logging 
> > + PARTITION=/dev/mmcblk0p8 
> > + LABEL=logging 
> > + MNTPNT=0 
> > + grep /dev/mmcblk0p8 
> > + awk {print $3} 
> > + mount 
> > + MNTPNT=/media/mmcblk0p8 
> > + [ -n /media/mmcblk0p8 ] 
> > + echo /dev/mmcblk0p8 is mounted on /media/mmcblk0p8 
> > /dev/mmcblk0p8 is mounted on /media/mmcblk0p8 
> > + [ -b /dev/mmcblk0p8 ] 
> > + echo Cant find /dev/mmcblk0p8 partition 
> > Cant find /dev/mmcblk0p8 partition 
> > + sed -r s/://g 
> > + cat /sys/class/net/eth0/address 
> > + MACADDRESS=7c669d19cce2 
> > + BASE_MOUNT_POINT=/mnt/7c669d19cce2 
> > + ROOTFS_MOUNT=/mnt/7c669d19cce2/rootfs 
> > + ROOTFS2_MOUNT=/mnt/7c669d19cce2/rootfs2 
> > + ROOTFS_RECOVERY_MOUNT=/mnt/7c669d19cce2/recovery_rootfs 
> > + DB_MOUNT=/mnt/7c669d19cce2/database 
> > + FIRMWARE_MOUNT=/mnt/7c669d19cce2/firmware 
> > + LOGGING_MOUNT=/mnt/7c669d19cce2/logging 
> > + echoAndLog mount all the partitions 
> > + echo mount all the partitions 
> > mount all the partitions 
> > + logger -p 5 -t ./BAK_S99-flashfirmware mount all the partitions 
> > + [ ! -d /mnt/7c669d19cce2/rootfs ] 
> > + [ ! -d /mnt/7c669d19cce2/rootfs2 ] 
> > + [ ! -d /mnt/7c669d19cce2/recovery_rootfs ] 
> > + [ ! -d /mnt/7c669d19cce2/database ] 
> > + RETRY=50 
> > + [ 50 -ne 0 ] 
> > + [ ! -b /dev/mmcblk0p2 ] 
> > + echo ....Waiting till /dev/mmcblk0p2 appears retry=50 
> > ....Waiting till /dev/mmcblk0p2 appears retry=50 
> > 
> > Anything fishy ?? If same partitioning command i run from command prompt 
> it 
> > works but not from script do you suggestion anything ? 
> > 
> > Script looks as show below.. 
> > 
> > DRIVE="/dev/mmcblk0" 
> > RFS1_PARTITION=${DRIVE}p2 
> > RFS2_PARTITION=${DRIVE}p3 
> > RECOVERYRFS_PARTITION=${DRIVE}p5 
> > DATABASE_PARTITION=${DRIVE}p6 
> > FIRMWARE_PARTITION=${DRIVE}p7 
> > LOGGING_PARTITION=${DRIVE}p8 
> > 
> > partition_emmc() 
> > { 
> >         DRIVE=$1 
> >         HEADS=255 
> >         SECTOR_SIZE=512 
> >         SECTORS_PER_TRACK=63 
> > 
> >         #Clear the first 512KB of the disk to clear MBR 
> >         dd if=/dev/zero of=${DRIVE} bs=1M count=108 
> >         sync 
> >         dd if=${DRIVE} of=/dev/null bs=1M count=108 
> >         sync 
> >         blockdev --flushbufs ${DRIVE} 
> > 
> >         #Get the size of the disk 
> >         SIZE=$(fdisk -l $DRIVE | grep "Disk" | grep bytes | awk '{print 
> > $5}') 
> >         echo "DISK SIZE - $SIZE bytes" 
> > 
> >         #calculate the no of cylinders in the disk 
> >         CYLINDERS=$(echo "$SIZE $HEADS / $SECTORS_PER_TRACK / 
> $SECTOR_SIZE / 
> > p" | dc ) 
> >         echo "CYLINDERS - $CYLINDERS" 
> > 
> >         #Check if any of the partition is mounted, umount it if mounted. 
> >         $(sfdisk -R ${DRIVE}) 
> >         if [ $? -ne 0 ];then 
> >                 mntpoint=$(mount | grep ${DRIVE} | awk '{print $3}') 
> >                 for i in $mntpoint ; do 
> >                         echo "unmounting $i" 
> >                         umount $i 
> >                 done 
> >         else 
> >                 echo "Nothing is mounted on ${DRIVE}" 
> >         fi 
> > 
> >         #Partition drive 
> > #       sfdisk --force --in-order --Linux -H 255 -S 63 -C $CYLINDERS 
> > ${DRIVE} -uM <<-__EOF__ 
> >         sfdisk --force --in-order --Linux -H 255 -S 63 -C 467 ${DRIVE} 
> -uM 
> > <<-__EOF__ 
>
> Stop with all the cylinders crap, it's not 2009 anymore and we "fixed" 
> x-loader/u-boot spl, with the boot from "63" location "years" ago... 
>
> >         ,32,C,* 
>           1,32,C,*    (now you have a 1Mb hole, which will work with 
> the bootloader..) 
>
> >         ,200,L 
> >         ,200,L 
> >         ,,E 
> >         ,100,L 
> >         ,60,L 
> >         ,200,L 
> >         ,1269,L 
> >         ,,,- 
> >         __EOF__ 
> > 
> > } 
> > 
> > # arg1 = partition 
> > # arg2 = label 
> > check_and_format_partition() 
> > { 
> >     PARTITION=$1 
> >     LABEL=$2 
> >         MNTPNT=0 
> >         MNTPNT=$(mount | grep $PARTITION | awk '{print $3}') 
> >         if [ -n "$MNTPNT" ]; then 
> >             echo "$PARTITION is mounted on $MNTPNT" 
> >         fi 
> >     if [ -b $PARTITION ]; then 
> >         mkfs.ext4 -L $LABEL $PARTITION 
> >         #TODO : Find correct tunning parameter and set it. 
> >         #tune2fs 
> >     else 
> >         echo "Cant find $PARTITION partition" 
> >     fi 
> > } 
> > 
> > #Partition the eMMC 
> >     partition_emmc $DRIVE 
> > 
> >     sync 
> >     blockdev --flushbufs $DRIVE 
> > 
> >     partprobe 
> >     rm -rf /tmp/.a* 
> > 
> >     #Trigger the creation of the device files 
> >     mdev -s 
> >     sync 
> >     blockdev --flushbufs $DRIVE 
> > 
> >     mount 
> > 
> >     $(sfdisk -R ${DRIVE}) 
> >     if [ $? -ne 0 ]; then 
> >        mntpoint=$(mount | grep ${DRIVE} | awk '{print $3}') 
> >             for i in $mntpoint ; do 
> >                   echo "unmounting $i" 
> >                 umount $i 
> >             done 
> >     else 
> >         echo "Nothing is mounted on ${DRIVE}" 
> >     fi 
> > 
> >     #Wait till mmcblk0pX partitions are available. 
> >     RETRY=50 
> >     NO_OF_PARTITIONS=2 
> >     while (( $NO_OF_PARTITIONS != 10 )); do 
> > 
> >         while (( [ $RETRY -ne 0 ] &&  [ ! -b "${DRIVE}p$i" ] )); do 
> >            echo "....Waiting till $RFS1_PARTITION appears" 
> >            RETRY=`expr $RETRY - 1` 
> >            sleep 1 
> >         done 
> > 
> >     if [ $RETRY -eq 0 ];then 
> >         echo "Error..Device files are not present" 
> >         exit 1; 
> >     fi 
> >         NO_OF_PARTITIONS=`expr NO_OF_PARTITIONS + 1` 
> >     done 
> > 
> >     #Format the partitions 
> >     check_and_format_partition $RFS1_PARTITION $RFS_STRING 
> >     check_and_format_partition $RFS2_PARTITION $RFS2_STRING 
> >     check_and_format_partition $RECOVERYRFS_PARTITION 
> $RFS_RECOVERY_STRING 
> >     check_and_format_partition $DATABASE_PARTITION $DATABASE_STRING 
> >     check_and_format_partition $FIRMWARE_PARTITION $FIRMWARE_STRING 
> >     check_and_format_partition $LOGGING_PARTITION $LOGGING_STRING 
> > 
> >       MACADDRESS=`cat /sys/class/net/eth0/address | sed -r 's/://g'` 
> >       BASE_MOUNT_POINT=/mnt/$MACADDRESS 
> >       ROOTFS_MOUNT=$BASE_MOUNT_POINT/rootfs 
> >       ROOTFS2_MOUNT=$BASE_MOUNT_POINT/rootfs2 
> >       ROOTFS_RECOVERY_MOUNT=$BASE_MOUNT_POINT/recovery_rootfs 
> >       DB_MOUNT=$BASE_MOUNT_POINT/database 
> >       FIRMWARE_MOUNT=$BASE_MOUNT_POINT/firmware 
> >       LOGGING_MOUNT=$BASE_MOUNT_POINT/logging 
> > 
> >       echoAndLog "mount all the partitions" 
> >       #Create mount point if it doesn't exist. 
> >       if [ ! -d "$ROOTFS_MOUNT" ]; then 
> >          mkdir -p $ROOTFS_MOUNT 
> >       fi 
> >       if [ ! -d "$ROOTFS2_MOUNT" ]; then 
> >          mkdir -p $ROOTFS2_MOUNT 
> >       fi 
> >       if [ ! -d "$ROOTFS_RECOVERY_MOUNT" ]; then 
> >          mkdir -p $ROOTFS_RECOVERY_MOUNT 
> >       fi 
> >       if [ ! -d "$DB_MOUNT" ]; then 
> >          mkdir -p $DB_MOUNT 
> >       fi 
> > 
> > 
> > 
> > } 
> > 
>
>
> Regards, 
>
> -- 
> Robert Nelson 
> https://rcn-ee.com/ 
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to