[PATCH] sysdev,mv64x60: MV64x60 device bus

Remi Machet rmachet at slac.stanford.edu
Tue Apr 29 05:22:36 EST 2008


On Mon, 2008-04-28 at 11:09 -0700, Dale Farnsworth wrote:
> On Mon, Apr 28, 2008 at 10:12:09AM -0700, Remi Machet wrote:
> > Follow up of my email of 4/16/2008 titled "MV64x60 device bus".
> > For each mv64360 entry in the OpenFirmware database, add the 
> > registration of an of_bus to take care of devices connected to
> > the MV64x60 asynchronous devices controller.
> 
> I'd like to see your dts file to see exactly how you're using it.
Here it is, I removed everything that is not related to the subject:

/dts-v1/;

/ {
	#address-cells = <1>;
	#size-cells = <1>;
	model = "C2K";
	compatible = "GEFanuc,C2K";
	coherency-off;

	<...>

	system-controller at d8000000 { /* Marvell Discovery */
		#address-cells = <1>;
		#size-cells = <1>;
		model = "mv64460";
		compatible = "marvell,mv64360";

		<...>

		/* Devices attached to the device controller */
		devicebus {
			device_type = "devicectrl";
			#address-cells = <1>;
			#size-cells = <1>;
			nor_flash {
				compatible = "cfi-flash";
				reg = <0xf8000000 0x8000000>; /* 128MB */
				bank-width = <4>;
				device-width = <1>;
				#address-cells = <1>;
				#size-cells = <1>;
				partition at 0 {
					label = "boot";
					reg = <0x00000000 0x00080000>;
				};
				partition at 40000 {
					label = "kernel";
					reg = <0x00080000 0x00400000>;
				};
				partition at 440000 {
					label = "initrd";
					reg = <0x00480000 0x00B80000>;
				};
				partition at 1000000 {
					label = "rootfs";
					reg = <0x01000000 0x06800000>;
				};
				partition at 7800000 {
					label = "recovery";
					reg = <0x07800000 0x00800000>;
					read-only;
				};
			};
		};
	};
	<...>
};

> 
> The only problem I see now is that you have introduced a new device
> type, "devicectrl".  New device types are frowned upon.  It's better
> to match based on the compatible field.  Maybe use
> "marvell,mv64306-devctrl" or similar.
> 
Do you mean having the DTS file look like this:
		<...>
		devicebus {
			compatible = "marvell,mv64306-devctrl";
			#address-cells = <1>;
			#size-cells = <1>;
			nor_flash {
				compatible = "cfi-flash";
				reg = <0xf8000000 0x8000000>; 
				<...>
			};
		};

Remi




More information about the Linuxppc-dev mailing list