Skip to content
Snippets Groups Projects
  1. Nov 30, 2018
    • Sean Klein's avatar
      [fs][devmgr] Avoid using inequality operators on ordinals · 127a66b1
      Sean Klein authored
      Although there is still heavy reliance on ordinals as constants
      outside generated FIDL code, this patch removes the filesystem
      dependence on relative ordering of FIDL ordinals by instead
      utilizing the "try_dispatch" family of functions.
      
      Rather than routing to the appropriate dispatch function, the FIDL
      handler will now "try_dispatch" to all possible interfaces,
      checking against ERR_NOT_SUPPORTED until something else is returned
      or the list is exhausted.
      
      This is less efficient, but acts as a workaround for FTP-20.
      
      ZX-3063 #done
      Test: CQ
      
      Change-Id: Iff1736757417e2b44765ae0083fc6d16022102fe
      127a66b1
    • Christopher Tam's avatar
      [fidlc][c] Use resolved enum values from library · 977cb6d9
      Christopher Tam authored
      Given previous changes, enum member values are now validated and
      resolved at compile time and should no longer need to be parsed by the
      C backend. This change removes the parsing from the C backend and
      instead, reads the resolved values.
      
      FIDL-304 #comment
      
      Test: No regressions on C bindings.
      Change-Id: If9e97afc97da8b1c3f66e5cd337d2b4c3ef37c94
      977cb6d9
    • Miguel Flores Ruiz de Eguino's avatar
      [docs] Update docs on crashlogger · f5aac8f2
      Miguel Flores Ruiz de Eguino authored
      TESTED=cq
      
      Change-Id: I96797b05b320d86f8ac12e53d89ce6198bb10b3d
      f5aac8f2
    • Pascal Perez's avatar
      [fidlc] Verify attribute placement · 5ccbab27
      Pascal Perez authored
      Instrumenting raw to flat conversion to check attribute placement, and
      adding a central place where placements can be checked. Using this to
      prevent attributes like [Layout] or [FragileBase] to be incorrectly
      placed.
      
      Test: make -j 72 HOST_USE_ASAN=true tools && ./build-x64/host_tests/fidl-compiler-test
      Change-Id: I21cdce25b0c06f110938a3baeff7ca4fd8dccfd4
      5ccbab27
    • Pascal Perez's avatar
      [sysmem] Remove temporary work around union alignment rules in C bindings · 9f8eca42
      Pascal Perez authored
      See https://fuchsia-review.googlesource.com/c/zircon/+/214943
      
      FIDL-204 #comment
      
      Test: cq
      Change-Id: Ie831e81a253331cd3769728d2e121feb6d96f45d
      9f8eca42
    • Leonard Chan's avatar
      [prebuilt] Roll Clang toolchain · 0a1aaa70
      Leonard Chan authored
      TEST: CQ
      
      Change-Id: I2a160577bbf1d7ed503f2aee0c0b0a263b4e18a7
      0a1aaa70
    • George Kulakowski's avatar
      [devmgr][coordinator] Aggregate statics into a class · 915c81ac
      George Kulakowski authored
      Test: no functional change
      
      Change-Id: I7701e63d509a3c823fab0af28dd0f7443c6aa41b
      915c81ac
    • Sean Klein's avatar
      [blobfs] (2/4) Add blobfs allocator, new inode format · fd232461
      Sean Klein authored
      ZX-2997 #comment In Progress
      Test: /boot/test/fs/blobfs-unit-tests
      
      Change-Id: I1d0d6d618cc248eb82dd12caf44ccc850e532852
      fd232461
    • Martin Puryear's avatar
      [audio] Export audio-proto and simple-audio-stream · 0c1a3ed6
      Martin Puryear authored
      Currently, all audio drivers reside in zircon/system/dev/audio.
      Certain new audio driver work might benefit from being in garnet
      instead. Doing this requires these two zircon-based sourcesets to be
      exported to zircon/public/lib.
      
      Test: build (with custom garnet project that consumes it), CQ
      
      Change-Id: Ic194a46d56f9a5cde5da890c59b39d780c6ca152
      0c1a3ed6
    • Christopher Tam's avatar
      [fidlc] Validate enum members during compilation · 6e449405
      Christopher Tam authored
      Previously, members of enums were not validated and would propagate
      errors into the backend. This change moves the validation into the
      frontend. Validation includes:
        (1) Member value resolution
        (2) Member typechecking
        (3) Member name uniqueness check
        (4) Member value uniqueness checks
      
      FIDL-371 #done
      FIDL-374 #done
      
      This change also includes new tests for validation.
      
      Test: Test fidlc on both valid and invalid enums and run new test cases.
      Change-Id: I16b70bda994f0b778af7232513c3beac2691a829
      6e449405
    • Mike Voydanoff's avatar
      [dev][mt-usb] First cut at USB driver for Mediatek mt8167s · 49dc76c1
      Mike Voydanoff authored
      Peripheral role only. Support for host role comming later.
      Uses fifos for IO. DMA support not yet implemented.
      
      TEST: netboot zircon over CDC ethernet function
      
      Change-Id: Id52ee06a138412837893e15e2862b82d9b3afaa4
      49dc76c1
    • Sean Klein's avatar
      [blobfs] (1/4) Add blobfs node, extent reservers · 4b95b0ee
      Sean Klein authored
      Adds RAII interfaces to allocate nodes and extents.
      
      Additionally, defines an Extent structure which will (in later patches)
      be added to the blobfs inode.
      
      ZX-2997 #comment In Progress
      Test: /boot/test/fs/blobfs-unit-tests
      
      Change-Id: Ia05e0c60c61b679319ea23cf29915b0f4bd00f53
      4b95b0ee
    • Nick Maniscalco's avatar
      [kernel][thread] Refactor thread_sleep_etc to accept slack params · db58e871
      Nick Maniscalco authored
      Refactor thread_sleep_etc to accept slack parameters and the current
      time. In a future CL, (most?) calls to thread_sleep_interruptable will
      be replaced with calls to thread_sleep_etc that pass slack arguments
      obtained from the ThreadDispatcher.
      
      Bug: ZX-931 #comment Refactor thread_sleep_etc
      Test: CQ and "k sleep_tests"
      Change-Id: I387aef7e7af9112102b947b1bf654bf4b66897db
      db58e871
    • Ruchira Ravoori's avatar
      [zircon][usb-request]Add usb_request_internal and helpers · b01dc11b
      Ruchira Ravoori authored
      With the recent changes to usb stack, each driver in the usb stack has its own list_node_t*
      so as to avoid stamping on other driver's lists. This changeset adds a
      usb_request_internal_t and some helper functions for convenience of all
      the clients.
      
      Test: Build. Tested that the apis can be used in a client
      
      Change-Id: I8494060293b1c3c6e4c773f7db39c50af124bfd7
      b01dc11b
    • Taylor Cramer's avatar
      [docs][syscalls] Clarify observed signals from object_wait_async · 3bcc58f3
      Taylor Cramer authored
      Test: n/a, docs
      
      Change-Id: Idff4e373724539edf445f196a4b21a129c77cf58
      3bcc58f3
    • Scott Graham's avatar
      [rights] Make svchost job copy use MANAGE instead of READ|WRITE · 26ef14fc
      Scott Graham authored
      ZX-2967 #comment [rights] Make svchost job copy use MANAGE instead of READ|WRITE
      
      Test: boot garnet
      Change-Id: Iec71361ebdf52744e179d2cc357f3bdfba90fcd3
      26ef14fc
    • David Stevens's avatar
      [kernel][vm] Propagate VmPageListNode collisions · a20d24f9
      David Stevens authored
      Propagate AddPage failures due to the page already existing. Existing
      callers all know that a collision cannot happen, as they either use a
      new page list or they query the list first.
      
      Test: k ut, core-test
      Change-Id: I7ba60889c3bfea6ea9e3847d9bfafd5e9ba2d2a7
      a20d24f9
    • Mike Voydanoff's avatar
      Revert "[arm][gic] Change EOImode to separate deactivation" · 08137111
      Mike Voydanoff authored
      This reverts commit c8d3e357.
      
      Reason for revert: mt8167s no longer boots with this change.
      
      Original change's description:
      > [arm][gic] Change EOImode to separate deactivation
      > 
      > Set the EOImode so that EOIR only drops the priority, and DIR is
      > required to deactivate the interrupt. This allows the hypervisor to
      > correctly take control of physical interrupts, without affecting
      > operation of the host.
      > 
      > MAC-180
      > 
      > Test: Ran on a VIM2 (for GICv2) and QEMU (for GICv3).
      > Change-Id: I110eda0b609ff7acca97f4d3baad5cbeab1b3b9c
      
      TBR=travisg@google.com,abdulla@google.com,maniscalco@google.com
      
      Change-Id: I6b7b4ada61ab4ec1f8f9949aa3af6ac53892626b
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      08137111
    • Pascal Perez's avatar
      [fuchsia-net{,-stack}] Remove FIDL padding · 877eb7b9
      Pascal Perez authored
      Bug FIDL-204 is resolved, no need for manual alignement for data used in
      C bindings.
      
      Test: fx run-test netstack_getaddrinfo_test
      Change-Id: I755f3412463a6e7c89b1fac1706259b6f126d8e2
      877eb7b9
    • Adam Barth's avatar
      [syscall] Remove ability to read available bytes using zx_socket_read · c1d780a3
      Adam Barth authored
      Clients have already migrated to using rx_buf_available from the
      ZX_INFO_SOCKET topic for zx_object_get_info.
      
      ZX-2798 #fixed
      
      Test: socket_zero_size
      Change-Id: If1647dc6550f0b3011afe66dd892d79e4876b45d
      c1d780a3
    • George Kulakowski's avatar
      [devmgr] Use constexpr constants instead of defines · d9792c7a
      George Kulakowski authored
      Test: no functional change
      Change-Id: I9a39cd66a1bf4e26d68d4dc7c54f228075c12081
      d9792c7a
    • Doug Evans's avatar
      [ulib/trace-test-utils] New library of utilities for trace testing · 1e742285
      Doug Evans authored
      Tested: CQ
      Change-Id: I226e1cf1b17453e5cc066c989773e1e1ae4db8fc
      1e742285
    • Mike Voydanoff's avatar
      [mtk-sdmmc] Set correct max_transfer_size · 2fa54e9a
      Mike Voydanoff authored
      Having it unbounded was resulting in overflowing the uint16_t request blockcount
      
      TEST: paving on mt8167s_ref board
      Change-Id: I03910a1ce2fa4512e80a2a785bd0b9aacce3d4b6
      2fa54e9a
    • Doug Evans's avatar
      [trace] Add trace/event_args.h, TRACE_DECLARE_ARGS · ef9123c0
      Doug Evans authored
      This is for use when writing one's own simplifying wrapper macros.
      
      Tested: CQ
      Change-Id: Id6a0f14e0c29fb396047b2800e08435c84df07c8
      ef9123c0
    • Abdulla Kamar's avatar
      [arm][gic] Change EOImode to separate deactivation · c8d3e357
      Abdulla Kamar authored
      Set the EOImode so that EOIR only drops the priority, and DIR is
      required to deactivate the interrupt. This allows the hypervisor to
      correctly take control of physical interrupts, without affecting
      operation of the host.
      
      MAC-180
      
      Test: Ran on a VIM2 (for GICv2) and QEMU (for GICv3).
      Change-Id: I110eda0b609ff7acca97f4d3baad5cbeab1b3b9c
      c8d3e357
    • Alex Legg's avatar
      [virtio][block] Make operations non-blocking and support flush · 2781ec06
      Alex Legg authored
      Note that a virtio flush request refers only to flushing volatile writes to
      persistent storage wheres a flush operation in the block protocol is
      also a barrier. Since the virtio specification allows devices to service
      requests in any order, we must wait for pending transactions to complete
      before and after making a flush request.
      
      ZX-2724 #done
      
      TEST=guest_integration_tests + fx run -V
      
      Change-Id: I201688f8a468aca02d13c06948e25c52772ef4ce
      2781ec06
    • Stephen Demos's avatar
      [minfs] use FS_TRACE macros instead of (f|x)printf · 2f648724
      Stephen Demos authored
      more specifically:
      xprintf -> FS_TRACE_DEBUG
      fprintf -> FS_TRACE_ERROR
      
      ZX-3057 #comment In Progress
      Test: CQ (no visible runtime changes)
      
      Change-Id: I0e5900ea4a580e9e04ad1982552d5399da1c2a6c
      2f648724
    • Doug Evans's avatar
      [trace] Remove TA_STRING_LITERAL · 193847e7
      Doug Evans authored
      This macro takes a hidden parameter of the trace context whereas all the
      other TA_*() macros don't. The presence of this hidden parameter makes
      extending the API problematic, e.g., to introduce TRACE_DECLARE_ARGS().
      TA_STRING_LITERAL is currently only used in one place:
      garnet/lib/machina/virtio_net_legacy.cc with very short strings ("RX", "TX").
      
      It can be added back later after we think about how we want to handle it.
      
      PT-66 #comment patch
      
      Tested: CQ
      Change-Id: I92b754e53face397c59357bd211b4d612132380e
      193847e7
  2. Nov 29, 2018
    • Payam Moradshahi's avatar
      [sherlock][display] Use Astro display driver for Sherlock · 7284a27b
      Payam Moradshahi authored
      Test: Tested on both Astro and Sherlock
      
      Change-Id: I3857146c98349b601147f4c4bc5654f17bd51b54
      7284a27b
    • Doug Evans's avatar
      [trace] Defer generation of argument string refs · 7a10fbf3
      Doug Evans authored
      ... to helper functions. This reduces the amount of code generated
      at the TRACE_*() call site.
      
      trace-benchmark results show modest improvements for large numbers
      of arguments.
      
      E.g.,
      * oneshot, 16MB buffer: TRACE_DURATION_BEGIN macro with 0 arguments
      Before: total (usec): min: 10579.976, max: 11130.338, ave: 10644.971
      After:  total (usec): min: 10594.704, max: 11167.938, ave: 10719.786
      
      * oneshot, 16MB buffer: TRACE_DURATION_BEGIN macro with 1 int32 argument
      Before: total (usec): min: 13495.626, max: 13869.269, ave: 13538.099
      After:  total (usec): min: 12905.281, max: 13237.774, ave: 12945.262
      
      * oneshot, 16MB buffer: TRACE_DURATION_BEGIN macro with 8 int32 arguments
      Before: total (usec): min: 34639.172, max: 34685.566, ave: 34653.770
      After:  total (usec): min: 31806.008, max: 31974.891, ave: 31855.652
      
      Size reduction: utest/trace/trace.elf.strip went from 510000 bytes to 456752.
      Analysis of utest/trace/event_test.cpp.o:test_counter shows a 53 byte code
      reduction for this trace invocation:
          TRACE_COUNTER("+enabled", "name", 1u, I32_ARGS1);
      and a 259 byte code reduction for this trace invocation:
          TRACE_COUNTER("+enabled", "name", 1u, I32_ARGS4);
      
      PT-65 #done
      
      Tested: CQ
      Change-Id: Ia57bc64f1b9c2df2263709449b155cfcb1bab104
      7a10fbf3
    • George Kulakowski's avatar
      [fidl] Fix C alignment, and assert that C structs and coding tables agree · 96416476
      George Kulakowski authored
      FIDL-204 #done
      
      Test: make -j72 && ./scripts/run-zircon -a x64 -c zircon.autorun.boot=/boot/test/sys/fidl-simple-test
      Change-Id: I01619cb42f165acbb2e4947e9e6d48f207773f1a
      96416476
    • Braden Kell's avatar
      [mt8167][emmc] Change MMPLL to get 200 MHz clock · 033d1b96
      Braden Kell authored
      Change MMPLL from 380 MHz to 400 MHz so the bus
      clock can run at the highest frequency allowed by
      the spec. The eMMC controller does not appear to
      support HS400 mode, so this is the best data rate
      we'll get.
      
      ZX-2783 #done
      Test: slight performance improvement confirmed
            with iotime.
      
      Change-Id: I2607d338647ed75798f07915386965a58c655d4c
      033d1b96
    • Scott Graham's avatar
      [rights] Have devmgr_launch() use MANAGE rights instead of READ|WRITE · 1fcba76a
      Scott Graham authored
      This seems to work (all of devmgr's launches succeed), but I would not
      be surprised if "something" breaks.
      
      ZX-2967 #comment [rights] Have devmgr_launch() use MANAGE rights instead of READ|WRITE
      
      Test: CQ, manual poking around
      Change-Id: I866d1a2c783b82d88c52c59ddd710f189a1efeeb
      1fcba76a
    • George Kulakowski's avatar
      [devmgr] Use RAII for the devhost API biglock · 94dd16e6
      George Kulakowski authored
      Test: clang lock annotation checking
      Change-Id: I4f708e1449db34f0694ce1635eecd8d272f460f6
      94dd16e6
    • George Kulakowski's avatar
      [devmgr] Remove an unused __UNUSED · 78d4d5c2
      George Kulakowski authored
      Test: no functional change
      Change-Id: Id68768b6e3ca29a3a58c95737cc9b14cd468e0c6
      78d4d5c2
    • George Kulakowski's avatar
      [devmgr] Move some string constants into the only functions using them · 597c1d80
      George Kulakowski authored
      Test: no functional change
      Change-Id: I17dc9b7cfc9ddd6eba80165e777310ce2639a334
      597c1d80
    • Sean Klein's avatar
      [fs] Utilize FS_TRACE instead of xprintf · 88979db1
      Sean Klein authored
      Add "DEBUG" and "INFO" levels to FS_TRACE macros. Currently compiled
      to no-ops; these will eventually invoke the unified logging API for
      Zircon.
      
      ZX-3060 #comment In Progress
      Test: CQ (No runtime visible changes)
      
      Change-Id: I23c8877f9b0478766b77f3e2ad8be8e827a75b65
      88979db1
    • Andres Oportus's avatar
      [sherlock][buttons] Add HID buttons support · 106922bd
      Andres Oportus authored
      ZX-3012 #done
      
      Test: hid uapp in sherlock.
      Change-Id: I4ddec9b597e1dacd48abe98ba8971a736d2e9501
      106922bd
    • Andres Oportus's avatar
      [hid][buttons] Use edge instead of level interrupts · 44f60596
      Andres Oportus authored
      Edge interrupts do not require the state machine handling required by
      level interrupts in the kernel and work as well in hid-buttons.
      Issues with level interrupt handling has been seen at least on one device
      that is being tracked by ZX-3077.  Since we have support for edge interrupts
      in all HW that uses buttons today, switched to edge.
      
      Test: hid uapp in astro and mt8167s.
      
      Change-Id: I36725ee87baa7b007b1c523c17d2daca5efda65b
      44f60596
    • Scott Graham's avatar
      [rights] Add MANAGE_PROCESS to DEFAULT_JOB, MANAGE_THREAD to DEFAULT_PROCESS · 0ab01434
      Scott Graham authored
      Add PROCESS management to jobs by default, add THREAD management to
      processes by default. The logic here is that job handles need to be able
      to create processes inside themselves, and that process need to be able
      to create threads inside themselves.
      
      Additionally, accept MANAGE_PROCESS on a job as sufficient to
      process_create() with a fallback to WRITE for all the exisiting callers
      that are calling with WRITE.
      
      ZX-2967 #comment [rights] Add MANAGE_PROCESS to DEFAULT_JOB, MANAGE_THREAD to DEFAULT_PROCESS
      
      Test: CQ including garnet and topaz
      Change-Id: Icf767a369299596c2d5974225fb9e31fa59a923b
      0ab01434
Loading