bcm53xx: replace linux,part-probe with a proper partitions subnode
This solution is more upstream compatible as it only requires specifying of_match_table in the parser code and doesn't depend on linux,part-probe which is solution made generic by a LEDE downstream patch that can't be upstreamed. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
This commit is contained in:
		| @@ -1,11 +0,0 @@ | |||||||
| --- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi |  | ||||||
| +++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi |  | ||||||
| @@ -13,6 +13,8 @@ |  | ||||||
|  			reg = <0>; |  | ||||||
|  			#address-cells = <1>; |  | ||||||
|  			#size-cells = <1>; |  | ||||||
| + |  | ||||||
| +			linux,part-probe = "ofpart", "bcm47xxpart"; |  | ||||||
|  		}; |  | ||||||
|  	}; |  | ||||||
|  }; |  | ||||||
| @@ -0,0 +1,53 @@ | |||||||
|  | From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> | ||||||
|  | Subject: [PATCH] Use "brcm,bcm947xx-cfe-partitions" binding for Broadcom | ||||||
|  |  partitions | ||||||
|  |  | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | --- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | ||||||
|  | +++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | ||||||
|  | @@ -13,6 +13,10 @@ | ||||||
|  |  			reg = <0>; | ||||||
|  |  			#address-cells = <1>; | ||||||
|  |  			#size-cells = <1>; | ||||||
|  | + | ||||||
|  | +			partitions { | ||||||
|  | +				compatible = "brcm,bcm947xx-cfe-partitions"; | ||||||
|  | +			}; | ||||||
|  |  		}; | ||||||
|  |  	}; | ||||||
|  |  }; | ||||||
|  | --- a/arch/arm/boot/dts/bcm5301x.dtsi | ||||||
|  | +++ b/arch/arm/boot/dts/bcm5301x.dtsi | ||||||
|  | @@ -346,8 +346,11 @@ | ||||||
|  |  				compatible = "jedec,spi-nor"; | ||||||
|  |  				reg = <0>; | ||||||
|  |  				spi-max-frequency = <20000000>; | ||||||
|  | -				linux,part-probe = "ofpart", "bcm47xxpart"; | ||||||
|  |  				status = "disabled"; | ||||||
|  | + | ||||||
|  | +				partitions { | ||||||
|  | +					compatible = "brcm,bcm947xx-cfe-partitions"; | ||||||
|  | +				}; | ||||||
|  |  			}; | ||||||
|  |  		}; | ||||||
|  |   | ||||||
|  | --- a/drivers/mtd/bcm47xxpart.c | ||||||
|  | +++ b/drivers/mtd/bcm47xxpart.c | ||||||
|  | @@ -300,9 +300,16 @@ static int bcm47xxpart_parse(struct mtd_ | ||||||
|  |  	return curr_part; | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | +static const struct of_device_id bcm47xxpart_of_match_table[] = { | ||||||
|  | +	{ .compatible = "brcm,bcm947xx-cfe-partitions" }, | ||||||
|  | +	{}, | ||||||
|  | +}; | ||||||
|  | +MODULE_DEVICE_TABLE(of, bcm47xxpart_of_match_table); | ||||||
|  | + | ||||||
|  |  static struct mtd_part_parser bcm47xxpart_mtd_parser = { | ||||||
|  |  	.parse_fn = bcm47xxpart_parse, | ||||||
|  |  	.name = "bcm47xxpart", | ||||||
|  | +	.of_match_table = bcm47xxpart_of_match_table, | ||||||
|  |  }; | ||||||
|  |  module_mtd_part_parser(bcm47xxpart_mtd_parser); | ||||||
|  |   | ||||||
| @@ -1,11 +0,0 @@ | |||||||
| --- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi |  | ||||||
| +++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi |  | ||||||
| @@ -13,6 +13,8 @@ |  | ||||||
|  			reg = <0>; |  | ||||||
|  			#address-cells = <1>; |  | ||||||
|  			#size-cells = <1>; |  | ||||||
| + |  | ||||||
| +			linux,part-probe = "ofpart", "bcm47xxpart"; |  | ||||||
|  		}; |  | ||||||
|  	}; |  | ||||||
|  }; |  | ||||||
| @@ -0,0 +1,53 @@ | |||||||
|  | From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> | ||||||
|  | Subject: [PATCH] Use "brcm,bcm947xx-cfe-partitions" binding for Broadcom | ||||||
|  |  partitions | ||||||
|  |  | ||||||
|  | --- | ||||||
|  |  | ||||||
|  | --- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | ||||||
|  | +++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | ||||||
|  | @@ -13,6 +13,10 @@ | ||||||
|  |  			reg = <0>; | ||||||
|  |  			#address-cells = <1>; | ||||||
|  |  			#size-cells = <1>; | ||||||
|  | + | ||||||
|  | +			partitions { | ||||||
|  | +				compatible = "brcm,bcm947xx-cfe-partitions"; | ||||||
|  | +			}; | ||||||
|  |  		}; | ||||||
|  |  	}; | ||||||
|  |  }; | ||||||
|  | --- a/arch/arm/boot/dts/bcm5301x.dtsi | ||||||
|  | +++ b/arch/arm/boot/dts/bcm5301x.dtsi | ||||||
|  | @@ -346,8 +346,11 @@ | ||||||
|  |  				compatible = "jedec,spi-nor"; | ||||||
|  |  				reg = <0>; | ||||||
|  |  				spi-max-frequency = <20000000>; | ||||||
|  | -				linux,part-probe = "ofpart", "bcm47xxpart"; | ||||||
|  |  				status = "disabled"; | ||||||
|  | + | ||||||
|  | +				partitions { | ||||||
|  | +					compatible = "brcm,bcm947xx-cfe-partitions"; | ||||||
|  | +				}; | ||||||
|  |  			}; | ||||||
|  |  		}; | ||||||
|  |   | ||||||
|  | --- a/drivers/mtd/bcm47xxpart.c | ||||||
|  | +++ b/drivers/mtd/bcm47xxpart.c | ||||||
|  | @@ -300,9 +300,16 @@ static int bcm47xxpart_parse(struct mtd_ | ||||||
|  |  	return curr_part; | ||||||
|  |  }; | ||||||
|  |   | ||||||
|  | +static const struct of_device_id bcm47xxpart_of_match_table[] = { | ||||||
|  | +	{ .compatible = "brcm,bcm947xx-cfe-partitions" }, | ||||||
|  | +	{}, | ||||||
|  | +}; | ||||||
|  | +MODULE_DEVICE_TABLE(of, bcm47xxpart_of_match_table); | ||||||
|  | + | ||||||
|  |  static struct mtd_part_parser bcm47xxpart_mtd_parser = { | ||||||
|  |  	.parse_fn = bcm47xxpart_parse, | ||||||
|  |  	.name = "bcm47xxpart", | ||||||
|  | +	.of_match_table = bcm47xxpart_of_match_table, | ||||||
|  |  }; | ||||||
|  |  module_mtd_part_parser(bcm47xxpart_mtd_parser); | ||||||
|  |   | ||||||
		Reference in New Issue
	
	Block a user
	 Rafał Miłecki
					Rafał Miłecki