GitHub PushEvent at 2014-03-11 15:22:56
Repository: crochet-freebsd
Actor: pkelsey
Payload: {"shas":[["a8e3ea5ea4fb05bc5e21a1d3e9bdc1ef0a44ce3f","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","I've brought more uniformity to disk.sh in the way it handles the\ndifferent partition types.  All partitions created through disk.sh are\ngiven an absolute index, as well as an index relative to their type,\nby which to refer to them.  There is now an interface for storing and\nretrieving arbitrary per-partition variables by name, given an\nabsolute disk index or a {type, relative index} tuple.  As a side\neffect of this, one can now create multiple FAT and reserved\npartitions as well as multiple UFS partitions.\n\nThe basic infrastructure variables that are stored for each created\npartition are TYPE, RELINDEX, ABSINDEX, PARTITION (md), DEVICE (md),\nBOOT, and FREEBSD.  The values are accessible through a generic\nset/get_var interface, and there are also some helpers to provide for\nslightly more readable access and default values when used elsewhere\nin the code.\n\nThis new uniformity across partition types makes it possible to easily\nconstruct operations that span all disks, type subsets, only ones\nmarked for FreeBSD install, etc.  For example, there is now a\nboard_mount_all that will mount all non-reserved partitions.  The\ndefault mount phase handler is now a call to board_mount_all, and none\n(or almost none) of the boards now require a custom mount phase\nhandler.  You can now get the mountpoint for any partition through a\ncall to\n\nboard_mountpoint <index>\n\nor, say, for the second UFS partition by calling\n\nboard_mountpoint `disk_absindex UFS 2`\n\nThe installation of FreeBSD on multiple partitions is handled\ndifferently now.  The normal set of PHASE_FREEBSD_* phases is run only\non the first partition marked for FreeBSD install (which by defaul is\nthe first UFS partition that is created).  There is a new phase called\nPHASE_REPLICATE_FREEBSD that runs after PHASE_FREEBSD_END.  Any\npartitions that are marked for FreeBSD installation through a call to\nboard_mark_partition_for_freebsd_install will have a replication\nhandler registered to run in that phase that copies the contents of\nthe first FreeBSD-installed partition to it.\n\nThere is a new phase called PHASE_CUSTOMIZE_PARTITIONS that runs after\nPHASE_REPLICATE_FREEBSD, and a new routine to register a customization\nhandler for a given partition.  Via board_customize_partition,\ndistinct customization handlers can be registered for each partition\nof interest, or a single handler that uses the new partition-variables\ninterface to determine which/what kind of partition it is operating on\ncan be registered for multiple partitions.  The user has a lot of\nflexibility with which to approach their particular problem.\n\nI've also reduced the number of references to\nBOARD_FREEBSD_MOUNTPOINT, and BOARD_BOOT_MOUNTPOINT so that they are\nonly used from within handlers that run in the phase ranges where they\nare defined, and only when the use of those variables was necessary or\nmore clear (that is, with a preference for working with the current\ndirectory).\n\nThe customize_boot_partition and customize_freebsd_partition hooks no\nlonger are passed the mountpoint as an argument, as it is not\nneccessary given that they are run with BOARD_BOOT/FREEBSD_MOUNTPOINT\ndefined and their current working directories set to that value.  It\nshould be noted that customize_freebsd_partition will only be run for\nthe first FreeBSD install partition, and its actions then replicated\nto all the others during the replication phase.","Patrick Kelsey",false],["1b4c28fac1973728a9eafa503eaf7140909ab11b","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","Simplified overall and per-type partition counting.  Code is reduce,\nand now only one call is required to report and track a new partition.","Patrick Kelsey",false],["d96c11ac77153c6a96959198a1f314543247ef0a","96835dd8bfa718bd6447ccc87af89ae1675daeca@khubla.com","Update README.md","Tom Everett",true],["5454e60c901946d97aae42c1cf36a8dc7cba3d21","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","Merge remote-tracking branch 'upstream/master' into versioned_uboot_patches\n\nConflicts:\n\tlib/uboot.sh","Patrick Kelsey",false],["c662b242fe193993b7c78f9d57931061d5319e93","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","Merge remote-tracking branch 'upstream/master' into disk_pull_request","Patrick Kelsey",false],["0349b3d2009e54ca41f16d42f320ca0bc7aeec8a","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","Merge branch 'disk_pull_request' into versioned_uboot_patches","Patrick Kelsey",false],["19e91a1f50649a198c12da633d206fa213077b18","96835dd8bfa718bd6447ccc87af89ae1675daeca@khubla.com","Merge pull request #50 from pkelsey/versioned_uboot_patches\n\nVersioned uboot patches","Tom Everett",true],["a3cc39bd361ccc5f7011f1b59b08e542916498cb","25b4cea10673e0eedd8258aacb6254f54a686dab@ieee.org","Merge remote-tracking branch 'upstream/master' into uboot-2013.04_mmc_improvements","Patrick Kelsey",true]],"size":8,"ref":"refs/heads/uboot-2013.04_mmc_improvements","head":"a3cc39bd361ccc5f7011f1b59b08e542916498cb"}