All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform
@ 2015-10-12  9:34 Joao Pinto
  2015-10-12 21:01 ` Yann E. MORIN
  2015-10-20 21:45 ` [Buildroot] [PATCH v5] " Arnout Vandecappelle
  0 siblings, 2 replies; 6+ messages in thread
From: Joao Pinto @ 2015-10-12  9:34 UTC (permalink / raw)
  To: buildroot

The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
consists of a set of virtual prototypes that provide a virtualizer for 
the ARM core variants. The VDK is a standalone package that runs on an 
host computer.

Remark: 'Image' boot argument was removed.

Signed-off-by: Joao Pinto <jpinto@synopsys.com>
---
 board/synopsys/vdk/linux-vdk-aarch64-defconfig | 226 +++++++++++++++++++++++++
 configs/snps_aarch64_vdk_defconfig             |  15 ++
 2 files changed, 241 insertions(+)
 create mode 100644 board/synopsys/vdk/linux-vdk-aarch64-defconfig
 create mode 100644 configs/snps_aarch64_vdk_defconfig

diff --git a/board/synopsys/vdk/linux-vdk-aarch64-defconfig b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
new file mode 100644
index 0000000..f90f2ca
--- /dev/null
+++ b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
@@ -0,0 +1,226 @@
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_NO_HZ=y
+CONFIG_HIGH_RES_TIMERS=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+CONFIG_LOG_BUF_SHIFT=16
+CONFIG_CGROUPS=y
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_EMBEDDED=y
+CONFIG_SLAB=y
+CONFIG_PROFILING=y
+CONFIG_CC_STACKPROTECTOR_REGULAR=y
+CONFIG_MODULES=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_SMP=y
+CONFIG_SCHED_MC=y
+CONFIG_SCHED_SMT=y
+CONFIG_NR_CPUS=8
+CONFIG_PREEMPT=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
+CONFIG_CMDLINE="console=ttyAMA0 earlyprintk=pl011,0x1c090000 debug user_debug=31 loglevel=9 root=/dev/vda"
+CONFIG_CMDLINE_FORCE=y
+CONFIG_BINFMT_MISC=y
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
+CONFIG_ARM_DT_BL_CPUFREQ=y
+CONFIG_ARM_SPCI_CPUFREQ=y
+CONFIG_NET=y
+CONFIG_PACKET=y
+CONFIG_UNIX=y
+CONFIG_XFRM_USER=y
+CONFIG_NET_KEY=y
+CONFIG_NET_KEY_MIGRATE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+CONFIG_IP_PNP_RARP=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NETWORK_PHY_TIMESTAMPING=y
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NETFILTER_XT_MARK=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NF_CONNTRACK_IPV4=m
+CONFIG_NF_NAT_IPV4=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_NF_CONNTRACK_IPV6=m
+CONFIG_NF_NAT_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE=m
+CONFIG_NET_9P=y
+CONFIG_NET_9P_VIRTIO=y
+CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+CONFIG_VEXPRESS_CONFIG=y
+CONFIG_CONNECTOR=y
+CONFIG_MTD=y
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_BLOCK=y
+CONFIG_MTD_OOPS=y
+CONFIG_MTD_CFI=y
+CONFIG_MTD_CFI_INTELEXT=y
+CONFIG_MTD_SLRAM=y
+CONFIG_MTD_NAND=y
+CONFIG_OF_SELFTEST=y
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_RAM=y
+CONFIG_BLK_DEV_RAM_SIZE=65536
+CONFIG_VIRTIO_BLK=y
+CONFIG_SCSI=y
+CONFIG_BLK_DEV_SD=y
+CONFIG_MD=y
+CONFIG_BLK_DEV_DM=y
+CONFIG_NETDEVICES=y
+CONFIG_TUN=y
+CONFIG_VIRTIO_NET=y
+CONFIG_SMC91X=y
+CONFIG_SMSC911X=y
+CONFIG_STMMAC_ETH=m
+CONFIG_STMMAC_DEBUG_FS=y
+CONFIG_INPUT_EVDEV=y
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=y
+CONFIG_SERIO_AMBAKMI=y
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_I2C=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_SYSFS=y
+CONFIG_POWER_RESET_VEXPRESS=y
+CONFIG_SENSORS_JC42=y
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+CONFIG_FB=y
+CONFIG_FB_ARMCLCD=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+CONFIG_LOGO=y
+CONFIG_USB_HIDDEV=y
+CONFIG_USB=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_HCD_SYNOPSYS=y
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_STORAGE=y
+CONFIG_USB_DWC3=m
+CONFIG_NOP_USB_XCEIV=y
+CONFIG_USB_ULPI=y
+CONFIG_USB_GADGET=m
+CONFIG_USB_DUMMY_HCD=m
+CONFIG_USB_MASS_STORAGE=m
+CONFIG_USB_G_SERIAL=m
+CONFIG_MMC=y
+CONFIG_MMC_ARMMMCI=y
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_GPIO=y
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=y
+CONFIG_LEDS_TRIGGER_ONESHOT=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_LEDS_TRIGGER_BACKLIGHT=y
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_GPIO=y
+CONFIG_SWITCH=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_PL031=y
+CONFIG_VIRTIO_BALLOON=y
+CONFIG_VIRTIO_MMIO=y
+CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
+CONFIG_COMMON_CLK_VERSATILE=y
+CONFIG_CLK_SP810=y
+CONFIG_CLK_VEXPRESS_OSC=y
+CONFIG_COMMON_CLK_SCPI=y
+CONFIG_MAILBOX=y
+CONFIG_ARM_SCPI_PROTOCOL=y
+CONFIG_EXT2_FS=y
+CONFIG_EXT3_FS=y
+CONFIG_EXT3_FS_SECURITY=y
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_FS_SECURITY=y
+CONFIG_BTRFS_FS=y
+CONFIG_QUOTA=y
+CONFIG_QFMT_V2=y
+CONFIG_AUTOFS4_FS=y
+CONFIG_MSDOS_FS=y
+CONFIG_VFAT_FS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_HUGETLBFS=y
+CONFIG_ECRYPT_FS=y
+CONFIG_JFFS2_FS=y
+CONFIG_JFFS2_SUMMARY=y
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RUBIN=y
+CONFIG_CRAMFS=y
+CONFIG_NFS_FS=y
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=y
+CONFIG_ROOT_NFS=y
+CONFIG_NFSD=m
+CONFIG_9P_FS=y
+CONFIG_NLS_CODEPAGE_437=y
+CONFIG_NLS_ISO8859_1=y
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+CONFIG_PRINTK_TIME=y
+CONFIG_DYNAMIC_DEBUG=y
+CONFIG_DEBUG_INFO=y
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_SCHEDSTATS=y
+CONFIG_TIMER_STATS=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_STRICT_DEVMEM=y
+CONFIG_SECURITY=y
+CONFIG_SECURITY_NETWORK_XFRM=y
+CONFIG_LSM_MMAP_MIN_ADDR=0
+CONFIG_SECURITY_SELINUX=y
+CONFIG_SECURITY_SELINUX_BOOTPARAM=y
+CONFIG_SECURITY_SELINUX_DISABLE=y
+CONFIG_SECURITY_SMACK=y
+CONFIG_SECURITY_APPARMOR=y
+CONFIG_DEFAULT_SECURITY_APPARMOR=y
+CONFIG_CRYPTO_MICHAEL_MIC=y
+CONFIG_CRC_CCITT=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC_ITU_T=y
+CONFIG_CRC7=y
diff --git a/configs/snps_aarch64_vdk_defconfig b/configs/snps_aarch64_vdk_defconfig
new file mode 100644
index 0000000..a79b1d2
--- /dev/null
+++ b/configs/snps_aarch64_vdk_defconfig
@@ -0,0 +1,14 @@
+BR2_aarch64=y
+BR2_KERNEL_HEADERS_3_18=y
+BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
+BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
+BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
+BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
+BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
+BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
+BR2_TARGET_ROOTFS_EXT2=y
+# BR2_TARGET_ROOTFS_TAR is not set
-- 
1.8.1.5

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform
  2015-10-12  9:34 [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform Joao Pinto
@ 2015-10-12 21:01 ` Yann E. MORIN
  2015-10-13  9:24   ` Joao Pinto
  2015-10-20 21:45 ` [Buildroot] [PATCH v5] " Arnout Vandecappelle
  1 sibling, 1 reply; 6+ messages in thread
From: Yann E. MORIN @ 2015-10-12 21:01 UTC (permalink / raw)
  To: buildroot

Joao, All,

On 2015-10-12 10:34 +0100, Joao Pinto spake thusly:
> The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
> consists of a set of virtual prototypes that provide a virtualizer for 
> the ARM core variants. The VDK is a standalone package that runs on an 
> host computer.
> 
> Remark: 'Image' boot argument was removed.

That last line does not belong to the commit log. I nstead, it should be
part of the 'changelog' of the patch.

Such a changelog is written after a three-dash line, like so:

    title: brief explanation of the patch

    Body of the commitlog, with more
    in-depth explanations of what it
    is doing.

    Signed-off-by: Your Real Name <your-emain@address>

    ---
    Changes v3 -> v4:
      - drop 'Image' boot option (Thomas)

    Changes v2 -> v3:
      - "some thing changed" (Someone)

    and so on...

This way, when a maintainer applies your patch, only what is above the
three-dash line is kept in the git tree. Whatever is after the
three-dash line gets removed.

The changlog (after the ---) is there to help reviewers see how the
patch has evolved, and adapt their reviews accordingly, with the first
name of the reviewer between ().

> Signed-off-by: Joao Pinto <jpinto@synopsys.com>
> ---
>  board/synopsys/vdk/linux-vdk-aarch64-defconfig | 226 +++++++++++++++++++++++++
>  configs/snps_aarch64_vdk_defconfig             |  15 ++
>  2 files changed, 241 insertions(+)
>  create mode 100644 board/synopsys/vdk/linux-vdk-aarch64-defconfig
>  create mode 100644 configs/snps_aarch64_vdk_defconfig
> 
> diff --git a/board/synopsys/vdk/linux-vdk-aarch64-defconfig b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
> new file mode 100644
> index 0000000..f90f2ca
> --- /dev/null
> +++ b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
> @@ -0,0 +1,226 @@
> +CONFIG_SYSVIPC=y
> +CONFIG_POSIX_MQUEUE=y
> +CONFIG_NO_HZ=y
> +CONFIG_HIGH_RES_TIMERS=y
> +CONFIG_BSD_PROCESS_ACCT=y

This is not a minimal defconfig. I doubt BSD process acounting is
required to have Linux run successfully on the VDK,  is it?

Similarly, options that are not strictly required should not be enabled.
For example, having netfilter enabled is probably not needed either.
Same goes for a lot of the other options.

We are trying to get the minimalist kernel option that just makes the
board boot, with the meaningfull driver to suport the hardware
(ethernet, WiFi, MMC, whatever HW is present...) but not much more.

Having IPv4 (maybe v6) is meaningfull, but having bridge, netfilter or
ebtables, TUN, SCSI, MD and so on is probably not. Also, if you're using
virtio-net to do networking, then an ethernet driver is probably not
required...

Similarly, if the rootfs is ext2, then you don;t need the other
filesystems. Maybe you can disable ext2 and ext3 support, enable ext4
and use it for ext2/3 (CONFIG_EXT4_USE_FOR_EXT2).

9p and 9p-virtio are probably not required either, but having them for
virtio-mounting from the host kinda makes sense...

I know you've already done a few rounds on that patch, but could you
'cleanup' that defconfig as I explained above?

[--SNIP--]
> diff --git a/configs/snps_aarch64_vdk_defconfig b/configs/snps_aarch64_vdk_defconfig
> new file mode 100644
> index 0000000..a79b1d2
> --- /dev/null
> +++ b/configs/snps_aarch64_vdk_defconfig
> @@ -0,0 +1,14 @@
> +BR2_aarch64=y
> +BR2_KERNEL_HEADERS_3_18=y
> +BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
> +BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
> +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
> +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
> +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
> +BR2_TARGET_ROOTFS_EXT2=y
> +# BR2_TARGET_ROOTFS_TAR is not set

Otherwise, this defconfig looks OK! :-)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform
  2015-10-12 21:01 ` Yann E. MORIN
@ 2015-10-13  9:24   ` Joao Pinto
  0 siblings, 0 replies; 6+ messages in thread
From: Joao Pinto @ 2015-10-13  9:24 UTC (permalink / raw)
  To: buildroot


Good morning,

On 10/12/2015 10:01 PM, Yann E. MORIN wrote:
> Joao, All,
> 
> On 2015-10-12 10:34 +0100, Joao Pinto spake thusly:
>> The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
>> consists of a set of virtual prototypes that provide a virtualizer for 
>> the ARM core variants. The VDK is a standalone package that runs on an 
>> host computer.
>>
>> Remark: 'Image' boot argument was removed.
> 
> That last line does not belong to the commit log. I nstead, it should be
> part of the 'changelog' of the patch.
> 
> Such a changelog is written after a three-dash line, like so:
> 
>     title: brief explanation of the patch
> 
>     Body of the commitlog, with more
>     in-depth explanations of what it
>     is doing.
> 
>     Signed-off-by: Your Real Name <your-emain@address>
> 
>     ---
>     Changes v3 -> v4:
>       - drop 'Image' boot option (Thomas)
> 
>     Changes v2 -> v3:
>       - "some thing changed" (Someone)
> 
>     and so on...
> 
> This way, when a maintainer applies your patch, only what is above the
> three-dash line is kept in the git tree. Whatever is after the
> three-dash line gets removed.
> 
> The changlog (after the ---) is there to help reviewers see how the
> patch has evolved, and adapt their reviews accordingly, with the first
> name of the reviewer between ().
> 

Thanks for the info. I will do that!

>> Signed-off-by: Joao Pinto <jpinto@synopsys.com>
>> ---
>>  board/synopsys/vdk/linux-vdk-aarch64-defconfig | 226 +++++++++++++++++++++++++
>>  configs/snps_aarch64_vdk_defconfig             |  15 ++
>>  2 files changed, 241 insertions(+)
>>  create mode 100644 board/synopsys/vdk/linux-vdk-aarch64-defconfig
>>  create mode 100644 configs/snps_aarch64_vdk_defconfig
>>
>> diff --git a/board/synopsys/vdk/linux-vdk-aarch64-defconfig b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
>> new file mode 100644
>> index 0000000..f90f2ca
>> --- /dev/null
>> +++ b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
>> @@ -0,0 +1,226 @@
>> +CONFIG_SYSVIPC=y
>> +CONFIG_POSIX_MQUEUE=y
>> +CONFIG_NO_HZ=y
>> +CONFIG_HIGH_RES_TIMERS=y
>> +CONFIG_BSD_PROCESS_ACCT=y
> 
> This is not a minimal defconfig. I doubt BSD process acounting is
> required to have Linux run successfully on the VDK,  is it?
> 
> Similarly, options that are not strictly required should not be enabled.
> For example, having netfilter enabled is probably not needed either.
> Same goes for a lot of the other options.
> 
> We are trying to get the minimalist kernel option that just makes the
> board boot, with the meaningfull driver to suport the hardware
> (ethernet, WiFi, MMC, whatever HW is present...) but not much more.
> 
> Having IPv4 (maybe v6) is meaningfull, but having bridge, netfilter or
> ebtables, TUN, SCSI, MD and so on is probably not. Also, if you're using
> virtio-net to do networking, then an ethernet driver is probably not
> required...
> 
> Similarly, if the rootfs is ext2, then you don;t need the other
> filesystems. Maybe you can disable ext2 and ext3 support, enable ext4
> and use it for ext2/3 (CONFIG_EXT4_USE_FOR_EXT2).
> 
> 9p and 9p-virtio are probably not required either, but having them for
> virtio-mounting from the host kinda makes sense...
> 
> I know you've already done a few rounds on that patch, but could you
> 'cleanup' that defconfig as I explained above?

No problem! The idea is to achieve the perfect patch! Thank you for your tips!

> 
> [--SNIP--]
>> diff --git a/configs/snps_aarch64_vdk_defconfig b/configs/snps_aarch64_vdk_defconfig
>> new file mode 100644
>> index 0000000..a79b1d2
>> --- /dev/null
>> +++ b/configs/snps_aarch64_vdk_defconfig
>> @@ -0,0 +1,14 @@
>> +BR2_aarch64=y
>> +BR2_KERNEL_HEADERS_3_18=y
>> +BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
>> +BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
>> +BR2_LINUX_KERNEL=y
>> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
>> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
>> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
>> +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
>> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
>> +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
>> +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
>> +BR2_TARGET_ROOTFS_EXT2=y
>> +# BR2_TARGET_ROOTFS_TAR is not set
> 
> Otherwise, this defconfig looks OK! :-)
> 
> Regards,
> Yann E. MORIN.
> 

I will send a new patch! Thanks a lot for the review!

Joao

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v5] board: add support for Synopsys VDK Software Development Platform
  2015-10-12  9:34 [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform Joao Pinto
  2015-10-12 21:01 ` Yann E. MORIN
@ 2015-10-20 21:45 ` Arnout Vandecappelle
  2015-10-21  7:25   ` Thomas Petazzoni
  2015-10-22  9:21   ` Joao Pinto
  1 sibling, 2 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-10-20 21:45 UTC (permalink / raw)
  To: buildroot

On 13-10-15 12:10, Joao Pinto wrote:
> title: Add support for Synopsys VDK Software Development Platform

 No need to repeat what is already in the subject.

> 
> The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
> consists of a set of virtual prototypes that provide a virtualizer for 
> the ARM core variants. The VDK is a standalone package that runs on an 
> host computer.

 I guess it's non-free as well?

> 
> Signed-off-by: Joao Pinto <jpinto@synopsys.com>
> ---
> Change v4 -> v5:
>  - Changelog format, minimal defconfig (Yann E. MORIN)
> Change v3 -> v4:
>  - drop 'Image' boot option (Thomas Petazzoni)
> Change v2 -> v3:
>  - kernel defconfig was not generated properly (Thomas Petazzoni)
> 
>  board/synopsys/vdk/linux-vdk-aarch64-defconfig | 226 +++++++++++++++++++++++++
>  configs/snps_aarch64_vdk_defconfig             |  15 ++
>  2 files changed, 241 insertions(+)
>  create mode 100644 board/synopsys/vdk/linux-vdk-aarch64-defconfig
>  create mode 100644 configs/snps_aarch64_vdk_defconfig
> 
> diff --git a/board/synopsys/vdk/linux-vdk-aarch64-defconfig b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
> new file mode 100644
> index 0000000..f90f2ca
> --- /dev/null
> +++ b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
> @@ -0,0 +1,175 @@
> +CONFIG_SYSVIPC=y
> +CONFIG_POSIX_MQUEUE=y
> +CONFIG_NO_HZ=y
> +CONFIG_HIGH_RES_TIMERS=y
> +CONFIG_BSD_PROCESS_ACCT=y
> +CONFIG_IKCONFIG=y
> +CONFIG_IKCONFIG_PROC=y
> +CONFIG_LOG_BUF_SHIFT=16
> +CONFIG_CGROUPS=y
> +CONFIG_BLK_DEV_INITRD=y
> +CONFIG_EMBEDDED=y
> +CONFIG_SLAB=y
> +CONFIG_PROFILING=y
> +CONFIG_CC_STACKPROTECTOR_REGULAR=y
> +CONFIG_MODULES=y
> +CONFIG_MODULE_UNLOAD=y
> +CONFIG_SMP=y
> +CONFIG_SCHED_MC=y
> +CONFIG_SCHED_SMT=y
> +CONFIG_NR_CPUS=8
> +CONFIG_PREEMPT=y
> +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
> +CONFIG_TRANSPARENT_HUGEPAGE=y
> +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
> +CONFIG_CMDLINE="console=ttyAMA0 earlyprintk=pl011,0x1c090000 debug user_debug=31 loglevel=9 root=/dev/vda"
> +CONFIG_CMDLINE_FORCE=y

 Is this really needed? Well, VDK probably doesn't allow passing a command line
anyway...


> +CONFIG_BINFMT_MISC=y
> +CONFIG_CPU_IDLE=y
> +CONFIG_CPU_FREQ=y
> +CONFIG_CPU_FREQ_GOV_USERSPACE=y
> +CONFIG_CPU_FREQ_GOV_ONDEMAND=y

 Does VDK support frequency scaling?

> +CONFIG_ARM_BIG_LITTLE_CPUFREQ=y

 Does VDK support big.LITTLE?

> +CONFIG_ARM_DT_BL_CPUFREQ=y
> +CONFIG_ARM_SPCI_CPUFREQ=y
> +CONFIG_NET=y
> +CONFIG_PACKET=y
> +CONFIG_UNIX=y
> +CONFIG_XFRM_USER=y

 Is this needed?

> +CONFIG_NET_KEY=y
> +CONFIG_NET_KEY_MIGRATE=y
> +CONFIG_INET=y
> +CONFIG_IP_MULTICAST=y
> +CONFIG_IP_PNP=y
> +CONFIG_IP_PNP_DHCP=y
> +CONFIG_IP_PNP_BOOTP=y
> +CONFIG_IP_PNP_RARP=y
> +CONFIG_SYN_COOKIES=y
> +CONFIG_NETWORK_PHY_TIMESTAMPING=y
> +CONFIG_NET_9P=y

 Is Plan9 useful in a simulator?

> +CONFIG_NET_9P_VIRTIO=y
> +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
> +CONFIG_DEVTMPFS=y
> +CONFIG_DEVTMPFS_MOUNT=y
> +CONFIG_VEXPRESS_CONFIG=y

 Does VDK use VExpress?

> +CONFIG_CONNECTOR=y
> +CONFIG_MTD=y
> +CONFIG_MTD_CMDLINE_PARTS=y
> +CONFIG_MTD_BLOCK=y
> +CONFIG_MTD_OOPS=y
> +CONFIG_MTD_CFI=y
> +CONFIG_MTD_CFI_INTELEXT=y
> +CONFIG_MTD_SLRAM=y

 Does VDK support all of that?

> +CONFIG_MTD_NAND=y
> +CONFIG_OF_SELFTEST=y
> +CONFIG_BLK_DEV_LOOP=y
> +CONFIG_BLK_DEV_NBD=m
> +CONFIG_BLK_DEV_RAM=y
> +CONFIG_BLK_DEV_RAM_SIZE=65536

 Are these three needed?

> +CONFIG_VIRTIO_BLK=y
> +CONFIG_SCSI=y
> +CONFIG_BLK_DEV_SD=y
> +CONFIG_BLK_DEV_DM=y
> +CONFIG_NETDEVICES=y
> +CONFIG_SMC91X=y
> +CONFIG_SMSC911X=y
> +CONFIG_STMMAC_ETH=m

 Does VDK support all of these?

> +CONFIG_STMMAC_DEBUG_FS=y

 Is this needed?

> +CONFIG_INPUT_EVDEV=y
> +CONFIG_INPUT_MISC=y
> +CONFIG_INPUT_UINPUT=y
> +CONFIG_SERIO_AMBAKMI=y
> +CONFIG_SERIAL_8250=y
> +CONFIG_SERIAL_8250_CONSOLE=y
> +CONFIG_SERIAL_AMBA_PL011=y
> +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
> +CONFIG_SERIAL_OF_PLATFORM=y

 Err, I thought OpenFirmware was a PowerPC thing?

> +CONFIG_VIRTIO_CONSOLE=y
> +CONFIG_I2C=y
> +CONFIG_I2C_CHARDEV=y
> +CONFIG_I2C_DESIGNWARE_PLATFORM=y
> +CONFIG_GPIOLIB=y
> +CONFIG_GPIO_SYSFS=y
> +CONFIG_POWER_RESET_VEXPRESS=y
> +CONFIG_FB=y
> +CONFIG_FB_ARMCLCD=y
> +CONFIG_FRAMEBUFFER_CONSOLE=y
> +CONFIG_LOGO=y
> +CONFIG_USB_HIDDEV=y
> +CONFIG_USB=y
> +CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_EHCI_HCD_SYNOPSYS=y
> +CONFIG_USB_OHCI_HCD=y
> +CONFIG_NOP_USB_XCEIV=y
> +CONFIG_USB_ULPI=y
> +CONFIG_USB_DUMMY_HCD=m
> +CONFIG_USB_G_SERIAL=m
> +CONFIG_MMC=y
> +CONFIG_MMC_ARMMMCI=y
> +CONFIG_NEW_LEDS=y
> +CONFIG_LEDS_CLASS=y
> +CONFIG_LEDS_GPIO=y
> +CONFIG_LEDS_TRIGGERS=y
> +CONFIG_LEDS_TRIGGER_TIMER=y
> +CONFIG_LEDS_TRIGGER_ONESHOT=y
> +CONFIG_LEDS_TRIGGER_HEARTBEAT=y
> +CONFIG_LEDS_TRIGGER_BACKLIGHT=y
> +CONFIG_LEDS_TRIGGER_CPU=y
> +CONFIG_LEDS_TRIGGER_GPIO=y
> +CONFIG_SWITCH=y
> +CONFIG_RTC_CLASS=y
> +CONFIG_RTC_DRV_PL031=y
> +CONFIG_VIRTIO_BALLOON=y
> +CONFIG_VIRTIO_MMIO=y
> +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
> +CONFIG_COMMON_CLK_VERSATILE=y
> +CONFIG_CLK_SP810=y
> +CONFIG_CLK_VEXPRESS_OSC=y
> +CONFIG_COMMON_CLK_SCPI=y
> +CONFIG_MAILBOX=y
> +CONFIG_ARM_SCPI_PROTOCOL=y
> +CONFIG_EXT4_FS=y
> +CONFIG_EXT4_FS_SECURITY=y
> +CONFIG_BTRFS_FS=y

 I don't think btrfs is needed. Perhaps as a module. Same for the other fses.

> +CONFIG_QUOTA=y
> +CONFIG_QFMT_V2=y
> +CONFIG_AUTOFS4_FS=y
> +CONFIG_MSDOS_FS=y
> +CONFIG_VFAT_FS=y
> +CONFIG_TMPFS=y
> +CONFIG_TMPFS_POSIX_ACL=y
> +CONFIG_HUGETLBFS=y
> +CONFIG_ECRYPT_FS=y
> +CONFIG_JFFS2_FS=y
> +CONFIG_JFFS2_SUMMARY=y
> +CONFIG_JFFS2_FS_XATTR=y
> +CONFIG_JFFS2_COMPRESSION_OPTIONS=y
> +CONFIG_JFFS2_LZO=y
> +CONFIG_JFFS2_RUBIN=y
> +CONFIG_CRAMFS=y
> +CONFIG_9P_FS=y
> +CONFIG_NLS_CODEPAGE_437=y
> +CONFIG_NLS_ISO8859_1=y
> +CONFIG_VIRTUALIZATION=y
> +CONFIG_KVM=y
> +CONFIG_DYNAMIC_DEBUG=y
> +CONFIG_DEBUG_INFO=y
> +CONFIG_MAGIC_SYSRQ=y
> +CONFIG_SCHEDSTATS=y
> +CONFIG_TIMER_STATS=y
> +CONFIG_FUNCTION_TRACER=y
> +CONFIG_STRICT_DEVMEM=y
> +CONFIG_SECURITY=y
> +CONFIG_SECURITY_NETWORK_XFRM=y
> +CONFIG_LSM_MMAP_MIN_ADDR=0
> +CONFIG_SECURITY_SELINUX=y
> +CONFIG_SECURITY_SELINUX_BOOTPARAM=y
> +CONFIG_SECURITY_SELINUX_DISABLE=y
> +CONFIG_SECURITY_SMACK=y
> +CONFIG_SECURITY_APPARMOR=y
> +CONFIG_DEFAULT_SECURITY_APPARMOR=y

 We don't enable any security option in all the other kernel configs...

> +CONFIG_CRYPTO_MICHAEL_MIC=y
> +CONFIG_CRC_CCITT=y
> +CONFIG_CRC_T10DIF=y
> +CONFIG_CRC_ITU_T=y
> +CONFIG_CRC7=y

 All of these definitely have no business in a defconfig.

> diff --git a/configs/snps_aarch64_vdk_defconfig b/configs/snps_aarch64_vdk_defconfig
> new file mode 100644
> index 0000000..a79b1d2
> --- /dev/null
> +++ b/configs/snps_aarch64_vdk_defconfig
> @@ -0,0 +1,14 @@
> +BR2_aarch64=y
> +BR2_KERNEL_HEADERS_3_18=y
> +BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
> +BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
> +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
> +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
> +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
> +BR2_TARGET_ROOTFS_EXT2=y

 Perhaps also select EXT2_4.


 It would also be good to add a readme file that explains how to start the
simulator. Like board/qemu/arm-vexpress/readme.txt


 Regards,
 Arnout

> +# BR2_TARGET_ROOTFS_TAR is not set
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v5] board: add support for Synopsys VDK Software Development Platform
  2015-10-20 21:45 ` [Buildroot] [PATCH v5] " Arnout Vandecappelle
@ 2015-10-21  7:25   ` Thomas Petazzoni
  2015-10-22  9:21   ` Joao Pinto
  1 sibling, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2015-10-21  7:25 UTC (permalink / raw)
  To: buildroot

Arnout,

On Tue, 20 Oct 2015 23:45:02 +0200, Arnout Vandecappelle wrote:

> > +CONFIG_INPUT_EVDEV=y
> > +CONFIG_INPUT_MISC=y
> > +CONFIG_INPUT_UINPUT=y
> > +CONFIG_SERIO_AMBAKMI=y
> > +CONFIG_SERIAL_8250=y
> > +CONFIG_SERIAL_8250_CONSOLE=y
> > +CONFIG_SERIAL_AMBA_PL011=y
> > +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
> > +CONFIG_SERIAL_OF_PLATFORM=y
> 
>  Err, I thought OpenFirmware was a PowerPC thing?

Yes, originally. But OF is now used more or less as a synonym for
"Device Tree", i.e all the kernel functions to parse the Device Tree
are prefixed with of_*().

If you don't have CONFIG_SERIAL_OF_PLATFORM=y and your hardware is
described by a Device Tree, then your 8250 serial driver will not probe.

However, what is a bit weird is to enable both the 8250 driver and the
pl011 driver.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v5] board: add support for Synopsys VDK Software Development Platform
  2015-10-20 21:45 ` [Buildroot] [PATCH v5] " Arnout Vandecappelle
  2015-10-21  7:25   ` Thomas Petazzoni
@ 2015-10-22  9:21   ` Joao Pinto
  1 sibling, 0 replies; 6+ messages in thread
From: Joao Pinto @ 2015-10-22  9:21 UTC (permalink / raw)
  To: buildroot

Hi Arnout,

On 10/20/2015 10:45 PM, Arnout Vandecappelle wrote:
> On 13-10-15 12:10, Joao Pinto wrote:
>> title: Add support for Synopsys VDK Software Development Platform
> 
>  No need to repeat what is already in the subject.
> 
>>
>> The Virtualizer Development Kit (VDK) Family for ARM Cortex Products
>> consists of a set of virtual prototypes that provide a virtualizer for 
>> the ARM core variants. The VDK is a standalone package that runs on an 
>> host computer.
> 
>  I guess it's non-free as well?

You're right, VDK is a Synopsys non-free tool.

> 
>>
>> Signed-off-by: Joao Pinto <jpinto@synopsys.com>
>> ---
>> Change v4 -> v5:
>>  - Changelog format, minimal defconfig (Yann E. MORIN)
>> Change v3 -> v4:
>>  - drop 'Image' boot option (Thomas Petazzoni)
>> Change v2 -> v3:
>>  - kernel defconfig was not generated properly (Thomas Petazzoni)
>>
>>  board/synopsys/vdk/linux-vdk-aarch64-defconfig | 226 +++++++++++++++++++++++++
>>  configs/snps_aarch64_vdk_defconfig             |  15 ++
>>  2 files changed, 241 insertions(+)
>>  create mode 100644 board/synopsys/vdk/linux-vdk-aarch64-defconfig
>>  create mode 100644 configs/snps_aarch64_vdk_defconfig
>>
>> diff --git a/board/synopsys/vdk/linux-vdk-aarch64-defconfig b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
>> new file mode 100644
>> index 0000000..f90f2ca
>> --- /dev/null
>> +++ b/board/synopsys/vdk/linux-vdk-aarch64-defconfig
>> @@ -0,0 +1,175 @@
>> +CONFIG_SYSVIPC=y
>> +CONFIG_POSIX_MQUEUE=y
>> +CONFIG_NO_HZ=y
>> +CONFIG_HIGH_RES_TIMERS=y
>> +CONFIG_BSD_PROCESS_ACCT=y
>> +CONFIG_IKCONFIG=y
>> +CONFIG_IKCONFIG_PROC=y
>> +CONFIG_LOG_BUF_SHIFT=16
>> +CONFIG_CGROUPS=y
>> +CONFIG_BLK_DEV_INITRD=y
>> +CONFIG_EMBEDDED=y
>> +CONFIG_SLAB=y
>> +CONFIG_PROFILING=y
>> +CONFIG_CC_STACKPROTECTOR_REGULAR=y
>> +CONFIG_MODULES=y
>> +CONFIG_MODULE_UNLOAD=y
>> +CONFIG_SMP=y
>> +CONFIG_SCHED_MC=y
>> +CONFIG_SCHED_SMT=y
>> +CONFIG_NR_CPUS=8
>> +CONFIG_PREEMPT=y
>> +CONFIG_DEFAULT_MMAP_MIN_ADDR=32768
>> +CONFIG_TRANSPARENT_HUGEPAGE=y
>> +CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
>> +CONFIG_CMDLINE="console=ttyAMA0 earlyprintk=pl011,0x1c090000 debug user_debug=31 loglevel=9 root=/dev/vda"
>> +CONFIG_CMDLINE_FORCE=y
> 
>  Is this really needed? Well, VDK probably doesn't allow passing a command line
> anyway...

For the VDK environment we have two ways, this one or to set the bootargs in the
device tree, but in my opinion this option is more clean.

> 
> 
>> +CONFIG_BINFMT_MISC=y
>> +CONFIG_CPU_IDLE=y
>> +CONFIG_CPU_FREQ=y
>> +CONFIG_CPU_FREQ_GOV_USERSPACE=y
>> +CONFIG_CPU_FREQ_GOV_ONDEMAND=y
> 
>  Does VDK support frequency scaling?

VDK is an emulation of an ARMv8, so we try to include as features as possible.
So I would recommend to keep this options.

> 
>> +CONFIG_ARM_BIG_LITTLE_CPUFREQ=y
> 
>  Does VDK support big.LITTLE?

Same as before.

> 
>> +CONFIG_ARM_DT_BL_CPUFREQ=y
>> +CONFIG_ARM_SPCI_CPUFREQ=y
>> +CONFIG_NET=y
>> +CONFIG_PACKET=y
>> +CONFIG_UNIX=y
>> +CONFIG_XFRM_USER=y
> 
>  Is this needed?
> 
>> +CONFIG_NET_KEY=y
>> +CONFIG_NET_KEY_MIGRATE=y
>> +CONFIG_INET=y
>> +CONFIG_IP_MULTICAST=y
>> +CONFIG_IP_PNP=y
>> +CONFIG_IP_PNP_DHCP=y
>> +CONFIG_IP_PNP_BOOTP=y
>> +CONFIG_IP_PNP_RARP=y
>> +CONFIG_SYN_COOKIES=y
>> +CONFIG_NETWORK_PHY_TIMESTAMPING=y
>> +CONFIG_NET_9P=y
> 
>  Is Plan9 useful in a simulator?

This one can be removed.

> 
>> +CONFIG_NET_9P_VIRTIO=y
>> +CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
>> +CONFIG_DEVTMPFS=y
>> +CONFIG_DEVTMPFS_MOUNT=y
>> +CONFIG_VEXPRESS_CONFIG=y
> 
>  Does VDK use VExpress?

Synopsys VDK runs a foundation model of ARMv8 and according to the tool' team,
the "Versatile Express" should be activated.

> 
>> +CONFIG_CONNECTOR=y
>> +CONFIG_MTD=y
>> +CONFIG_MTD_CMDLINE_PARTS=y
>> +CONFIG_MTD_BLOCK=y
>> +CONFIG_MTD_OOPS=y
>> +CONFIG_MTD_CFI=y
>> +CONFIG_MTD_CFI_INTELEXT=y
>> +CONFIG_MTD_SLRAM=y
> 
>  Does VDK support all of that?

Yes, the MTD package can be removed.

> 
>> +CONFIG_MTD_NAND=y
>> +CONFIG_OF_SELFTEST=y
>> +CONFIG_BLK_DEV_LOOP=y
>> +CONFIG_BLK_DEV_NBD=m
>> +CONFIG_BLK_DEV_RAM=y
>> +CONFIG_BLK_DEV_RAM_SIZE=65536
> 
>  Are these three needed?

The MTD module, as previously stated, can be removed.
I think CONFIG_BLK_DEV_NBD, CONFIG_OF_SELFTEST can be removed.
The CONFIG_BLK_DEV_* are useful when VDK is used as part of the Synopsys Hybrid
Prototyping Kits.

> 
>> +CONFIG_VIRTIO_BLK=y
>> +CONFIG_SCSI=y
>> +CONFIG_BLK_DEV_SD=y
>> +CONFIG_BLK_DEV_DM=y
>> +CONFIG_NETDEVICES=y
>> +CONFIG_SMC91X=y
>> +CONFIG_SMSC911X=y
>> +CONFIG_STMMAC_ETH=m
> 
>  Does VDK support all of these?

I think CONFIG_SMC91X and CONFIG_SMSC911X can be removed.

> 
>> +CONFIG_STMMAC_DEBUG_FS=y
> 
>  Is this needed?
> 

I think CONFIG_STMMAC_DEBUG_FS can be removed.

>> +CONFIG_INPUT_EVDEV=y
>> +CONFIG_INPUT_MISC=y
>> +CONFIG_INPUT_UINPUT=y
>> +CONFIG_SERIO_AMBAKMI=y
>> +CONFIG_SERIAL_8250=y
>> +CONFIG_SERIAL_8250_CONSOLE=y
>> +CONFIG_SERIAL_AMBA_PL011=y
>> +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
>> +CONFIG_SERIAL_OF_PLATFORM=y
> 
>  Err, I thought OpenFirmware was a PowerPC thing?
> 
>> +CONFIG_VIRTIO_CONSOLE=y
>> +CONFIG_I2C=y
>> +CONFIG_I2C_CHARDEV=y
>> +CONFIG_I2C_DESIGNWARE_PLATFORM=y
>> +CONFIG_GPIOLIB=y
>> +CONFIG_GPIO_SYSFS=y
>> +CONFIG_POWER_RESET_VEXPRESS=y
>> +CONFIG_FB=y
>> +CONFIG_FB_ARMCLCD=y
>> +CONFIG_FRAMEBUFFER_CONSOLE=y
>> +CONFIG_LOGO=y
>> +CONFIG_USB_HIDDEV=y
>> +CONFIG_USB=y
>> +CONFIG_USB_EHCI_HCD=y
>> +CONFIG_USB_EHCI_HCD_SYNOPSYS=y
>> +CONFIG_USB_OHCI_HCD=y
>> +CONFIG_NOP_USB_XCEIV=y
>> +CONFIG_USB_ULPI=y
>> +CONFIG_USB_DUMMY_HCD=m
>> +CONFIG_USB_G_SERIAL=m
>> +CONFIG_MMC=y
>> +CONFIG_MMC_ARMMMCI=y
>> +CONFIG_NEW_LEDS=y
>> +CONFIG_LEDS_CLASS=y
>> +CONFIG_LEDS_GPIO=y
>> +CONFIG_LEDS_TRIGGERS=y
>> +CONFIG_LEDS_TRIGGER_TIMER=y
>> +CONFIG_LEDS_TRIGGER_ONESHOT=y
>> +CONFIG_LEDS_TRIGGER_HEARTBEAT=y
>> +CONFIG_LEDS_TRIGGER_BACKLIGHT=y
>> +CONFIG_LEDS_TRIGGER_CPU=y
>> +CONFIG_LEDS_TRIGGER_GPIO=y
>> +CONFIG_SWITCH=y
>> +CONFIG_RTC_CLASS=y
>> +CONFIG_RTC_DRV_PL031=y
>> +CONFIG_VIRTIO_BALLOON=y
>> +CONFIG_VIRTIO_MMIO=y
>> +CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
>> +CONFIG_COMMON_CLK_VERSATILE=y
>> +CONFIG_CLK_SP810=y
>> +CONFIG_CLK_VEXPRESS_OSC=y
>> +CONFIG_COMMON_CLK_SCPI=y
>> +CONFIG_MAILBOX=y
>> +CONFIG_ARM_SCPI_PROTOCOL=y
>> +CONFIG_EXT4_FS=y
>> +CONFIG_EXT4_FS_SECURITY=y
>> +CONFIG_BTRFS_FS=y
> 
>  I don't think btrfs is needed. Perhaps as a module. Same for the other fses.

Yep, we can put them as modules.

> 
>> +CONFIG_QUOTA=y
>> +CONFIG_QFMT_V2=y
>> +CONFIG_AUTOFS4_FS=y
>> +CONFIG_MSDOS_FS=y
>> +CONFIG_VFAT_FS=y
>> +CONFIG_TMPFS=y
>> +CONFIG_TMPFS_POSIX_ACL=y
>> +CONFIG_HUGETLBFS=y
>> +CONFIG_ECRYPT_FS=y
>> +CONFIG_JFFS2_FS=y
>> +CONFIG_JFFS2_SUMMARY=y
>> +CONFIG_JFFS2_FS_XATTR=y
>> +CONFIG_JFFS2_COMPRESSION_OPTIONS=y
>> +CONFIG_JFFS2_LZO=y
>> +CONFIG_JFFS2_RUBIN=y
>> +CONFIG_CRAMFS=y
>> +CONFIG_9P_FS=y
>> +CONFIG_NLS_CODEPAGE_437=y
>> +CONFIG_NLS_ISO8859_1=y
>> +CONFIG_VIRTUALIZATION=y
>> +CONFIG_KVM=y
>> +CONFIG_DYNAMIC_DEBUG=y
>> +CONFIG_DEBUG_INFO=y
>> +CONFIG_MAGIC_SYSRQ=y
>> +CONFIG_SCHEDSTATS=y
>> +CONFIG_TIMER_STATS=y
>> +CONFIG_FUNCTION_TRACER=y
>> +CONFIG_STRICT_DEVMEM=y
>> +CONFIG_SECURITY=y
>> +CONFIG_SECURITY_NETWORK_XFRM=y
>> +CONFIG_LSM_MMAP_MIN_ADDR=0
>> +CONFIG_SECURITY_SELINUX=y
>> +CONFIG_SECURITY_SELINUX_BOOTPARAM=y
>> +CONFIG_SECURITY_SELINUX_DISABLE=y
>> +CONFIG_SECURITY_SMACK=y
>> +CONFIG_SECURITY_APPARMOR=y
>> +CONFIG_DEFAULT_SECURITY_APPARMOR=y
> 
>  We don't enable any security option in all the other kernel configs...

This is not a critical issue, we can remove the security packages.

> 
>> +CONFIG_CRYPTO_MICHAEL_MIC=y
>> +CONFIG_CRC_CCITT=y
>> +CONFIG_CRC_T10DIF=y
>> +CONFIG_CRC_ITU_T=y
>> +CONFIG_CRC7=y
> 
>  All of these definitely have no business in a defconfig.

You're right is can be removed.

> 
>> diff --git a/configs/snps_aarch64_vdk_defconfig b/configs/snps_aarch64_vdk_defconfig
>> new file mode 100644
>> index 0000000..a79b1d2
>> --- /dev/null
>> +++ b/configs/snps_aarch64_vdk_defconfig
>> @@ -0,0 +1,14 @@
>> +BR2_aarch64=y
>> +BR2_KERNEL_HEADERS_3_18=y
>> +BR2_TARGET_GENERIC_HOSTNAME="vdk-buildroot"
>> +BR2_TARGET_GENERIC_ISSUE="Welcome to SNPS VDK by Buildroot"
>> +BR2_LINUX_KERNEL=y
>> +BR2_LINUX_KERNEL_CUSTOM_GIT=y
>> +BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.linaro.org/kernel/linux-linaro-tracking.git"
>> +BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="linux-linaro-3.18-2014.12"
>> +BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
>> +BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/synopsys/vdk/linux-vdk-aarch64-defconfig"
>> +BR2_LINUX_KERNEL_IMAGE_TARGET_CUSTOM=y
>> +BR2_LINUX_KERNEL_IMAGE_TARGET_NAME="Image"
>> +BR2_TARGET_ROOTFS_EXT2=y
> 
>  Perhaps also select EXT2_4.
> 
> 
>  It would also be good to add a readme file that explains how to start the
> simulator. Like board/qemu/arm-vexpress/readme.txt

Sure, I will include one.

> 
> 
>  Regards,
>  Arnout
> 
>> +# BR2_TARGET_ROOTFS_TAR is not set
>>
> 
> 

Based on your comments I will make a new patch to support VDK.

Thanks,

-Joao

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-10-22  9:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-12  9:34 [Buildroot] [PATCH v4] board: add support for Synopsys VDK Software Development Platform Joao Pinto
2015-10-12 21:01 ` Yann E. MORIN
2015-10-13  9:24   ` Joao Pinto
2015-10-20 21:45 ` [Buildroot] [PATCH v5] " Arnout Vandecappelle
2015-10-21  7:25   ` Thomas Petazzoni
2015-10-22  9:21   ` Joao Pinto

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.